Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Aug 24, 2025

Renames all relationship query tests in EFCore.Specification.Tests/Query/Relationships to use "Associations" terminology instead of "Relationships". This change makes the terminology more appropriate as "relationships" is too specific to relational databases, while "associations" is more general and applies across all database providers including document databases like Cosmos DB.

Changes Made

Core Class Renames

  • RelationshipsProjectionTestBaseAssociationsProjectionTestBase
  • RelationshipsCollectionTestBaseAssociationsCollectionTestBase
  • RelationshipsMiscellaneousTestBaseAssociationsMiscellaneousTestBase
  • RelationshipsSetOperationsTestBaseAssociationsSetOperationsTestBase
  • RelationshipsStructuralEqualityTestBaseAssociationsStructuralEqualityTestBase
  • RelationshipsQueryFixtureBaseAssociationsQueryFixtureBase
  • RelationshipsDataAssociationsData
  • RelationshipsModelAssociationsModel

Directory Structure

  • EFCore.Specification.Tests: Query/Relationships/Query/Associations/
  • EFCore.Relational.Specification.Tests: Query/Relationships/Query/Associations/
  • Provider test projects: All Query/Relationships/ directories moved to Query/Associations/

Namespace Updates

Updated all namespaces from Microsoft.EntityFrameworkCore.Query.Relationships to Microsoft.EntityFrameworkCore.Query.Associations, including all subdirectories:

  • .Navigations
  • .OwnedNavigations
  • .ComplexProperties
  • .ComplexJson
  • .ComplexTableSplitting
  • .OwnedJson
  • .OwnedTableSplitting

Provider Coverage

Updated test implementations across all providers:

  • Cosmos DB functional tests
  • SQLite functional tests
  • SQL Server functional tests
  • InMemory compliance tests

What Was Preserved

Inheritance relationship tests were intentionally left unchanged as they serve a different purpose:

  • InheritanceRelationshipsQueryTestBase
  • TPTRelationshipsQueryTestBase (Table Per Type)
  • TPCRelationshipsQueryTestBase (Table Per Concrete)
  • InheritanceRelationshipsData

Impact

  • 133+ files across 5 test projects updated
  • All projects build successfully
  • No functional changes - only naming/terminology updates
  • Test behavior and coverage remain identical

This change improves the clarity of EF Core's test organization by using terminology that better reflects the cross-database nature of these query patterns.


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI changed the title [WIP] In EFCore.Specifications.Tests, there's a set of query tests under Query/Relationships; these are extended in Relational and Cosmos, and the Relational ones are extended in SQL Server and SQLite. We've decided to rename these tests from being about "Re... Rename Relationships query tests to Associations Aug 24, 2025
Copilot AI requested a review from roji August 24, 2025 20:41
Copilot finished work on behalf of roji August 24, 2025 20:41
@roji roji marked this pull request as ready for review August 25, 2025 08:40
Copy link
Member

@roji roji left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AndriySvyryd incoming EF6 PTSD

@roji roji added the tell-mode label Aug 25, 2025
@roji
Copy link
Member

roji commented Aug 25, 2025

/cc @artl93 test-only changes

@roji roji merged commit 7ed4c25 into release/10.0 Aug 25, 2025
8 checks passed
@roji roji deleted the copilot/fix-92ffeaae-3225-4cbe-89bd-bb9911f748c7 branch August 25, 2025 18:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants