Cosmos test improvements for Linux-based emulator#38088
Merged
Conversation
There was a problem hiding this comment.
Pull request overview
Updates Cosmos functional tests to better reflect current Linux-based Cosmos emulator behavior by unskipping tests that now pass and documenting remaining emulator gaps with linked upstream issues.
Changes:
- Removed several
[CosmosCondition(CosmosCondition.IsNotLinuxEmulator)]skips so tests execute on the Linux emulator where behavior is now compatible. - Added targeted Linux-emulator skips back to specific tests, annotated with links to upstream emulator issues explaining the limitation.
- Added clarifying comments for Linux-emulator-specific feature gaps (e.g., transactional batch limits, full-text search, scripts/triggers).
Reviewed changes
Copilot reviewed 34 out of 34 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| test/EFCore.Cosmos.FunctionalTests/Update/CosmosBulkWarningTest.cs | Adds issue link explaining why specific bulk warning tests remain skipped on Linux emulator. |
| test/EFCore.Cosmos.FunctionalTests/Update/CosmosBulkExecutionTest.cs | Adds issue link explaining transactional batch limit behavior on Linux emulator. |
| test/EFCore.Cosmos.FunctionalTests/Update/CosmosBulkConcurrencyTest.cs | Narrows Linux-emulator skipping to specific concurrency tests and documents upstream issue. |
| test/EFCore.Cosmos.FunctionalTests/Types/CosmosTemporalTypeTest.cs | Documents Linux emulator aggregate/subquery limitation for primitive collection queries. |
| test/EFCore.Cosmos.FunctionalTests/Types/CosmosNumericTypeTest.cs | Documents Linux emulator aggregate/subquery limitation for primitive collection queries. |
| test/EFCore.Cosmos.FunctionalTests/Types/CosmosMiscellaneousTypeTest.cs | Documents Linux emulator aggregate/subquery limitation for primitive collection queries. |
| test/EFCore.Cosmos.FunctionalTests/Query/Translations/MathTranslationsCosmosTest.cs | Removes Linux-emulator skip so truncate/order-by tests run on Linux emulator. |
| test/EFCore.Cosmos.FunctionalTests/Query/ReadItemPartitionKeyQueryTest.cs | Adds targeted Linux-emulator skips w/ issue link for partial hierarchical partition key query behavior. |
| test/EFCore.Cosmos.FunctionalTests/Query/ReadItemPartitionKeyQueryRootDiscriminatorInIdTest.cs | Adds targeted Linux-emulator skips w/ issue link for partial hierarchical partition key query behavior. |
| test/EFCore.Cosmos.FunctionalTests/Query/ReadItemPartitionKeyQueryNoDiscriminatorInIdTest.cs | Adds targeted Linux-emulator skips w/ issue link for partial hierarchical partition key query behavior. |
| test/EFCore.Cosmos.FunctionalTests/Query/ReadItemPartitionKeyQueryDiscriminatorInIdTest.cs | Adds targeted Linux-emulator skips w/ issue link for partial hierarchical partition key query behavior. |
| test/EFCore.Cosmos.FunctionalTests/Query/QueryLoggingCosmosTestBase.cs | Removes Linux-emulator skip so query logging tests run on Linux emulator. |
| test/EFCore.Cosmos.FunctionalTests/Query/PrimitiveCollectionsQueryCosmosTest.cs | Adds targeted Linux-emulator skips w/ issue link for aggregate-over-subquery behavior. |
| test/EFCore.Cosmos.FunctionalTests/Query/OwnedQueryCosmosTest.cs | Removes some Linux-emulator skips; adds targeted skips w/ issue links for ORDER BY expression limitations and aggregate/subquery behavior. |
| test/EFCore.Cosmos.FunctionalTests/Query/NorthwindSelectQueryCosmosTest.cs | Removes Linux-emulator skip so a previously skipped query test runs on Linux emulator; adds targeted issue link for ORDER BY limitation. |
| test/EFCore.Cosmos.FunctionalTests/Query/NorthwindMiscellaneousQueryCosmosTest.cs | Removes multiple Linux-emulator skips and adds targeted issue links for ORDER BY expression limitations and paging behavior. |
| test/EFCore.Cosmos.FunctionalTests/Query/NorthwindFunctionsQueryCosmosTest.cs | Removes Linux-emulator skip so function ordering test runs on Linux emulator. |
| test/EFCore.Cosmos.FunctionalTests/Query/NorthwindAggregateOperatorsQueryCosmosTest.cs | Removes multiple Linux-emulator skips; adds targeted skips w/ issue link for EXISTS/ANY/ALL subquery server errors. |
| test/EFCore.Cosmos.FunctionalTests/Query/JsonQueryCosmosTest.cs | Removes Linux-emulator skips so JSON index predicate tests run on Linux emulator. |
| test/EFCore.Cosmos.FunctionalTests/Query/ComplexTypeToJsonPropertyQueryCosmosTest.cs | Adds targeted Linux-emulator skips w/ issue link for complex-type equality behavior. |
| test/EFCore.Cosmos.FunctionalTests/Query/ComplexTypeQueryCosmosTest.cs | Adds targeted Linux-emulator skips w/ issue link for complex-type equality behavior. |
| test/EFCore.Cosmos.FunctionalTests/Query/Associations/OwnedNavigations/OwnedNavigationsPrimitiveCollectionCosmosTest.cs | Adds targeted Linux-emulator skip w/ issue link for aggregate/subquery behavior. |
| test/EFCore.Cosmos.FunctionalTests/Query/Associations/OwnedNavigations/OwnedNavigationsCollectionCosmosTest.cs | Removes Linux-emulator skips for some cases; adds targeted skips w/ issue link for aggregate/subquery behavior. |
| test/EFCore.Cosmos.FunctionalTests/Query/Associations/ComplexProperties/ComplexPropertiesStructuralEqualityCosmosTest.cs | Removes class-level Linux-emulator skip and replaces with targeted method-level skips w/ issue link for complex-type equality. |
| test/EFCore.Cosmos.FunctionalTests/Query/Associations/ComplexProperties/ComplexPropertiesPrimitiveCollectionCosmosTest.cs | Adds targeted Linux-emulator skip w/ issue link for aggregate/subquery behavior. |
| test/EFCore.Cosmos.FunctionalTests/Query/Associations/ComplexProperties/ComplexPropertiesCollectionCosmosTest.cs | Removes Linux-emulator skips for some cases; adds targeted skips w/ issue link for aggregate/subquery behavior. |
| test/EFCore.Cosmos.FunctionalTests/Query/AdHocComplexTypeQueryCosmosTest.cs | Adds targeted Linux-emulator skip w/ issue link for complex-type equality behavior. |
| test/EFCore.Cosmos.FunctionalTests/EndToEndCosmosTest.cs | Adds issue link explaining why end-to-end transactional batch variant is skipped on Linux emulator. |
| test/EFCore.Cosmos.FunctionalTests/EmbeddedDocumentsTest.cs | Removes a Linux-emulator skip for embedded collection manipulation; adds targeted skip w/ issue link for complex-type equality behavior. |
| test/EFCore.Cosmos.FunctionalTests/CosmosTriggersTest.cs | Adds comment clarifying that triggers/server-side scripts aren’t supported on Linux emulator. |
| test/EFCore.Cosmos.FunctionalTests/CosmosTransactionalBatchTest.cs | Adds class-level comment linking upstream issue for transactional batch limits on Linux emulator. |
| test/EFCore.Cosmos.FunctionalTests/CosmosSessionTokensTest.cs | Adds issue link documenting Linux emulator session token tracking limitation (class and nested test class). |
| test/EFCore.Cosmos.FunctionalTests/ConfigPatternsCosmosTest.cs | Adds comment clarifying Linux emulator limitation around ConnectionMode.Direct. |
| test/EFCore.Cosmos.FunctionalTests/AddHocFullTextSearchCosmosTest.cs | Adds issue links explaining lack of full-text search support on Linux emulator. |
Removed some skips, opened issues and linked to them.
1342730 to
754f90a
Compare
AndriySvyryd
approved these changes
Apr 13, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Removed some skips, opened issues and linked to them.