Skip to content

DataTable class

DataTable class #73

GitHub Actions / xUnit Specs failed Jan 29, 2024 in 0s

206 passed, 2 failed and 0 skipped

Tests failed

❌ Tests/Reqnroll.Specs/TestResults/specs-xunit-results.trx

208 tests were completed in 872s with 206 passed, 2 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Reqnroll.Specs.Features._NETLanguageCode_BehindGenerationSupportFeature_xUnit_Net60_New_CSharp 4✅ 57s
Reqnroll.Specs.Features.BuildSystemsFeature_xUnit_Net60_New_CSharp 2✅ 19s
Reqnroll.Specs.Features.Contexts.AccessingContextsFeature_xUnit_Net60_New_CSharp 10✅ 140s
Reqnroll.Specs.Features.Contexts.FeatureInfo.FeatureDescriptionAccessingFeature_xUnit_Net60_New_CSharp 2✅ 29s
Reqnroll.Specs.Features.Contexts.InjectingContextIntoBindingClassesFeature_xUnit_Net60_New_CSharp 6✅ 91s
Reqnroll.Specs.Features.Contexts.InjectingContextIntoHooksFeature_xUnit_Net60_New_CSharp 4✅ 62s
Reqnroll.Specs.Features.Contexts.ScenarioInfo.ScenarioArgumentsAccessingFeature_xUnit_Net60_New_CSharp 2✅ 26s
Reqnroll.Specs.Features.Contexts.ScenarioInfo.ScenarioDescriptionAccessingFeature_xUnit_Net60_New_CSharp 2✅ 30s
Reqnroll.Specs.Features.Contexts.ScenarioInfo.ScenarioTagsAccessingFeature_xUnit_Net60_New_CSharp 3✅ 40s
Reqnroll.Specs.Features.Execution.AsyncSupportFeature_xUnit_Net60_New_CSharp 2✅ 27s
Reqnroll.Specs.Features.Execution.BasicScenarioExecutionFeature_xUnit_Net60_New_CSharp 4✅ 52s
Reqnroll.Specs.Features.Execution.BindingCultureFeature_xUnit_Net60_New_CSharp 3✅ 41s
Reqnroll.Specs.Features.Execution.ConfigurationFeature_xUnit_Net60_New_CSharp 2✅ 28s
Reqnroll.Specs.Features.Execution.CucumberExpressionsFeature_xUnit_Net60_New_CSharp 4✅ 57s
Reqnroll.Specs.Features.Execution.DifferentStepArgumentsFeature_xUnit_Net60_New_CSharp 4✅ 55s
Reqnroll.Specs.Features.Execution.ExecutionSmokeTestsFeature_xUnit_Net60_New_CSharp 5✅ 66s
Reqnroll.Specs.Features.Execution.ExternalStepDefinitionsFeature_xUnit_Net60_New_CSharp 2✅ 54s
Reqnroll.Specs.Features.Execution.IgnoredFeaturesFeature_xUnit_Net60_New_CSharp 2✅ 37s
Reqnroll.Specs.Features.Execution.IgnoredScenariosFeature_xUnit_Net60_New_CSharp 2✅ 33s
Reqnroll.Specs.Features.Execution.In_AppDomainParallelExecutionFeature_xUnit_Net60_New_CSharp 7✅ 113s
Reqnroll.Specs.Features.Execution.ObsoleteStepsFeature_xUnit_Net60_New_CSharp 6✅ 81s
Reqnroll.Specs.Features.Execution.RuleBackgroundStepsAreAddedToScenariosBelongingToRulesFeature_xUnit_Net60_New_CSharp 2✅ 29s
Reqnroll.Specs.Features.Execution.ScenarioOutlinesFeature_xUnit_Net60_New_CSharp 3✅ 42s
Reqnroll.Specs.Features.Execution.ScopingStepDefinitionsFeature_xUnit_Net60_New_CSharp 9✅ 125s
Reqnroll.Specs.Features.Execution.StepArgumentTransformationsFeature_xUnit_Net60_New_CSharp 3✅ 2❌ 65s
Reqnroll.Specs.Features.Execution.StepDefinitionsCanBeMatchedBasedOnTheMethodNameWithoutRegexFeature_xUnit_Net60_New_CSharp 22✅ 352s
Reqnroll.Specs.Features.Execution.TaggingScenarioOutlineExamplesFeature_xUnit_Net60_New_CSharp 3✅ 41s
Reqnroll.Specs.Features.Execution.TracingTestsFeature_xUnit_Net60_New_CSharp 3✅ 39s
Reqnroll.Specs.Features.Hooks.ExecuteHooksFeature_xUnit_Net60_New_CSharp 50✅ 399s
Reqnroll.Specs.Features.Hooks.ExecuteHooksInSpecifiedOrderFeature_xUnit_Net60_New_CSharp 11✅ 149s
Reqnroll.Specs.Features.Hooks.HookErrorHandlingFeature_xUnit_Net60_New_CSharp 4✅ 58s
Reqnroll.Specs.Features.Hooks.InjectHookParametersFeature_xUnit_Net60_New_CSharp 3✅ 44s
Reqnroll.Specs.Features.Hooks.ScopedHooksFeature_xUnit_Net60_New_CSharp 6✅ 81s
Reqnroll.Specs.Features.MultipleSpecsProjectsFeature_xUnit_Net60_New_CSharp 2✅ 33s
Reqnroll.Specs.Features.Parser.RuleSupportFeature_xUnit_Net60_New_CSharp 1✅ 19s
Reqnroll.Specs.Features.RegressionTests.GH2571Feature_xUnit_Net60_New_CSharp 1✅ 15s
Reqnroll.Specs.Features.SingleFileGeneratorChecksFeature_xUnit_Net60_New_CSharp 1✅ 8s
Reqnroll.Specs.Features.UnitTestProviderSpecific.XUnit.XUnitV2UnitTestProviderFeature_xUnit_Net60_New_CSharp 4✅ 60s

✅ Reqnroll.Specs.Features._NETLanguageCode_BehindGenerationSupportFeature_xUnit_Net60_New_CSharp

✅ A project with a single scenario should compile successfully in all supported languages and build systems(description: "C# with dotnet build", language: "C#", buildCommand: "dotnet build", exampleTags: [])
✅ A project with a single scenario should compile successfully in all supported languages and build systems(description: "C# with dotnet msbuild", language: "C#", buildCommand: "dotnet msbuild", exampleTags: [])
✅ A project with a single scenario should compile successfully in all supported languages and build systems(description: "VB.NET with dotnet build", language: "VB.NET", buildCommand: "dotnet build", exampleTags: [])
✅ A project with a single scenario should compile successfully in all supported languages and build systems(description: "VB.NET with dotnet msuild", language: "VB.NET", buildCommand: "dotnet msbuild", exampleTags: [])

✅ Reqnroll.Specs.Features.BuildSystemsFeature_xUnit_Net60_New_CSharp

✅ Use dotnet build for compiling
✅ Use dotnet msbuild for compiling

✅ Reqnroll.Specs.Features.Contexts.AccessingContextsFeature_xUnit_Net60_New_CSharp

✅ Different scenarios should have their own ScenarioContext injected
✅ FeatureContext can be accessed from Steps base class
✅ ScenarioContext can be accessed from Steps base class
✅ Should be able to inject FeatureContext
✅ Should be able to inject ScenarioContext
✅ StepContext can be accessed from Steps base class
✅ StepContext can be accessed from the ScenarioContext
✅ The obsolete ScenarioContext.Current can be accessed from a non-parallel execution
✅ The same FeatureContext should be inject in the scenarios of the same feature
✅ The same ScenarioContext should be inject in the same scenario

✅ Reqnroll.Specs.Features.Contexts.FeatureInfo.FeatureDescriptionAccessingFeature_xUnit_Net60_New_CSharp

✅ Check Feature description is not empty
✅ Check Feature description is null if empty

✅ Reqnroll.Specs.Features.Contexts.InjectingContextIntoBindingClassesFeature_xUnit_Net60_New_CSharp

✅ Binding class can depend on a single context
✅ Binding class can depend on multiple contexts
✅ Context classes are recreated for every scenario
✅ Context classes are shared across binding classes
✅ Context classes can depend on other context classes recursively
✅ Disposable dependencies should be disposed after scenario execution

✅ Reqnroll.Specs.Features.Contexts.InjectingContextIntoHooksFeature_xUnit_Net60_New_CSharp

✅ Inject FeatureContext into a Feature hook(hook: "AfterFeature", exampleTags: [])
✅ Inject FeatureContext into a Feature hook(hook: "BeforeFeature", exampleTags: [])
✅ Inject ScenarioContext into a Scenario hook(hook: "AfterScenario", exampleTags: [])
✅ Inject ScenarioContext into a Scenario hook(hook: "BeforeScenario", exampleTags: [])

✅ Reqnroll.Specs.Features.Contexts.ScenarioInfo.ScenarioArgumentsAccessingFeature_xUnit_Net60_New_CSharp

✅ Scenario arguments are empty for regular scenario
✅ Scenario arguments for outlined scenario

✅ Reqnroll.Specs.Features.Contexts.ScenarioInfo.ScenarioDescriptionAccessingFeature_xUnit_Net60_New_CSharp

✅ Check Scenario description is not empty
✅ Check Scenario description is null if empty

✅ Reqnroll.Specs.Features.Contexts.ScenarioInfo.ScenarioTagsAccessingFeature_xUnit_Net60_New_CSharp

✅ Accessing tags of a scenario inside a rule
✅ Accessing tags of a scenario outline
✅ Accessing tags of a simple scenario

✅ Reqnroll.Specs.Features.Execution.AsyncSupportFeature_xUnit_Net60_New_CSharp

✅ Should wait for aync step methods to complete before continuing to next step
✅ Step method should recieve exception from async method call

✅ Reqnroll.Specs.Features.Execution.BasicScenarioExecutionFeature_xUnit_Net60_New_CSharp

✅ Building the same project multiple times without changes should be possible
✅ Should be able to execute a simple failing scenario
✅ Should be able to execute a simple passing scenario
✅ Should be able to execute a simple pending scenario

✅ Reqnroll.Specs.Features.Execution.BindingCultureFeature_xUnit_Net60_New_CSharp

✅ The binding culture can be specified to be different than the scenario culture
✅ The default culture is used for bindings if not specified
✅ The scenario language is used for bindings if not specified

✅ Reqnroll.Specs.Features.Execution.ConfigurationFeature_xUnit_Net60_New_CSharp

✅ Generation configuration in reqnroll.json
✅ Runtime configuration in reqnroll.json

✅ Reqnroll.Specs.Features.Execution.CucumberExpressionsFeature_xUnit_Net60_New_CSharp

✅ Cucumber expresions and Regular expressions are mixed in the same project
✅ Cucumber expresions are used for Step Definitions
✅ Custom parameter types definied with [StepArgumentTransformation] can be used with specified name
✅ Custom parameter types definied with [StepArgumentTransformation] can be used with type name

✅ Reqnroll.Specs.Features.Execution.DifferentStepArgumentsFeature_xUnit_Net60_New_CSharp

✅ Step parameters in the step definitions have to be declared before the multiline text and table parameters
✅ Steps can be defined with multiline text argument
✅ Steps can be defined with table argument
✅ Steps can be defined without argument

✅ Reqnroll.Specs.Features.Execution.ExecutionSmokeTestsFeature_xUnit_Net60_New_CSharp

✅ Generated classes from test files can be compiled(language: "C#", exampleTags: [])
✅ Generated classes from test files can be compiled(language: "VB.Net", exampleTags: [])
✅ Scenarios in the test file can be executed
✅ Test files can be generated(language: "C#", exampleTags: [])
✅ Test files can be generated(language: "VB.Net", exampleTags: [])

✅ Reqnroll.Specs.Features.Execution.ExternalStepDefinitionsFeature_xUnit_Net60_New_CSharp

✅ Steps can defined in an external .NET (e.g. c# or VB.NET) project
✅ Steps can defined in an external F# project

✅ Reqnroll.Specs.Features.Execution.IgnoredFeaturesFeature_xUnit_Net60_New_CSharp

✅ Should be able to ignore all Scenarios and Scenario Outlines in a feature
✅ Should be able to ignore all Scenarios in a feature

✅ Reqnroll.Specs.Features.Execution.IgnoredScenariosFeature_xUnit_Net60_New_CSharp

✅ Should be able to ignore a scenario
✅ Should be able to ignore a scenario outline

✅ Reqnroll.Specs.Features.Execution.In_AppDomainParallelExecutionFeature_xUnit_Net60_New_CSharp

✅ Before/After TestRun hook should only be executed once(event: "AfterTestRun", exampleTags: [])
✅ Before/After TestRun hook should only be executed once(event: "BeforeTestRun", exampleTags: [])
✅ Current context cannot be used in multi-threaded execution(context: "FeatureContext", exampleTags: [])
✅ Current context cannot be used in multi-threaded execution(context: "ScenarioContext", exampleTags: [])
✅ Current context cannot be used in multi-threaded execution(context: "ScenarioStepContext", exampleTags: [])
✅ Precondition: Tests run parallel
✅ Tests should be processed parallel without failure

✅ Reqnroll.Specs.Features.Execution.ObsoleteStepsFeature_xUnit_Net60_New_CSharp

✅ Obsolete step should cause different behaviors based on configuration(obsoleteBehavior: "Error", succeededCount: "0", failedCount: "1", pendingCount: "0", exampleTags: [])
✅ Obsolete step should cause different behaviors based on configuration(obsoleteBehavior: "None", succeededCount: "1", failedCount: "0", pendingCount: "0", exampleTags: [])
✅ Obsolete step should cause different behaviors based on configuration(obsoleteBehavior: "Pending", succeededCount: "0", failedCount: "0", pendingCount: "1", exampleTags: [])
✅ Obsolete step should cause different behaviors based on configuration(obsoleteBehavior: "Warn", succeededCount: "1", failedCount: "0", pendingCount: "0", exampleTags: [])
✅ Obsolete step should have default warning message
✅ Obsolete step should use Obsolete Attribute message if present

✅ Reqnroll.Specs.Features.Execution.RuleBackgroundStepsAreAddedToScenariosBelongingToRulesFeature_xUnit_Net60_New_CSharp

✅ Should be able to execute backgrounds from multiple Rules
✅ Should be able to execute scenarios in Rules that have backgrounds

✅ Reqnroll.Specs.Features.Execution.ScenarioOutlinesFeature_xUnit_Net60_New_CSharp

✅ Should handle scenario outlines(case: "Normal testing", rowTest: "disabled", exampleTags: [])
✅ Should handle scenario outlines(case: "Row testing", rowTest: "enabled", exampleTags: [])
✅ Should support defining scenario outlines with the Scenario keyword

✅ Reqnroll.Specs.Features.Execution.ScopingStepDefinitionsFeature_xUnit_Net60_New_CSharp

✅ More scope matches have higher precedency
✅ No ambiguouity if the same method matches with multiple scopes
✅ Scoped matches have higher precedency
✅ Scopes can be conbined with AND
✅ Scopes can be conbined with OR
✅ Scoping step definitions of a binding class
✅ Scoping step definitions to features
✅ Scoping step definitions to scenarios
✅ Scoping step definitions to tags

❌ Reqnroll.Specs.Features.Execution.StepArgumentTransformationsFeature_xUnit_Net60_New_CSharp

✅ Multi-line text arguments can be converted
✅ Should be able to convert step arguments to simple .NET types
✅ Should be able to convert steps arguments to arbritrary class instances
❌ Should be able to convert when multiple converters are returning the same target type: non string and Table
	System.AggregateException : One or more errors occurred. (Expected trxFilePaths to contain at least 1 item(s) because at least one TRX file should be generated by the test run; these have been generated:
	, but found 0: {empty}.)
	---- Expected trxFilePaths to contain at least 1 item(s) because at least one TRX file should be generated by the test run; these have been generated:
	, but found 0: {empty}.
❌ Should be able to convert when multiple converters are returning the same target type: string and Table
	System.AggregateException : One or more errors occurred. (Expected trxFilePaths to contain at least 1 item(s) because at least one TRX file should be generated by the test run; these have been generated:
	, but found 0: {empty}.)
	---- Expected trxFilePaths to contain at least 1 item(s) because at least one TRX file should be generated by the test run; these have been generated:
	, but found 0: {empty}.

✅ Reqnroll.Specs.Features.Execution.StepDefinitionsCanBeMatchedBasedOnTheMethodNameWithoutRegexFeature_xUnit_Net60_New_CSharp

✅ F# method name can be used as a regex(case: "basic regex ops", method: "``I do something .* important``()", exampleTags: [])
✅ F# method name can be used as a regex(case: "non-regex method name", method: "When_I_do_something_really_important()", exampleTags: [])
✅ F# method name can be used as a regex(case: "parameter", method: "``I do something (.*) important``(howMuch: string)", exampleTags: [])
✅ F# method name can be used as a regex(case: "simple", method: "``I do something really important``()", exampleTags: [])
✅ Keyword prefix can be omitted
✅ Non-English keywords(case: "English prefix", keyword: "Angenommen", methodPrefix: "Given_", exampleTags: [])
✅ Non-English keywords(case: "Mixed keyword variants", keyword: "Gegeben sei", methodPrefix: "Angenommen_", exampleTags: [])
✅ Non-English keywords(case: "Multiple word licalized prefix", keyword: "Gegeben sei", methodPrefix: "Gegeben_sei_", exampleTags: [])
✅ Non-English keywords(case: "No prefix", keyword: "Angenommen", methodPrefix: "", exampleTags: [])
✅ Non-English keywords(case: "Single word licalized prefix", keyword: "Angenommen", methodPrefix: "Angenommen_", exampleTags: [])
✅ Parameterless steps
✅ Pascal case methods(case: "embedded param", method: "WhenIDoSomethingHOWMUCHImportant", exampleTags: [])
✅ Pascal case methods(case: "param with underscore", method: "WhenIDoSomething_HOWMUCH_Important", exampleTags: [])
✅ Steps with parameters referred by index
✅ Steps with parameters(case: "apostrophed", parameter: "'Joe'", exampleTags: [])
✅ Steps with parameters(case: "quoted", parameter: "\"Joe\"", exampleTags: [])
✅ Steps with parameters(case: "simple", parameter: "Joe", exampleTags: [])
✅ Supports all attributes(attribute: "Given", step: "Given", exampleTags: [])
✅ Supports all attributes(attribute: "StepDefinition", step: "Given", exampleTags: [])
✅ Supports all attributes(attribute: "Then", step: "Then", exampleTags: [])
✅ Supports all attributes(attribute: "When", step: "When", exampleTags: [])
✅ Supports punctuation

✅ Reqnroll.Specs.Features.Execution.TaggingScenarioOutlineExamplesFeature_xUnit_Net60_New_CSharp

✅ Examples can be ignored
✅ Examples can be tagged
✅ Scenario Outline Examples can be tagged

✅ Reqnroll.Specs.Features.Execution.TracingTestsFeature_xUnit_Net60_New_CSharp

✅ Preserves step keywords in trace
✅ ReflectionTypeLoaderException in a static constructor
✅ ReflectionTypeLoaderException in a step binding

✅ Reqnroll.Specs.Features.Hooks.ExecuteHooksFeature_xUnit_Net60_New_CSharp

✅ For ignored Features no Feature Hooks (and no Scenario hooks) are called(event: "AfterFeature", count: "0", exampleTags: [])
✅ For ignored Features no Feature Hooks (and no Scenario hooks) are called(event: "AfterScenario", count: "0", exampleTags: [])
✅ For ignored Features no Feature Hooks (and no Scenario hooks) are called(event: "AfterScenarioBlock", count: "0", exampleTags: [])
✅ For ignored Features no Feature Hooks (and no Scenario hooks) are called(event: "AfterStep", count: "0", exampleTags: [])
✅ For ignored Features no Feature Hooks (and no Scenario hooks) are called(event: "BeforeFeature", count: "0", exampleTags: [])
✅ For ignored Features no Feature Hooks (and no Scenario hooks) are called(event: "BeforeScenario", count: "0", exampleTags: [])
✅ For ignored Features no Feature Hooks (and no Scenario hooks) are called(event: "BeforeScenarioBlock", count: "0", exampleTags: [])
✅ For ignored Features no Feature Hooks (and no Scenario hooks) are called(event: "BeforeStep", count: "0", exampleTags: [])
✅ For ignored Scenarios no Scenario Hooks are called(event: "AfterScenario", count: "0", exampleTags: [])
✅ For ignored Scenarios no Scenario Hooks are called(event: "AfterScenarioBlock", count: "0", exampleTags: [])
✅ For ignored Scenarios no Scenario Hooks are called(event: "AfterStep", count: "0", exampleTags: [])
✅ For ignored Scenarios no Scenario Hooks are called(event: "BeforeScenario", count: "0", exampleTags: [])
✅ For ignored Scenarios no Scenario Hooks are called(event: "BeforeScenarioBlock", count: "0", exampleTags: [])
✅ For ignored Scenarios no Scenario Hooks are called(event: "BeforeStep", count: "0", exampleTags: [])
✅ Hooks should be executed if they take longer (>100ms)(event: "After", exampleTags: [])
✅ Hooks should be executed if they take longer (>100ms)(event: "AfterFeature", exampleTags: [])
✅ Hooks should be executed if they take longer (>100ms)(event: "AfterScenario", exampleTags: [])
✅ Hooks should be executed if they take longer (>100ms)(event: "AfterScenarioBlock", exampleTags: [])
✅ Hooks should be executed if they take longer (>100ms)(event: "AfterStep", exampleTags: [])
✅ Hooks should be executed if they take longer (>100ms)(event: "AfterTestRun", exampleTags: [])
✅ Hooks should be executed if they take longer (>100ms)(event: "Before", exampleTags: [])
✅ Hooks should be executed if they take longer (>100ms)(event: "BeforeFeature", exampleTags: [])
✅ Hooks should be executed if they take longer (>100ms)(event: "BeforeScenario", exampleTags: [])
✅ Hooks should be executed if they take longer (>100ms)(event: "BeforeScenarioBlock", exampleTags: [])
✅ Hooks should be executed if they take longer (>100ms)(event: "BeforeStep", exampleTags: [])
✅ Hooks should be executed if they take longer (>100ms)(event: "BeforeTestRun", exampleTags: [])
✅ Should execute Reqnroll events(event: "After", exampleTags: [])
✅ Should execute Reqnroll events(event: "AfterFeature", exampleTags: [])
✅ Should execute Reqnroll events(event: "AfterScenario", exampleTags: [])
✅ Should execute Reqnroll events(event: "AfterScenarioBlock", exampleTags: [])
✅ Should execute Reqnroll events(event: "AfterStep", exampleTags: [])
✅ Should execute Reqnroll events(event: "AfterTestRun", exampleTags: [])
✅ Should execute Reqnroll events(event: "Before", exampleTags: [])
✅ Should execute Reqnroll events(event: "BeforeFeature", exampleTags: [])
✅ Should execute Reqnroll events(event: "BeforeScenario", exampleTags: [])
✅ Should execute Reqnroll events(event: "BeforeScenarioBlock", exampleTags: [])
✅ Should execute Reqnroll events(event: "BeforeStep", exampleTags: [])
✅ Should execute Reqnroll events(event: "BeforeTestRun", exampleTags: [])
✅ Should execute the hooks according to their semantics(event: "After", count: "3", exampleTags: [])
✅ Should execute the hooks according to their semantics(event: "AfterFeature", count: "2", exampleTags: [])
✅ Should execute the hooks according to their semantics(event: "AfterScenario", count: "3", exampleTags: [])
✅ Should execute the hooks according to their semantics(event: "AfterScenarioBlock", count: "9", exampleTags: [])
✅ Should execute the hooks according to their semantics(event: "AfterStep", count: "18", exampleTags: [])
✅ Should execute the hooks according to their semantics(event: "AfterTestRun", count: "1", exampleTags: [])
✅ Should execute the hooks according to their semantics(event: "Before", count: "3", exampleTags: [])
✅ Should execute the hooks according to their semantics(event: "BeforeFeature", count: "2", exampleTags: [])
✅ Should execute the hooks according to their semantics(event: "BeforeScenario", count: "3", exampleTags: [])
✅ Should execute the hooks according to their semantics(event: "BeforeScenarioBlock", count: "9", exampleTags: [])
✅ Should execute the hooks according to their semantics(event: "BeforeStep", count: "18", exampleTags: [])
✅ Should execute the hooks according to their semantics(event: "BeforeTestRun", count: "1", exampleTags: [])

✅ Reqnroll.Specs.Features.Hooks.ExecuteHooksInSpecifiedOrderFeature_xUnit_Net60_New_CSharp

✅ Should execute 'Before*' Reqnroll events in the correct order, ie lowest numbers first(eventType: "After", exampleTags: [])
✅ Should execute 'Before*' Reqnroll events in the correct order, ie lowest numbers first(eventType: "AfterFeature", exampleTags: [])
✅ Should execute 'Before*' Reqnroll events in the correct order, ie lowest numbers first(eventType: "AfterScenario", exampleTags: [])
✅ Should execute 'Before*' Reqnroll events in the correct order, ie lowest numbers first(eventType: "AfterScenarioBlock", exampleTags: [])
✅ Should execute 'Before*' Reqnroll events in the correct order, ie lowest numbers first(eventType: "AfterStep", exampleTags: [])
✅ Should execute 'Before*' Reqnroll events in the correct order, ie lowest numbers first(eventType: "Before", exampleTags: [])
✅ Should execute 'Before*' Reqnroll events in the correct order, ie lowest numbers first(eventType: "BeforeFeature", exampleTags: [])
✅ Should execute 'Before*' Reqnroll events in the correct order, ie lowest numbers first(eventType: "BeforeScenario", exampleTags: [])
✅ Should execute 'Before*' Reqnroll events in the correct order, ie lowest numbers first(eventType: "BeforeScenarioBlock", exampleTags: [])
✅ Should execute 'Before*' Reqnroll events in the correct order, ie lowest numbers first(eventType: "BeforeStep", exampleTags: [])
✅ Should execute 'Before*' Reqnroll events in the correct order, ie lowest numbers first(eventType: "BeforeTestRun", exampleTags: [])

✅ Reqnroll.Specs.Features.Hooks.HookErrorHandlingFeature_xUnit_Net60_New_CSharp

✅ Should set the TestExecution status to TestError when a BeforeScenario hook throw
✅ Steps should be executed as skipped after a BeforeScenario hook throws
✅ Subsequent AfterScenario hooks are not executed after an error
✅ Subsequent BeforeScenario hooks are not executed after an error

✅ Reqnroll.Specs.Features.Hooks.InjectHookParametersFeature_xUnit_Net60_New_CSharp

✅ Should be able to access FeatureContext in BeforeFeature/AfterFeature hooks as parameter
✅ Should be able to access ScenarioContext in BeforeScenario/AfterScenario hooks as parameter
✅ Should be able to access thread level and global services in BeforeTestRun/AfterTestRun hooks as parameter

✅ Reqnroll.Specs.Features.Hooks.ScopedHooksFeature_xUnit_Net60_New_CSharp

✅ One hook is called once
✅ One hook scoped on HookAttribute with two tags are executed once
✅ One hook with two tags and [Scope] scoping are executed once
✅ Two hooks for different events are called once each
✅ Two hooks for the same event are called once each
✅ Two hooks for the same event with same name but in different classes are called once each

✅ Reqnroll.Specs.Features.MultipleSpecsProjectsFeature_xUnit_Net60_New_CSharp

✅ Two projects with the same unit test provider(buildTool: "dotnet build", exampleTags: [])
✅ Two projects with the same unit test provider(buildTool: "dotnet msbuild", exampleTags: [])

✅ Reqnroll.Specs.Features.Parser.RuleSupportFeature_xUnit_Net60_New_CSharp

✅ Should be able to execute a simple passing scenario

✅ Reqnroll.Specs.Features.RegressionTests.GH2571Feature_xUnit_Net60_New_CSharp

✅ GH2571

✅ Reqnroll.Specs.Features.SingleFileGeneratorChecksFeature_xUnit_Net60_New_CSharp

✅ Build Error when using the SingleFileGenerator and Reqnroll.Tools.MSBuild.Generator

✅ Reqnroll.Specs.Features.UnitTestProviderSpecific.XUnit.XUnitV2UnitTestProviderFeature_xUnit_Net60_New_CSharp

✅ Should be able to log custom messages
✅ Should be able to log custom messages using context injection
✅ Usage of collection attribute adds category
✅ Usage of collection attribute injects collection's TFixture

Annotations

Check failure on line 90 in Reqnroll.TestProjectGenerator/Reqnroll.TestProjectGenerator/VSTestExecutionDriver.cs

See this annotation in the file changed.

@github-actions github-actions / xUnit Specs

Reqnroll.Specs.Features.Execution.StepArgumentTransformationsFeature_xUnit_Net60_New_CSharp ► Should be able to convert when multiple converters are returning the same target type: non string and Table

Failed test found in:
  Tests/Reqnroll.Specs/TestResults/specs-xunit-results.trx
Error:
  System.AggregateException : One or more errors occurred. (Expected trxFilePaths to contain at least 1 item(s) because at least one TRX file should be generated by the test run; these have been generated:
  , but found 0: {empty}.)
  ---- Expected trxFilePaths to contain at least 1 item(s) because at least one TRX file should be generated by the test run; these have been generated:
  , but found 0: {empty}.
Raw output
System.AggregateException : One or more errors occurred. (Expected trxFilePaths to contain at least 1 item(s) because at least one TRX file should be generated by the test run; these have been generated:
, but found 0: {empty}.)
---- Expected trxFilePaths to contain at least 1 item(s) because at least one TRX file should be generated by the test run; these have been generated:
, but found 0: {empty}.
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
   at Reqnroll.TestProjectGenerator.VSTestExecutionDriver.ExecuteTests() in /home/runner/work/Reqnroll/Reqnroll/Reqnroll.TestProjectGenerator/Reqnroll.TestProjectGenerator/VSTestExecutionDriver.cs:line 90
   at Reqnroll.Specs.Drivers.ExecutionDriver.ExecuteTestsTimes(UInt32 times) in /home/runner/work/Reqnroll/Reqnroll/Tests/Reqnroll.Specs/Drivers/ExecutionDriver.cs:line 47
   at Reqnroll.Specs.Drivers.ExecutionDriver.ExecuteTests() in /home/runner/work/Reqnroll/Reqnroll/Tests/Reqnroll.Specs/Drivers/ExecutionDriver.cs:line 35
   at Reqnroll.Specs.StepDefinitions.ExecutionSteps.WhenIExecuteTheTests() in /home/runner/work/Reqnroll/Reqnroll/Tests/Reqnroll.Specs/StepDefinitions/ExecutionSteps.cs:line 21
--- End of stack trace from previous location ---
   at Reqnroll.Bindings.BindingInvoker.InvokeBindingAsync(IBinding binding, IContextManager contextManager, Object[] arguments, ITestTracer testTracer, DurationHolder durationHolder) in /home/runner/work/Reqnroll/Reqnroll/Reqnroll/Bindings/BindingInvoker.cs:line 84
   at Reqnroll.Infrastructure.TestExecutionEngine.ExecuteStepMatchAsync(BindingMatch match, Object[] arguments, DurationHolder durationHolder) in /home/runner/work/Reqnroll/Reqnroll/Reqnroll/Infrastructure/TestExecutionEngine.cs:line 571
   at Reqnroll.Infrastructure.TestExecutionEngine.ExecuteStepAsync(IContextManager contextManager, StepInstance stepInstance) in /home/runner/work/Reqnroll/Reqnroll/Reqnroll/Infrastructure/TestExecutionEngine.cs:line 482
   at Reqnroll.Infrastructure.TestExecutionEngine.OnAfterLastStepAsync() in /home/runner/work/Reqnroll/Reqnroll/Reqnroll/Infrastructure/TestExecutionEngine.cs:line 236
   at Reqnroll.TestRunner.CollectScenarioErrorsAsync() in /home/runner/work/Reqnroll/Reqnroll/Reqnroll/TestRunner.cs:line 60
   at Reqnroll.Specs.Features.Execution.StepArgumentTransformationsFeature_xUnit_Net60_New_CSharp.ScenarioCleanupAsync()
   at Reqnroll.Specs.Features.Execution.StepArgumentTransformationsFeature_xUnit_Net60_New_CSharp.ShouldBeAbleToConvertWhenMultipleConvertersAreReturningTheSameTargetTypeNonStringAndTable() in /home/runner/work/Reqnroll/Reqnroll/Tests/Reqnroll.Specs/Features/Execution/StepArgumentTransformations.feature:line 150
--- End of stack trace from previous location ---
----- Inner Stack Trace -----
   at FluentAssertions.Execution.XUnit2TestFramework.Throw(String message)
   at FluentAssertions.Execution.TestFrameworkProvider.Throw(String message)
   at FluentAssertions.Execution.DefaultAssertionStrategy.HandleFailure(String message)
   at FluentAssertions.Execution.AssertionScope.FailWith(Func`1 failReasonFunc)
   at FluentAssertions.Execution.GivenSelector`1.FailWith(String message, Object[] args)
   at FluentAssertions.Collections.GenericCollectionAssertions`3.HaveCountGreaterThanOrEqualTo(Int32 expected, String because, Object[] becauseArgs)
   at Reqnroll.TestProjectGenerator.VSTestExecutionDriver.ExecuteTestsInternalAsync(Func`3 runProcessAction) in /home/runner/work/Reqnroll/Reqnroll/Reqnroll.TestProjectGenerator/Reqnroll.TestProjectGenerator/VSTestExecutionDriver.cs:line 129

Check failure on line 90 in Reqnroll.TestProjectGenerator/Reqnroll.TestProjectGenerator/VSTestExecutionDriver.cs

See this annotation in the file changed.

@github-actions github-actions / xUnit Specs

Reqnroll.Specs.Features.Execution.StepArgumentTransformationsFeature_xUnit_Net60_New_CSharp ► Should be able to convert when multiple converters are returning the same target type: string and Table

Failed test found in:
  Tests/Reqnroll.Specs/TestResults/specs-xunit-results.trx
Error:
  System.AggregateException : One or more errors occurred. (Expected trxFilePaths to contain at least 1 item(s) because at least one TRX file should be generated by the test run; these have been generated:
  , but found 0: {empty}.)
  ---- Expected trxFilePaths to contain at least 1 item(s) because at least one TRX file should be generated by the test run; these have been generated:
  , but found 0: {empty}.
Raw output
System.AggregateException : One or more errors occurred. (Expected trxFilePaths to contain at least 1 item(s) because at least one TRX file should be generated by the test run; these have been generated:
, but found 0: {empty}.)
---- Expected trxFilePaths to contain at least 1 item(s) because at least one TRX file should be generated by the test run; these have been generated:
, but found 0: {empty}.
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
   at Reqnroll.TestProjectGenerator.VSTestExecutionDriver.ExecuteTests() in /home/runner/work/Reqnroll/Reqnroll/Reqnroll.TestProjectGenerator/Reqnroll.TestProjectGenerator/VSTestExecutionDriver.cs:line 90
   at Reqnroll.Specs.Drivers.ExecutionDriver.ExecuteTestsTimes(UInt32 times) in /home/runner/work/Reqnroll/Reqnroll/Tests/Reqnroll.Specs/Drivers/ExecutionDriver.cs:line 47
   at Reqnroll.Specs.Drivers.ExecutionDriver.ExecuteTests() in /home/runner/work/Reqnroll/Reqnroll/Tests/Reqnroll.Specs/Drivers/ExecutionDriver.cs:line 35
   at Reqnroll.Specs.StepDefinitions.ExecutionSteps.WhenIExecuteTheTests() in /home/runner/work/Reqnroll/Reqnroll/Tests/Reqnroll.Specs/StepDefinitions/ExecutionSteps.cs:line 21
--- End of stack trace from previous location ---
   at Reqnroll.Bindings.BindingInvoker.InvokeBindingAsync(IBinding binding, IContextManager contextManager, Object[] arguments, ITestTracer testTracer, DurationHolder durationHolder) in /home/runner/work/Reqnroll/Reqnroll/Reqnroll/Bindings/BindingInvoker.cs:line 84
   at Reqnroll.Infrastructure.TestExecutionEngine.ExecuteStepMatchAsync(BindingMatch match, Object[] arguments, DurationHolder durationHolder) in /home/runner/work/Reqnroll/Reqnroll/Reqnroll/Infrastructure/TestExecutionEngine.cs:line 571
   at Reqnroll.Infrastructure.TestExecutionEngine.ExecuteStepAsync(IContextManager contextManager, StepInstance stepInstance) in /home/runner/work/Reqnroll/Reqnroll/Reqnroll/Infrastructure/TestExecutionEngine.cs:line 482
   at Reqnroll.Infrastructure.TestExecutionEngine.OnAfterLastStepAsync() in /home/runner/work/Reqnroll/Reqnroll/Reqnroll/Infrastructure/TestExecutionEngine.cs:line 236
   at Reqnroll.TestRunner.CollectScenarioErrorsAsync() in /home/runner/work/Reqnroll/Reqnroll/Reqnroll/TestRunner.cs:line 60
   at Reqnroll.Specs.Features.Execution.StepArgumentTransformationsFeature_xUnit_Net60_New_CSharp.ScenarioCleanupAsync()
   at Reqnroll.Specs.Features.Execution.StepArgumentTransformationsFeature_xUnit_Net60_New_CSharp.ShouldBeAbleToConvertWhenMultipleConvertersAreReturningTheSameTargetTypeStringAndTable() in /home/runner/work/Reqnroll/Reqnroll/Tests/Reqnroll.Specs/Features/Execution/StepArgumentTransformations.feature:line 104
--- End of stack trace from previous location ---
----- Inner Stack Trace -----
   at FluentAssertions.Execution.XUnit2TestFramework.Throw(String message)
   at FluentAssertions.Execution.TestFrameworkProvider.Throw(String message)
   at FluentAssertions.Execution.DefaultAssertionStrategy.HandleFailure(String message)
   at FluentAssertions.Execution.AssertionScope.FailWith(Func`1 failReasonFunc)
   at FluentAssertions.Execution.GivenSelector`1.FailWith(String message, Object[] args)
   at FluentAssertions.Execution.GivenSelector`1.FailWith(String message, Func`2[] args)
   at FluentAssertions.Collections.GenericCollectionAssertions`3.HaveCountGreaterThanOrEqualTo(Int32 expected, String because, Object[] becauseArgs)
   at FluentAssertions.Collections.GenericCollectionAssertions`3.HaveCountGreaterOrEqualTo(Int32 expected, String because, Object[] becauseArgs)
   at Reqnroll.TestProjectGenerator.VSTestExecutionDriver.ExecuteTestsInternalAsync(Func`3 runProcessAction) in /home/runner/work/Reqnroll/Reqnroll/Reqnroll.TestProjectGenerator/Reqnroll.TestProjectGenerator/VSTestExecutionDriver.cs:line 129