Skip to content

Add Roslyn Analyzer project (#349) #320

Add Roslyn Analyzer project (#349)

Add Roslyn Analyzer project (#349) #320

GitHub Actions / .NET tests succeeded May 24, 2024 in 1s

125 passed, 0 failed and 0 skipped

Tests passed successfully

Report Passed Failed Skipped Time
test/Carter.ResponseNegotiators.Newtonsoft.Tests/TestResults/_fv-az1776-295_2024-05-24_13_10_04.trx 5✅ 2s
test/Carter.Samples.Tests/TestResults/_fv-az1776-295_2024-05-24_13_10_05.trx 12✅ 4s
test/Carter.Tests/TestResults/_fv-az1776-295_2024-05-24_13_10_04.trx 108✅ 11s

✅ test/Carter.ResponseNegotiators.Newtonsoft.Tests/TestResults/_fv-az1776-295_2024-05-24_13_10_04.trx

5 tests were completed in 2s with 5 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Carter.ResponseNegotiators.Newtonsoft.Tests.NewtonsoftJsonResponseNegotiatorTests 5✅ 221ms

✅ Carter.ResponseNegotiators.Newtonsoft.Tests.NewtonsoftJsonResponseNegotiatorTests

✅ Should_camelCase_json
✅ Should_fallback_to_json_even_if_no_accept_header
✅ Should_fallback_to_json(accept: "not/known")
✅ Should_fallback_to_json(accept: "utt$r-rubbish-9")
✅ Should_pick_default_json_processor_last

✅ test/Carter.Samples.Tests/TestResults/_fv-az1776-295_2024-05-24_13_10_05.trx

12 tests were completed in 4s with 12 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Carter.Samples.Tests.FunctionalTests 12✅ 2s

✅ Carter.Samples.Tests.FunctionalTests

✅ Should_delete_director
✅ Should_return_400_if_user_not_successfully_updated
✅ Should_return_403_if_user_not_allowed_on_delete
✅ Should_return_403_if_user_not_allowed_on_update
✅ Should_return_422_for_blank_castmember_with_async_validation
✅ Should_return_422_storing_dodgy_director
✅ Should_return_422_updating_dodgy_director
✅ Should_return_director_by_id
✅ Should_return_list_of_director_data
✅ Should_return_null_if_permission_not_allowed
✅ Should_store_director
✅ Should_update_director

✅ test/Carter.Tests/TestResults/_fv-az1776-295_2024-05-24_13_10_04.trx

108 tests were completed in 11s with 108 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Carter.Tests.Analyzers.CarterModuleShouldNotHaveDependenciesTests 42✅ 8s
Carter.Tests.AuthorizationTests 2✅ 154ms
Carter.Tests.CarterConfiguratorTests 15✅ 8ms
Carter.Tests.CarterExtensionTests 12✅ 167ms
Carter.Tests.ContentNegotiation.HttpJsonOptionsResponseNegotiatorTests 1✅ 374ms
Carter.Tests.ContentNegotiation.ResponseNegotiatorTests 8✅ 539ms
Carter.Tests.ExtensionTests 10✅ 775ms
Carter.Tests.RouteExtensionsTests 6✅ 948ms
Carter.Tests.StreamTests.ResponseFromStreamTests 10✅ 594ms
Carter.Tests.TypeExtensionTests 2✅ 1ms

✅ Carter.Tests.Analyzers.CarterModuleShouldNotHaveDependenciesTests

✅ CarterSubModuleWithConstructorDependencies_NoDiagnostic(type: "class")
✅ CarterSubModuleWithConstructorDependencies_NoDiagnostic(type: "record")
✅ NonCarterModuleWithConstructorDependencies_NoDiagnostic(type: "class")
✅ NonCarterModuleWithConstructorDependencies_NoDiagnostic(type: "record struct")
✅ NonCarterModuleWithConstructorDependencies_NoDiagnostic(type: "record")
✅ NonCarterModuleWithConstructorDependencies_NoDiagnostic(type: "struct")
✅ RecordNonCarterModuleWithConstructorDependencies_NoDiagnostic(type: "record struct")
✅ RecordNonCarterModuleWithConstructorDependencies_NoDiagnostic(type: "record")
✅ RecordWithDefaultDependencies_Diagnostic(type: "record struct")
✅ RecordWithDefaultDependencies_Diagnostic(type: "record")
✅ RecordWithDependency_Diagnostic(type: "record struct")
✅ RecordWithDependency_Diagnostic(type: "record")
✅ RecordWithMultipleDependencies_Diagnostic(type: "record struct")
✅ RecordWithMultipleDependencies_Diagnostic(type: "record")
✅ TypeWithDefaultDependencies_Diagnostic(type: "class")
✅ TypeWithDefaultDependencies_Diagnostic(type: "record struct")
✅ TypeWithDefaultDependencies_Diagnostic(type: "record")
✅ TypeWithDefaultDependencies_Diagnostic(type: "struct")
✅ TypeWithDependencies_WhenConstructorIsImplicitlyPrivate_NoDiagnostic(type: "class")
✅ TypeWithDependencies_WhenConstructorIsImplicitlyPrivate_NoDiagnostic(type: "record struct")
✅ TypeWithDependencies_WhenConstructorIsImplicitlyPrivate_NoDiagnostic(type: "record")
✅ TypeWithDependencies_WhenConstructorIsImplicitlyPrivate_NoDiagnostic(type: "struct")
✅ TypeWithDependencies_WhenConstructorIsPrivate_NoDiagnostic(type: "class")
✅ TypeWithDependencies_WhenConstructorIsPrivate_NoDiagnostic(type: "record struct")
✅ TypeWithDependencies_WhenConstructorIsPrivate_NoDiagnostic(type: "record")
✅ TypeWithDependencies_WhenConstructorIsPrivate_NoDiagnostic(type: "struct")
✅ TypeWithDependency_Diagnostic(type: "class")
✅ TypeWithDependency_Diagnostic(type: "record struct")
✅ TypeWithDependency_Diagnostic(type: "record")
✅ TypeWithDependency_Diagnostic(type: "struct")
✅ TypeWithMultipleDependencies_Diagnostic(type: "class")
✅ TypeWithMultipleDependencies_Diagnostic(type: "record struct")
✅ TypeWithMultipleDependencies_Diagnostic(type: "record")
✅ TypeWithMultipleDependencies_Diagnostic(type: "struct")
✅ TypeWithoutConstructor_NoDiagnostic(type: "class")
✅ TypeWithoutConstructor_NoDiagnostic(type: "record struct")
✅ TypeWithoutConstructor_NoDiagnostic(type: "record")
✅ TypeWithoutConstructor_NoDiagnostic(type: "struct")
✅ TypeWithZeroParameterConstructor_NoDiagnostic(type: "class")
✅ TypeWithZeroParameterConstructor_NoDiagnostic(type: "record struct")
✅ TypeWithZeroParameterConstructor_NoDiagnostic(type: "record")
✅ TypeWithZeroParameterConstructor_NoDiagnostic(type: "struct")

✅ Carter.Tests.AuthorizationTests

✅ Should_contain_endpoint_with_default_authz_metadata
✅ Should_contain_endpoint_with_specific_authz_metadata

✅ Carter.Tests.CarterConfiguratorTests

✅ Should_add_multiple_modules
✅ Should_add_multiple_responsenegotiators
✅ Should_add_multiple_validators
✅ Should_add_single_module
✅ Should_add_single_responsenegotiator
✅ Should_add_single_validator
✅ Should_exclude_modules
✅ Should_exclude_negotiators
✅ Should_exclude_validators
✅ Should_return_same_instance_when_adding_module
✅ Should_return_same_instance_when_adding_multiple_modules
✅ Should_return_same_instance_when_adding_multiple_responsenegotiators
✅ Should_return_same_instance_when_adding_multiple_validators
✅ Should_return_same_instance_when_adding_responsenegotiator
✅ Should_return_same_instance_when_adding_validator

✅ Carter.Tests.CarterExtensionTests

✅ Should_register_assembly_scanned_modules_when_no_configurator_used
✅ Should_register_assembly_scanned_responsenegotiators_when_no_configurator_used
✅ Should_register_assembly_scanned_valdators_when_no_configurator_used
✅ Should_register_modules_passed_in_by_configurator
✅ Should_register_multiple_modules_passed_in_by_configurator
✅ Should_register_multiple_responsenegotiators_passed_in_by_configurator_and_default_json_negotiator
✅ Should_register_multiple_validators_passed_in_by_configurator
✅ Should_register_no_modules_passed_in_by_configurator
✅ Should_register_no_response_negotiators_passed_in_by_configurator
✅ Should_register_no_validators_passed_in_by_configurator
✅ Should_register_responsenegotiators_passed_in_by_configurator_and_default_json_negotiator
✅ Should_register_validators_passed_in_by_configurator

✅ Carter.Tests.ContentNegotiation.HttpJsonOptionsResponseNegotiatorTests

✅ Should_obey_httpjsonoptions

✅ Carter.Tests.ContentNegotiation.ResponseNegotiatorTests

✅ Should_camelCase_json
✅ Should_fallback_to_json_even_if_no_accept_header
✅ Should_fallback_to_json(accept: "not/known")
✅ Should_fallback_to_json(accept: "utt$r-rubbish-9")
✅ Should_pick_correctly_weighted_processor
✅ Should_pick_default_json_processor_last
✅ Should_pick_non_weighted_over_weighted
✅ Should_use_appropriate_response_negotiator

✅ Carter.Tests.ExtensionTests

✅ Should_create_file_with_custom_filename
✅ Should_create_file_with_default_filename
✅ Should_return_GET_requests_with_multiple_parsed_querystring_with_nullable_parameters(url: "/nullablemultiquerystring?id=1,2")
✅ Should_return_GET_requests_with_multiple_parsed_querystring_with_nullable_parameters(url: "/nullablemultiquerystring?id=1&id=2")
✅ Should_return_GET_requests_with_multiple_parsed_querystring(url: "/multiquerystring?id=1,2")
✅ Should_return_GET_requests_with_multiple_parsed_querystring(url: "/multiquerystring?id=1&id=2")
✅ Should_return_GET_requests_with_parsed_querystring
✅ Should_return_GET_requests_with_parsed_querystring_with_nullable_parameter
✅ Should_return_OK_and_path_for_bindsavefile
✅ Should_return_POST_request_body_AsStringAsync

✅ Carter.Tests.RouteExtensionsTests

✅ Should_hit_route_if_validation_successful(httpMethod: "POST")
✅ Should_hit_route_if_validation_successful(httpMethod: "PUT")
✅ Should_pick_type_to_validate_no_matter_of_delegate_position(httpMethod: "POST")
✅ Should_pick_type_to_validate_no_matter_of_delegate_position(httpMethod: "PUT")
✅ Should_return_422_on_validation_failure(httpMethod: "POST")
✅ Should_return_422_on_validation_failure(httpMethod: "PUT")

✅ Carter.Tests.StreamTests.ResponseFromStreamTests

✅ Should_not_set_content_disposition_header_by_default
✅ Should_return_full_stream_on_invalid_headers(range: "1+2")
✅ Should_return_full_stream_on_invalid_headers(range: "3-1")
✅ Should_return_range(range: "0-", expectedRange: "0-9", expectedBody: "0123456789")
✅ Should_return_range(range: "0-2", expectedRange: "0-2", expectedBody: "012")
✅ Should_return_range(range: "2-4", expectedRange: "2-4", expectedBody: "234")
✅ Should_return_range(range: "4-6", expectedRange: "4-6", expectedBody: "456")
✅ Should_return_requested_range_not_satisfiable(range: "-1")
✅ Should_return_requested_range_not_satisfiable(range: "0-9999999999")
✅ Should_set_content_type_body_acceptrange_header_content_disposition

✅ Carter.Tests.TypeExtensionTests

✅ MustDeriveFrom_TypesDerivingFrom_WontThrow
✅ MustDeriveFrom_TypesDontDeriveFrom_WillThrow