Repository navigation
Dispatch mediator endpoints through Solid processors - #870
537 passed, 0 failed and 0 skipped
Expand for details
✅ TestResults/Ark.MediatorFramework.Sample.Tests_net10.0_x64.trx
51 tests were completed in 58s with 51 passed, 0 failed and 0 skipped.
✅ Ark.MediatorFramework.Sample.Tests.ApplicationInsightsTests
✅ ClassifiesClientAndServerResponses
✅ PropagatesAuthenticatedIdentity
✅ RegistersClassicDefaultsWithoutSnapshotDebugger
✅ Ark.MediatorFramework.Sample.Tests.ApplicationTestContextTests
✅ BulkCreateDispatchesApplicationRequest
✅ DirectDispatchRunsApplicationDecorators
✅ ExternalServiceProxyFailsOutsideScenario
✅ FailedDispatchDisposesItsScope
✅ InvalidRequestThrowsValidationException
✅ NestedDispatchUsesCurrentScope
✅ OptimisticConcurrencyDecoratorRetriesTransientFailures
✅ SequentialDispatchesUseDistinctScopes
✅ Ark.MediatorFramework.Sample.Tests.AsyncEnumerableStreamingTests
✅ DirectEmptyStreamIsEmpty
✅ DirectStreamDeliversItemsAndSupportsCancellation
✅ Ark.MediatorFramework.Sample.Tests.AzureFunctionsRebusTests
✅ MissingOutboundBusConfigurationFailsClearly
✅ OutboundCompositionRoutesToOwnerQueue
✅ Ark.MediatorFramework.Sample.Tests.BookStreamingAndEditionTests
✅ DescribeEditionDispatchesConcreteVariant
✅ StreamRejectsCountAboveBound
✅ Ark.MediatorFramework.Sample.Tests.BookTransportBoundaryTests
✅ GeneratedGrpcBooksServiceDispatchesEditionAndStream
✅ GeneratedHttpBooksEndpointsExposeExpectedRoutes
✅ Ark.MediatorFramework.Sample.Tests.CompositionRootTests
✅ ProductionCompositionStartsAndExposesHealth
✅ Ark.MediatorFramework.Sample.Tests.ConcurrencyRoundtripTests
✅ DirectRoundtripRetriesTransientFailures
✅ DirectRoundtripUsesAndRejectsStaleETags
✅ Ark.MediatorFramework.Sample.Tests.Features.BooksFeature
✅ Cancel a running book print process
✅ Complete a book print process
✅ Create a book audit
✅ Create and list book reviews
✅ Describe a digital Book edition
✅ Describe a printed Book edition
✅ Filter books by author
✅ Manage a book
✅ Page books in a stable sort order
✅ Prevent concurrent book print processes
✅ Record and retrieve reading activity
✅ Reject a book cover without its scope
✅ Reject a book mutation without its write scope
✅ Reject a book review without its write scope
✅ Reject a Book stream above its bound
✅ Reject a stale book ETag
✅ Reject an invalid book cover
✅ Reject an invalid book review
✅ Reject an invalid book update
✅ Reject cancellation of a completed book print process
✅ Reject invalid reading activity
✅ Reject reading activity without its write scope
✅ Report a failed book print process
✅ Report a missing book cover
✅ Resume an interrupted book print process
✅ Stream bounded Book items with cancellation
✅ Surface a failed external print-completion notification
✅ Upload and download a book cover
✅ Ark.MediatorFramework.Sample.Tests.RebusRetryTests
✅ ExhaustedRequestMovesToErrorQueue
✅ TestResults/Ark.Reference.Core.Tests_net10.0_x64.trx
46 tests were completed in 36s with 46 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Reference.Core.Tests.Auth.PolicyAuthorizeOrLogicDecoratorTests | 5 ✅ | 75ms | ||
| Ark.Reference.Core.Tests.Features.BookFeature | 16 ✅ | 2s | ||
| Ark.Reference.Core.Tests.Features.BookPrintProcessFeature | 4 ✅ | 3s | ||
| Ark.Reference.Core.Tests.Features.PingFeature | 20 ✅ | 2s | ||
| Ark.Reference.Core.Tests.Features.SwaggerFeature | 1 ✅ | 257ms |
✅ Ark.Reference.Core.Tests.Auth.PolicyAuthorizeOrLogicDecoratorTests
✅ AllPoliciesFailurePreservesPolicyMessages
✅ ConcurrentFirstUseSharesMetadata
✅ FirstPolicySuccessStopsEvaluation
✅ InheritedAttributesAreCachedOncePerClosedContract
✅ NoPolicyPassesThrough
✅ Ark.Reference.Core.Tests.Features.BookFeature
✅ Endpoint Book Bulk Create
✅ Endpoint Book Create and Get
✅ Endpoint Book Delete
✅ Endpoint Book Get by filters - <FilterName>(Author,Martin,1,2)
✅ Endpoint Book Get by filters - <FilterName>(Author,Tolkien,1,3)
✅ Endpoint Book Get by filters - <FilterName>(Genre,Fiction,1,5)
✅ Endpoint Book Get by filters - <FilterName>(Genre,Technology,2,4)
✅ Endpoint Book Get by filters - <FilterName>(Title,Clean Code,1,6)
✅ Endpoint Book Get by filters - <FilterName>(Title,The Hobbit,1,7)
✅ Endpoint Book Update
✅ Endpoint Book Update 404
✅ Validator Book Create fails for author too long
✅ Validator Book Create fails for no author provided
✅ Validator Book Create fails for no genre provided
✅ Validator Book Create fails for no title provided
✅ Validator Book Create fails for title too long
✅ Ark.Reference.Core.Tests.Features.BookPrintProcessFeature
✅ Cannot create print process when one is already running
✅ Create a book print process successfully
✅ IFailed handler sets error status correctly
✅ Print process completes successfully in background
✅ Ark.Reference.Core.Tests.Features.PingFeature
✅ Audit Check Ping Create
✅ Audit Check Ping UpdatePatch
✅ Audit Check Ping UpdatePut
✅ Endpoint Ping Create and Get
✅ Endpoint Ping Create and SendMsg
✅ Endpoint Ping Create and SendMsg Fails
✅ Endpoint Ping Create and SendMsg FastFails
✅ Endpoint Ping Delete
✅ Endpoint Ping Get by filters
✅ Endpoint Ping Patch
✅ Endpoint Ping Patch 404
✅ Endpoint Ping Put
✅ Endpoint Ping Put 404
✅ Endpoint Ping Test
✅ Endpoint Ping Test by Name
✅ Validator Ping by Name fails
✅ Validator Ping by Name fails because the min length
✅ Validator Ping Create fails for name too long
✅ Validator Ping Create fails for no name provided
✅ Validator Ping Create fails for no type provided
✅ Ark.Reference.Core.Tests.Features.SwaggerFeature
✅ Swagger Spec <version>(v1.0,0)
✅ TestResults/Ark.ResourceWatcher.Sample.Tests_net10.0_x64.trx
11 tests were completed in 2s with 11 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.ResourceWatcher.Sample.Tests.Features.BlobWorkerHostIntegrationFeature | 1 ✅ | 1s | ||
| Ark.ResourceWatcher.Sample.Tests.Transform.MyTransformServiceTests | 10 ✅ | 1s |
✅ Ark.ResourceWatcher.Sample.Tests.Features.BlobWorkerHostIntegrationFeature
✅ New blob is fetched and processed
✅ Ark.ResourceWatcher.Sample.Tests.Transform.MyTransformServiceTests
✅ Transform_DifferentSourceId_PreservedInOutput
✅ Transform_Error_malformed_csv_invalid_decimal
✅ Transform_Error_malformed_csv_missing_columns
✅ Transform_NullInput_ThrowsArgumentNullException
✅ Transform_Success_decimal_precision
✅ Transform_Success_empty_file
✅ Transform_Success_header_only
✅ Transform_Success_valid_multiple_records
✅ Transform_Success_valid_single_record
✅ Transform_Success_whitespace_handling
✅ TestResults/Ark.Tools.AspNetCore.MinimalApi.Tests_net10.0_x64.trx
14 tests were completed in 3s with 14 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.AspNetCore.MinimalApi.Tests.ArkMinimalApiHostVerificationTests | 6 ✅ | 2s | ||
| Ark.Tools.AspNetCore.MinimalApi.Tests.ArkMinimalApiSecurityTests | 8 ✅ | 323ms |
✅ Ark.Tools.AspNetCore.MinimalApi.Tests.ArkMinimalApiHostVerificationTests
✅ DefaultHealthChecksDoNotRegisterUiOrHistoryServices
✅ HealthCheckReportsDependencyFailureWithoutExceptionDetails
✅ HealthChecksAreAnonymousWhenAuthenticationIsRequired
✅ StartFailsWhenContainerVerificationFails
✅ StartupDiagnosticsAreEnabledByTheOptionalHelper
✅ VerificationAndStartupCallbackCompleteBeforeFirstRequest
✅ Ark.Tools.AspNetCore.MinimalApi.Tests.ArkMinimalApiSecurityTests
✅ AddsSecurityHeadersAndHsts
✅ ApiPolicy_HasSameOriginCrossOriginOpenerPolicy
✅ DocumentationPolicy_HasUnsafeNoneCrossOriginOpenerPolicy ("/openapi")
✅ DocumentationPolicy_HasUnsafeNoneCrossOriginOpenerPolicy ("/scalar")
✅ DocumentationPolicy_HasUnsafeNoneCrossOriginOpenerPolicy ("/scalar/v1")
✅ DocumentationPolicy_HasUnsafeNoneCrossOriginOpenerPolicy ("/swagger")
✅ SecurityHeaders_ArePresentOnErrorAndNotFound ("/error",500)
✅ SecurityHeaders_ArePresentOnErrorAndNotFound ("/not-found",404)
✅ TestResults/Ark.Tools.AspNetCore.ProblemDetails.Tests_net10.0_x64.trx
11 tests were completed in 2s with 11 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.AspNetCore.ProblemDetails.Tests.ModelStateValidationFilterTests | 5 ✅ | 116ms | ||
| Ark.Tools.AspNetCore.ProblemDetails.Tests.ProblemDetailsShapeTests | 6 ✅ | 376ms |
✅ Ark.Tools.AspNetCore.ProblemDetails.Tests.ModelStateValidationFilterTests
✅ DoesNotReturnBadRequestForValidUnmarkedAction
✅ ReturnsBadRequestForInvalidUnmarkedAction
✅ SkipsInvalidModelStateForMarkedAction
✅ SkipsValidModelStateForMarkedAction
✅ SupportsDistinctActionMethodsConcurrently
✅ Ark.Tools.AspNetCore.ProblemDetails.Tests.ProblemDetailsShapeTests
✅ IncludesExceptionDetailsInDevelopment
✅ IncludesExceptionDetailsWhenExplicitlyEnabled
✅ MapsBusinessRuleViolationsConcurrentlyForNewTypes
✅ MapsBusinessRuleViolationWithTheSamePayloadAsReflection
✅ MapsExceptionWithTheSameUriTypeAsTheExistingImplementation
✅ SerializesProblemDetailsWithExpectedProperties
✅ TestResults/Ark.Tools.Core.Analyzers.Tests_net10.0_x64.trx
3 tests were completed in 3s with 3 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.Core.Analyzers.Tests.EvolvableEnumAnalyzerTests | 3 ✅ | 2s |
✅ Ark.Tools.Core.Analyzers.Tests.EvolvableEnumAnalyzerTests
✅ AliasesAndLookalikes_ShouldNotProduceFalsePositives
✅ InvalidEnums_ShouldReportActionableErrors
✅ ValidEnums_ShouldNotReportDiagnostics
✅ TestResults/Ark.Tools.Core.Interceptors.Tests_net10.0_x64.trx
11 tests were completed in 656ms with 11 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.Core.Interceptors.Tests.InterceptorRuntimeTests | 11 ✅ | 197ms |
✅ Ark.Tools.Core.Interceptors.Tests.InterceptorRuntimeTests
✅ GeneratedSource_ContainsDedupedInterceptorForInterceptedEntity
✅ GeneratedSource_DoesNotContainInterceptorsForIneligibleCallSites
✅ ToDataTableArk_ThroughGenericMethod_FallsBackSafelyAndProducesCorrectResult
✅ ToDataTableArk_WithAnonymousType_UsesFallback
✅ ToDataTableArk_WithEligibleType_ProducesCorrectDataTable
✅ ToDataTableArk_WithEligibleTypeSecondCallSite_ProducesCorrectDataTable
✅ ToDataTableArk_WithEvolvableEnumProperties_ConvertsValues
✅ ToDataTableArk_WithMixedMembers_OrdersFieldsBeforeProperties
✅ ToDataTableArk_WithNonFlatDerivedType_FallsBackSafelyAndProducesCorrectResult
✅ ToDataTableArk_WithStaticMember_UsesFallback
✅ ToDataTableArk_WithStructType_ProducesCorrectDataTable
✅ TestResults/Ark.Tools.Core.Tests_net10.0_x64.trx
68 tests were completed in 2s with 68 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.Core.Tests.DataTableExtensionsTests | 22 ✅ | 789ms | ||
| Ark.Tools.Core.Tests.EvolvableEnumJsonConverterTests | 10 ✅ | 1s | ||
| Ark.Tools.Core.Tests.EvolvableEnumParsingTests | 4 ✅ | 54ms | ||
| Ark.Tools.Core.Tests.EvolvableEnumTests | 20 ✅ | 162ms | ||
| Ark.Tools.Core.Tests.ParallellExtensionsTests | 12 ✅ | 1s |
✅ Ark.Tools.Core.Tests.DataTableExtensionsTests
✅ ToDataTable_WhenEnumerationThrows_RestoresNotifications
✅ ToDataTable_WithExistingTable_UsesOrdinalMapAndProducesSameValues
✅ ToDataTableArk_CalledTwiceForSameType_ProducesIndependentTablesWithConsistentSchema
✅ ToDataTableArk_InvokedViaReflection_ExercisesFallbackAndProducesCorrectResult
✅ ToDataTableArk_InvokedViaReflectionWithNullElement_ThrowsTargetException
✅ ToDataTableArk_WithEmptySource_ProducesEmptySchemaOnlyTable
✅ ToDataTableArk_WithEnumProperty_ConvertsToMemberNameString
✅ ToDataTableArk_WithEvolvableEnumProperties_ConvertsValues
✅ ToDataTableArk_WithMixedTypeProperties_CreatesExpectedColumnSchema
✅ ToDataTableArk_WithNodaTimeProperties_ConvertsToDocumentedDotNetTypes
✅ ToDataTableArk_WithNoPublicMembers_ProducesZeroColumnTableWithOneRowPerElement
✅ ToDataTableArk_WithNullableEnum_ConvertsValueOrNull
✅ ToDataTableArk_WithNullElementForReferenceType_ThrowsTargetException
✅ ToDataTableArk_WithNullNodaTimeNullableProperties_StoresDbNull
✅ ToDataTableArk_WithNullNullableProperty_StoresDbNull
✅ ToDataTableArk_WithPlainNullableValueTypes_RoundTripsNullAndValue
✅ ToDataTableArk_WithPopulatedRow_MapsAllValuesCorrectly
✅ ToDataTableArk_WithPrimitiveElementType_CreatesSingleValueColumn
✅ ToDataTableArk_WithPublicField_ShredsFieldsAndPropertiesTogether
✅ ToDataTableArk_WithRuntimeTypedValues_ConvertsValues
✅ ToDataTableArk_WithStaticMembers_ExcludesThem
✅ ToDataTableArk_WithUnreadableProperties_ExcludesThem
✅ Ark.Tools.Core.Tests.EvolvableEnumJsonConverterTests
✅ DefaultFormat_SerializingUnknownNumber_ShouldThrowExplicitly
✅ DefaultFormat_ShouldAcceptNumericToken
✅ DefaultFormat_ShouldRoundtripDefinedValue
✅ DefaultFormat_ShouldRoundtripUnknownName
✅ DefaultFormat_ShouldSerializeDefinedValueAsName
✅ DefaultFormat_ShouldSerializeNotSetAsName
✅ IntegerFormat_SerializingUnknownName_ShouldThrowExplicitly
✅ IntegerFormat_ShouldRoundtripDefinedValue
✅ IntegerFormat_ShouldRoundtripUnknownNumber
✅ IntegerFormat_ShouldSerializeDefinedValueAsNumber
✅ Ark.Tools.Core.Tests.EvolvableEnumParsingTests
✅ Parse_ShouldPreserveKnownAndUnknownStates
✅ Parse_WithExplicitBacking_ShouldEnforceItsRange
✅ TypeConverter_ShouldUseStringAndExactBackingType
✅ Value_ShouldSupportExhaustiveEnumSwitchingWithUnknownFallback
✅ Ark.Tools.Core.Tests.EvolvableEnumTests
✅ ByteBackedEnum_ShouldPreserveWidthAndMagnitude
✅ Default_ShouldBeNotSet
✅ DefinedValue_ShouldRoundtripThroughConversions
✅ EnumWithNonZeroNotSetMember_ShouldBeRejected
✅ EnumWithoutNotSetMember_ShouldBeRejected
✅ Equality_ShouldCompareByRepresentedState
✅ ExplicitBackingType_ShouldBeRequired
✅ FlagsEnum_ShouldBeRejected
✅ FromName_WithDeclaredMemberName_ShouldResolveToDefinedValue
✅ LongBackedEnum_ShouldRoundtripMinAndMaxValue
✅ SByteBackedEnum_ShouldPreserveSign
✅ ToEvolvable_ShouldWrapValue
✅ ToEvolvable_WithBackingType_ShouldWrapValue
✅ ToString_ForDefinedValue_ShouldRenderName
✅ ULongBackedEnum_ShouldRoundtripMaxValueWithoutSignCorruption
✅ UndefinedValue_ExplicitCast_ShouldThrowExplicitly
✅ UnknownName_ShouldBeRetainedWithoutNumericValue
✅ UnknownName_ToNumber_ShouldThrowExplicitly
✅ UnknownName_ToNumberAgain_ShouldThrowExplicitly
✅ UnknownNumber_ShouldBeRetainedWithoutName
✅ Ark.Tools.Core.Tests.ParallellExtensionsTests
✅ Parallel_ShouldProcessInParallel
✅ Parallel_ShouldPropagateExceptions
✅ Parallel_ShouldRespectDegreeOfParallelism
✅ Parallel_WithCancellationToken_ShouldProcessAllItemsWhenNotCancelled
✅ Parallel_WithCancellationToken_ShouldThrowWhenCancelled
✅ Parallel_WithEmptyList_ShouldCompleteSuccessfully
✅ Parallel_WithEmptyListAndResult_ShouldReturnEmptyList
✅ Parallel_WithIndexAndTaskAction_ShouldProcessWithCorrectIndices
✅ Parallel_WithIndexAndTaskResultAction_ShouldReturnAllResults
✅ Parallel_WithTaskAction_ShouldProcessAllItems
✅ Parallel_WithTaskResultAction_ShouldReturnAllResults
✅ Parallel_WithTaskResultAndCancellationToken_ShouldReturnAllResults
✅ TestResults/Ark.Tools.Dapper.Tests_net10.0_x64.trx
13 tests were completed in 596ms with 13 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.Dapper.Tests.EvolvableEnumTypeHandlerTests | 13 ✅ | 109ms |
✅ Ark.Tools.Dapper.Tests.EvolvableEnumTypeHandlerTests
✅ Parse_HugeDecimal_ShouldRoundtripULongMaxValue
✅ Parse_KnownInteger_ShouldReturnDefinedValue
✅ Parse_KnownString_ShouldReturnDefinedValue
✅ Parse_Null_ShouldReturnNotSet
✅ Parse_UnknownInteger_ShouldBeRetained
✅ Parse_UnknownString_ShouldBeRetained
✅ Parse_UnsupportedType_ShouldThrowDataException
✅ Register_ShouldNotThrow
✅ SetValue_NameFormat_ShouldWriteSymbolicName
✅ SetValue_NameFormat_UnknownNumber_ShouldThrowExplicitly
✅ SetValue_NumberFormat_HugeULong_ShouldUseExactBackingType
✅ SetValue_NumberFormat_ShouldWriteNumericValue
✅ SetValue_NumberFormat_UnknownName_ShouldThrowExplicitly
✅ TestResults/Ark.Tools.MediatorFramework.AzureFunctions.Boundary.Tests_net10.0_x64.trx
9 tests were completed in 12s with 9 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.MediatorFramework.AzureFunctions.Boundary.Tests.AzureFunctionsBoundaryTests | 9 ✅ | 2s |
✅ Ark.Tools.MediatorFramework.AzureFunctions.Boundary.Tests.AzureFunctionsBoundaryTests
✅ AnonymousEndpointIsReachableWithoutCredentials
✅ BindingFailureProducesProblemDetails
✅ HealthEndpointIsDiscoveredByCoreTools
✅ InvalidJsonBodyProducesProblemDetails
✅ JsonBodyIsBoundIntoTheRecordContract
✅ RouteAndQueryValuesAreBoundIntoTheContract
✅ TestHostEndpointsMatchTheParityMatrix
✅ UnauthenticatedRequestIsChallenged
✅ ValidationFailureProducesProblemDetails
✅ TestResults/Ark.Tools.MediatorFramework.Hosting.Tests_net10.0_x64.trx
57 tests were completed in 22s with 57 passed, 0 failed and 0 skipped.
✅ Ark.Tools.MediatorFramework.Hosting.Tests.GrpcAuthorizationTests
✅ AllowsCallerWithRequiredScope
✅ PropagatesUserContext
✅ RejectsAnonymousCaller
✅ RejectsCallerWithoutRequiredScope
✅ Ark.Tools.MediatorFramework.Hosting.Tests.GrpcErrorsTests
✅ MapsBusinessViolationToRichStatus
✅ MapsConcurrencyFailureToAborted
✅ MapsETagMismatchToFailedPrecondition
✅ MapsNotFoundResultToGrpcFailure
✅ MapsValidationFailureToRichStatus
✅ Ark.Tools.MediatorFramework.Hosting.Tests.GrpcProtoExportTests
✅ ExportsDeterministicProtoServices
✅ GeneratesVersionedClientShape
✅ Ark.Tools.MediatorFramework.Hosting.Tests.GrpcReflectionTests
✅ DiscoversVersionedServicesThroughReflection
✅ Ark.Tools.MediatorFramework.Hosting.Tests.GrpcStreamingTests
✅ PropagatesCancellationToProducer
✅ StreamsEmptySequence
✅ StreamsItemsIncrementally
✅ Ark.Tools.MediatorFramework.Hosting.Tests.GrpcUnaryTests
✅ BindsGeneratedUnaryRequestAndQuery
✅ DispatchesActiveVersionedService
✅ DispatchesGeneratedCommand
✅ PreservesWireTypes
✅ Ark.Tools.MediatorFramework.Hosting.Tests.GrpcUploadTests
✅ RejectsDataBeforeMetadata
✅ UploadsMetadataAndDataChunks
✅ Ark.Tools.MediatorFramework.Hosting.Tests.HostingFixtureTests
✅ FixtureBuildsHostsAndDisposesResources
✅ RebusCommandIsDeliveredAndProcessed
✅ Ark.Tools.MediatorFramework.Hosting.Tests.MinimalApiAttachmentsTests
✅ BindsAttachmentCollection
✅ BindsSingleAttachment
✅ DownloadsAttachment
✅ RejectsOversizedAttachment
✅ RejectsTooManyFilesForAttachmentCollection
✅ RejectsTooManyFilesForSingleAttachment
✅ RejectsUnsupportedAttachmentContentType
✅ Ark.Tools.MediatorFramework.Hosting.Tests.MinimalApiAuthorizationTests
✅ AllowsPrincipalWithRequiredPolicy
✅ RejectsAnonymousPrincipal
✅ RejectsAuthenticatedPrincipalWithoutPolicy
✅ Ark.Tools.MediatorFramework.Hosting.Tests.MinimalApiBindingTests
✅ BindsOnlyActiveVersionedRoutes
✅ BindsOptionalQueryAndCancellationToken
✅ BindsRouteQueryBodyAndServerSetValues
✅ RejectsInvalidBodyBinding
✅ RejectsInvalidRouteAndQueryBinding
✅ Ark.Tools.MediatorFramework.Hosting.Tests.MinimalApiErrorsTests
✅ MapsBusinessViolationToProblemDetails
✅ MapsNullResultToNotFound
✅ MapsUnexpectedExceptionToProblemDetails
✅ MapsValidationFailureToProblemDetails
✅ ReturnsConfiguredSuccessStatusCode
✅ Ark.Tools.MediatorFramework.Hosting.Tests.MinimalApiOpenApiTests
✅ V1DocumentContainsFilteredSchemasAndDocumentation
✅ V2DocumentContainsOnlyV2Operations
✅ Ark.Tools.MediatorFramework.Hosting.Tests.MinimalApiSerializationTests
✅ NegotiatesJsonRequestAndResponse
✅ NegotiatesMessagePackRequestAndResponse
✅ Ark.Tools.MediatorFramework.Hosting.Tests.MinimalApiStreamingTests
✅ ObservesRequestCancellationInProducer
✅ StreamsEmptySequence
✅ StreamsFirstItemBeforeProducerCompletes
✅ StreamsPlainJsonArray
✅ Ark.Tools.MediatorFramework.Hosting.Tests.RebusDispatchTests
✅ DeferredMessageIsTrackedAndCanBeIgnoredExplicitly
✅ GeneratedWrapperDispatchesWithScopeAndUserContext
✅ GeneratedWrapperSuppliesCancellationToken
✅ Ark.Tools.MediatorFramework.Hosting.Tests.RebusRetryTests
✅ FailedMessageIsRetriedAndMovedToErrorQueue
✅ FailedSecondLevelRetryIsMovedToErrorQueue
✅ SecondLevelRetryDispatchesFailedMessageToHandler
✅ TestResults/Ark.Tools.MediatorFramework.Tests_net10.0_x64.trx
106 tests were completed in 25s with 106 passed, 0 failed and 0 skipped.
✅ Ark.Tools.MediatorFramework.Tests.AzureFunctionsHttpTests
✅ HealthCheckUsesRegisteredService
✅ HealthCheckWritesFailedCheckDetails
✅ ReadsAndSanitizesMultipartAttachment
✅ StreamsJsonArrayWithoutBuffering
✅ Ark.Tools.MediatorFramework.Tests.AzureFunctionsResultsTests
✅ AppliesStrongETagAndConditionalGet
✅ ReadsFirstIfMatchPrecondition
✅ RejectsUnsafeETag
✅ Ark.Tools.MediatorFramework.Tests.BusinessRuleViolationWireTests
✅ ArkBusinessRuleViolationRoundTripsThroughProtoBuf
✅ Ark.Tools.MediatorFramework.Tests.GeneratorSnapshotTests
✅ ApiSurfaceGeneratorCachesUnchangedInputs
✅ ApiSurfaceGeneratorEmitsExplicitEntriesForEvolvableEnumMembers
✅ ApiSurfaceGeneratorEmitsExplicitEntriesForStrictEnumMembers
✅ ApiSurfaceGeneratorEmitsMissingSnapshotDiagnosticWhenEnabled
✅ ApiSurfaceGeneratorEmitsNoDiagnosticsWhenSnapshotMatches
✅ ApiSurfaceGeneratorEmitsPerContractDiagnosticsWhenSnapshotDiffers
✅ ApiSurfaceGeneratorIsDeterministicAndIncludesNestedFields
✅ ApiSurfaceGeneratorSkipsComparisonWhenDisabled
✅ ApplyResponseETagSetsHeaderAndHandlesConditionalRequests
✅ ArkETagReadsAndValidatesPreconditions
✅ AttachmentSanitizesClientFileNames
✅ AzureFunctionsAuthenticationUsesConfiguredPrincipalAndChallengesFailures
✅ AzureFunctionsEasyAuthRejectsHeaderWhenPlatformAuthenticationIsDisabled
✅ AzureFunctionsEasyAuthRequiresTrustedPlatformAndRejectsMalformedHeaders
✅ AzureFunctionsGeneratorBindsETagPreconditionAndEmitsResponseETag
✅ AzureFunctionsGeneratorEmitsAnonymousHealthCheck
✅ AzureFunctionsGeneratorEmitsExceptionMappingWithCancellationRethrow
✅ AzureFunctionsGeneratorEmitsRouteBindingWithTryConvertSafe
✅ AzureFunctionsGeneratorEmitsStatusOverridesForQueryAndRequest
✅ AzureFunctionsGeneratorEmitsVersionedHttpTrigger
✅ AzureFunctionsGeneratorHonorsAnonymousEndpointMetadata
✅ AzureFunctionsGeneratorReportsDuplicateNames
✅ AzureFunctionsGeneratorReportsDuplicateRoutes
✅ AzureFunctionsGeneratorReportsMessagePackEndpoints
✅ AzureFunctionsGeneratorSkipsConverterForStringBinding
✅ GeneratorsComposeBodyAndRouteIntoPositionalRecords
✅ GeneratorsDiscoverInheritedBindingProperties
✅ GeneratorsNormalizeMultilineAndEntityEncodedXmlDocumentation
✅ GeneratorsRecognizeAsyncEnumerableResponses
✅ GrpcGeneratorCachesUnchangedInputs
✅ GrpcGeneratorDoesNotCrashForInvalidEvolvableEnumBackingType
✅ GrpcGeneratorEmitsCommandReturningEmpty
✅ GrpcGeneratorEmitsImportedProtoAsset
✅ GrpcGeneratorEmitsStreamingAttachmentCollectionUpload
✅ GrpcGeneratorEmitsVersionedServiceMethodSets
✅ GrpcGeneratorExcludesServerSetRequestMembers
✅ GrpcGeneratorMapsEvolvableEnumsToBackingTypeProtoScalars
✅ GrpcGeneratorReportsUnsupportedHandler
✅ GrpcGeneratorUsesApiGroupWhenGrpcServiceIsAbsent
✅ MessagePackDeserializationUsesUntrustedSecurity
✅ MessagePackFormatterValidationNamesUnformattableContracts
✅ MessagePackResponseRequiresARegisteredResolver
✅ MessagePackStreamingResponseBuffersAndEnforcesLimit
✅ MinimalApiGeneratorAdvertisesStandardProblemResponsesWithoutDuplicates
✅ MinimalApiGeneratorBindsEnumsAsStringsWithoutWrappers
✅ MinimalApiGeneratorBindsETagPreconditions
✅ MinimalApiGeneratorBindsStringCollectionTypes
✅ MinimalApiGeneratorCachesUnchangedInputs
✅ MinimalApiGeneratorCombinesRouteQueryAndBody
✅ MinimalApiGeneratorConfiguresVersionPrefixAtMappingTime
✅ MinimalApiGeneratorDoesNotWrapBasicTypes
✅ MinimalApiGeneratorEmitsCollectionMultipartSchemaMetadata
✅ MinimalApiGeneratorEmitsCommandStatusSemantics
✅ MinimalApiGeneratorEmitsMultipartBinding
✅ MinimalApiGeneratorEmitsNegotiationOnlyForOptedInEndpoints
✅ MinimalApiGeneratorEmitsNullAndCustomSuccessStatusSemantics
✅ MinimalApiGeneratorExpandsVersionedRoutes
✅ MinimalApiGeneratorPropagatesXmlDocumentation
✅ MinimalApiGeneratorProtectsServerSetProperties
✅ MinimalApiGeneratorRejectsVersionPrefixWithoutToken
✅ MinimalApiGeneratorReportsInvalidBodyContract
✅ MinimalApiGeneratorReportsInvalidETagDeclarations
✅ MinimalApiGeneratorReportsMissingRouteProperty
✅ MinimalApiGeneratorReportsMultipleAttachments
✅ MinimalApiGeneratorReportsUnknownVerb
✅ MinimalApiGeneratorReportsUnsupportedAttachmentCollection
✅ MinimalApiGeneratorReportsUnsupportedHandler
✅ MinimalApiGeneratorSecuresEndpointsAndSupportsAnonymousOptOut
✅ MinimalApiGeneratorUsesApiGroupAndReportsDuplicateOperationNames
✅ MinimalApiGeneratorWarnsOnSuspiciousProperties
✅ MinimalApiGeneratorWrapsTypeConverterRouteAndQueryValues
✅ RebusGeneratorCachesUnchangedInputs
✅ RebusGeneratorEmitsCommandHandlerWrapper
✅ RebusGeneratorEmitsOwnerQueueRouting
✅ RebusGeneratorRejectsStreamingResponses
✅ RebusGeneratorReportsInvalidOwnerQueue
✅ RebusGeneratorReportsUnsupportedHandler
✅ RebusMessageAllowsOnlyOneDeclaration
✅ ResponseETagIsEmittedOnlyForMarkedResponses
✅ VersioningDefaultsToTheInitialUnretiredVersion
✅ Ark.Tools.MediatorFramework.Tests.GrpcErrorInterceptorTests
✅ HidesUnexpectedExceptionDetailsOutsideDevelopment
✅ IncludesUnexpectedExceptionDetailsInDevelopment
✅ MapsConcurrencyExceptions
✅ MapsInternalTimeoutOperationCanceledExceptionToInternalError
✅ MapsPublicBusinessRuleExtensions
✅ RethrowsOperationCanceledExceptionWhenClientCancelled
✅ RethrowsRpcExceptionWithoutChangingStackTrace
✅ Ark.Tools.MediatorFramework.Tests.MinimalApiHostingExtensionsTests
✅ AttachmentMappingRegistersAnEndpoint
✅ EnumsBindAsStringsFromRouteAndQuery
✅ OpenApiConventionsReturnTheConfiguredOptions
✅ OpenApiNodaTimeSchemasCoverNativeAndNullableTypes
✅ OpenApiSecurityContainsPkceAndOpenIdConnectSchemes
✅ TypeConverterMetadataUsesWrappedClrType
✅ TypeConverterWrapperBindsNodaTimeRouteAndNullableQueryValues
✅ Ark.Tools.MediatorFramework.Tests.ProblemDetailsMapperTests
✅ MapsKnownExceptionsToExpectedStatusCodes
✅ Ark.Tools.MediatorFramework.Tests.StreamingArkAttachmentTests
✅ OpenReadAsyncReadsMetadataAndAllChunks
✅ OpenReadAsyncRejectsMissingMetadata
✅ ReadAllAsyncReadsMetadataDelimitedFilesInOrder
✅ TestResults/Ark.Tools.MessagePack.Tests_net10.0_x64.trx
5 tests were completed in 634ms with 5 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.MessagePack.Tests.EvolvableEnumFormatterResolverTests | 5 ✅ | 408ms |
✅ Ark.Tools.MessagePack.Tests.EvolvableEnumFormatterResolverTests
✅ Resolver_SupportsMultipleClosedGenericTypes_WithoutPerTypeRegistration
✅ Roundtrips_DefinedValue
✅ Roundtrips_ULongMaxValue_WithoutSignCorruption
✅ Roundtrips_UnknownNumber
✅ Serializing_UnknownName_ShouldThrowExplicitly
✅ TestResults/Ark.Tools.Nodatime.Protobuf.Tests_net10.0_x64.trx
5 tests were completed in 855ms with 5 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.Nodatime.Protobuf.Tests.NodaTimeSurrogateTests | 5 ✅ | 1s |
✅ Ark.Tools.Nodatime.Protobuf.Tests.NodaTimeSurrogateTests
✅ LocalDate_carries_no_time_component
✅ Native_types_use_common_proto_shapes
✅ OffsetDateTime_preserves_negative_offset_and_instant
✅ Period_is_encoded_as_iso_string
✅ Roundtrips_all_supported_types
✅ TestResults/Ark.Tools.Nodatime.Protobuf.Tests_net8.0_x64.trx
5 tests were completed in 1s with 5 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.Nodatime.Protobuf.Tests.NodaTimeSurrogateTests | 5 ✅ | 2s |
✅ Ark.Tools.Nodatime.Protobuf.Tests.NodaTimeSurrogateTests
✅ LocalDate_carries_no_time_component
✅ Native_types_use_common_proto_shapes
✅ OffsetDateTime_preserves_negative_offset_and_instant
✅ Period_is_encoded_as_iso_string
✅ Roundtrips_all_supported_types
✅ TestResults/Ark.Tools.Nodatime.Tests_net10.0_x64.trx
10 tests were completed in 633ms with 10 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.Nodatime.Tests.NullableConverterTests | 10 ✅ | 693ms |
✅ Ark.Tools.Nodatime.Tests.NullableConverterTests
✅ NullableInstantConverter_ShouldHandleNullValue
✅ NullableInstantConverter_ShouldRoundtripConversion
✅ NullableLocalDateConverter_ShouldHandleNullValue
✅ NullableLocalDateConverter_ShouldRoundtripConversion
✅ NullableLocalDateTimeConverter_ShouldHandleNullValue
✅ NullableLocalDateTimeConverter_ShouldRoundtripConversion
✅ NullableLocalTimeConverter_ShouldHandleNullValue
✅ NullableLocalTimeConverter_ShouldRoundtripConversion
✅ NullableOffsetDateTimeConverter_ShouldHandleNullValue
✅ NullableOffsetDateTimeConverter_ShouldRoundtripConversion
✅ TestResults/Ark.Tools.Protobuf.Tests_net10.0_x64.trx
4 tests were completed in 840ms with 4 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.Protobuf.Tests.EvolvableEnumSurrogateTests | 4 ✅ | 1s |
✅ Ark.Tools.Protobuf.Tests.EvolvableEnumSurrogateTests
✅ Roundtrips_DefinedValue
✅ Roundtrips_ULongMaxValue_WithoutSignCorruption
✅ Roundtrips_UnknownNumber
✅ Serializing_UnknownName_ShouldThrowExplicitly
✅ TestResults/Ark.Tools.ResourceWatcher.Tests_net10.0_x64.trx
33 tests were completed in 3s with 33 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.ResourceWatcher.Tests.Features.ResourceWatcherStateTransitionsFeature | 10 ✅ | 693ms | ||
| Ark.Tools.ResourceWatcher.Tests.Features.SqlStateProviderIntegrationTestsFeature | 13 ✅ | 1s | ||
| Ark.Tools.ResourceWatcher.Tests.Features.Type_SafeExtensionsSupportFeature | 9 ✅ | 819ms | ||
| Ark.Tools.ResourceWatcher.Tests.Features.WorkerHostSQLProxyIntegrationFeature | 1 ✅ | 554ms |
✅ Ark.Tools.ResourceWatcher.Tests.Features.ResourceWatcherStateTransitionsFeature
✅ Banned resource is skipped during ban period
✅ Failed resource processing triggers retry
✅ Multiple new resources are processed in parallel
✅ New resource is processed and stored
✅ New resource with ModifiedSources triggers processing
✅ Resource checksum is stored in state after processing
✅ Resource exceeding max retries is banned
✅ Resource with newer Modified timestamp is processed as Updated
✅ Resource with same Modified timestamp is skipped
✅ Successful retry resets RetryCount to zero
✅ Ark.Tools.ResourceWatcher.Tests.Features.SqlStateProviderIntegrationTestsFeature
✅ EnsureTableAreCreated creates required database objects
✅ Load specific resources by ID
✅ Load state for non-existent tenant returns empty
✅ Load state with empty resource IDs returns empty
✅ Load state with invalid Extensions JSON returns null Extensions
✅ Load state with more than 2000 resource IDs
✅ Save and load a single resource state
✅ Save and load multiple resource states
✅ Save and load retry state with exception
✅ Save and load state with Extensions
✅ Save and load state with ModifiedSources
✅ States are isolated by tenant
✅ Update existing resource state
✅ Ark.Tools.ResourceWatcher.Tests.Features.Type_SafeExtensionsSupportFeature
✅ Multiple VoidExtensions states can be saved and loaded
✅ SqlStateProvider with different extension types are type-safe
✅ Typed extensions can be null
✅ Typed extensions serialize and deserialize correctly
✅ Typed extensions survive serialization round-trip
✅ Typed extensions with complex nested data
✅ Update typed extensions preserves type information
✅ VoidExtensions is always treated as null
✅ VoidExtensions serializes as null in database
✅ Ark.Tools.ResourceWatcher.Tests.Features.WorkerHostSQLProxyIntegrationFeature
✅ WorkerHost proxy runs with SqlStateProvider
✅ TestResults/Ark.Tools.ResourceWatcher.Tests_net8.0_x64.trx
33 tests were completed in 6s with 33 passed, 0 failed and 0 skipped.
✅ Ark.Tools.ResourceWatcher.Tests.Features.ResourceWatcherStateTransitionsFeature
✅ Banned resource is skipped during ban period
✅ Failed resource processing triggers retry
✅ Multiple new resources are processed in parallel
✅ New resource is processed and stored
✅ New resource with ModifiedSources triggers processing
✅ Resource checksum is stored in state after processing
✅ Resource exceeding max retries is banned
✅ Resource with newer Modified timestamp is processed as Updated
✅ Resource with same Modified timestamp is skipped
✅ Successful retry resets RetryCount to zero
✅ Ark.Tools.ResourceWatcher.Tests.Features.SqlStateProviderIntegrationTestsFeature
✅ EnsureTableAreCreated creates required database objects
✅ Load specific resources by ID
✅ Load state for non-existent tenant returns empty
✅ Load state with empty resource IDs returns empty
✅ Load state with invalid Extensions JSON returns null Extensions
✅ Load state with more than 2000 resource IDs
✅ Save and load a single resource state
✅ Save and load multiple resource states
✅ Save and load retry state with exception
✅ Save and load state with Extensions
✅ Save and load state with ModifiedSources
✅ States are isolated by tenant
✅ Update existing resource state
✅ Ark.Tools.ResourceWatcher.Tests.Features.Type_SafeExtensionsSupportFeature
✅ Multiple VoidExtensions states can be saved and loaded
✅ SqlStateProvider with different extension types are type-safe
✅ Typed extensions can be null
✅ Typed extensions serialize and deserialize correctly
✅ Typed extensions survive serialization round-trip
✅ Typed extensions with complex nested data
✅ Update typed extensions preserves type information
✅ VoidExtensions is always treated as null
✅ VoidExtensions serializes as null in database
✅ Ark.Tools.ResourceWatcher.Tests.Features.WorkerHostSQLProxyIntegrationFeature
✅ WorkerHost proxy runs with SqlStateProvider
✅ TestResults/Ark.Tools.Solid.Analyzers.Tests_net10.0_x64.trx
7 tests were completed in 5s with 7 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.Solid.Analyzers.Tests.SelfGenericInterfaceAnalyzerTests | 7 ✅ | 4s |
✅ Ark.Tools.Solid.Analyzers.Tests.SelfGenericInterfaceAnalyzerTests
✅ CodeFix_IsIdempotent
✅ CodeFix_ShouldRewriteBaseTypes
✅ GenericRecord_ShouldReportAndFixWithQualification
✅ InheritedLegacyInterface_ShouldReportWarning
✅ LegacyInterfaces_ShouldReportWarnings
✅ MultipleLegacyInterfaces_ShouldReportOneWarningPerInterface
✅ SelfGenericInterfaces_ShouldNotReportWarnings
✅ TestResults/Ark.Tools.Solid.SimpleInjector.Tests_net10.0_x64.trx
3 tests were completed in 726ms with 3 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.Solid.SimpleInjector.Tests.SimpleInjectorProcessorTests | 3 ✅ | 299ms |
✅ Ark.Tools.Solid.SimpleInjector.Tests.SimpleInjectorProcessorTests
✅ Processors_execute_decorated_handlers
✅ Processors_execute_self_generic_types_without_reflection
✅ Processors_propagate_cancellation_and_exceptions
✅ TestResults/Ark.Tools.Sql.Oracle.Tests_net10.0_x64.trx
4 tests were completed in 471ms with 4 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| Ark.Tools.Sql.Oracle.Tests.OracleDbConnectionManagerTests | 4 ✅ | 112ms |
✅ Ark.Tools.Sql.Oracle.Tests.OracleDbConnectionManagerTests
✅ Build_ShouldSetConnectionCommandTimeoutTo30Seconds
✅ CommandTimeout_CanBeOverriddenPerCommand
✅ ConnectionCommandTimeout_CanBeOverriddenAfterBuild
✅ CreatedCommand_ShouldInheritCommandTimeoutFromConnection
✅ TestResults/WebApplicationDemo.Tests_net10.0_x64.trx
28 tests were completed in 6s with 28 passed, 0 failed and 0 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| WebApplicationDemo.Tests.Tests.MsgPackFeature | 1 ✅ | 749ms | ||
| WebApplicationDemo.Tests.Tests.ODataFeature | 10 ✅ | 524ms | ||
| WebApplicationDemo.Tests.Tests.ReqnrollTestFeature | 6 ✅ | 646ms | ||
| WebApplicationDemo.Tests.Tests.SwaggerSpecFeature | 11 ✅ | 1s |
✅ WebApplicationDemo.Tests.Tests.MsgPackFeature
✅ MsgPack Roundtrip
✅ WebApplicationDemo.Tests.Tests.ODataFeature
✅ OData MarketRecord v0 - $select returns only selected field
✅ OData MarketRecord v0 - list returns data
✅ OData MarketRecord v1 - list returns data
✅ OData People v1 - $filter by FirstName returns one result
✅ OData People v1 - $select returns only selected fields
✅ OData People v1 - key lookup returns entity with id 1
✅ OData People v1 - list returns Person V1 schema (no phone field)
✅ OData People v2 - $orderby by FirstName returns ordered results
✅ OData People v2 - key lookup returns entity with id 2
✅ OData People v2 - list returns Person V2 schema (with phone field)
✅ WebApplicationDemo.Tests.Tests.ReqnrollTestFeature
✅ Reqnroll stil working
✅ Swagger Page
✅ Swagger Spec V0.0
✅ Swagger Spec V1.0
✅ Swagger Spec V2.0
✅ Swagger Spec V3.0
✅ WebApplicationDemo.Tests.Tests.SwaggerSpecFeature
✅ Default error responses (400, 401, 403, 500) are present on entity endpoint
✅ Entity V1 Output allOf has date property with LocalDate format
✅ FlaggedEnum parameter renders as array in swagger
✅ NodaTime LocalDate mapped as date format via LocalDateRange schema
✅ Non-OData endpoint has no odata media type in responses
✅ Person V1 schema does not have phone property directly
✅ Person V2 schema has phone property in allOf extension
✅ Swagger spec v0.0 - contains OData MarketRecord endpoint
✅ Swagger spec v0.0 - does not contain People endpoint (no People controller for v0)
✅ Swagger spec v1.0 - contains OData People and MarketRecordV1 endpoints
✅ Swagger spec v2.0 - contains OData People v2 endpoint