/// <summary> /// Creates test cases for a single row of data. By default, returns a single instance of <see cref="XunitTestCase"/> /// with the data row inside of it. /// </summary> /// <param name="discoveryOptions">The discovery options to be used.</param> /// <param name="testMethod">The test method the test cases belong to.</param> /// <param name="theoryAttribute">The theory attribute attached to the test method.</param> /// <param name="dataRow">The row of data for this test case.</param> /// <returns>The test cases</returns> protected virtual IEnumerable <IXunitTestCase> CreateTestCasesForDataRow( _ITestFrameworkDiscoveryOptions discoveryOptions, _ITestMethod testMethod, _IAttributeInfo theoryAttribute, object?[] dataRow) { var testCase = new XunitPreEnumeratedTheoryTestCase( DiagnosticMessageSink, discoveryOptions.MethodDisplayOrDefault(), discoveryOptions.MethodDisplayOptionsOrDefault(), testMethod, dataRow ); return(new[] { testCase }); }
/// <summary> /// Creates test cases for a single row of data. By default, returns a single instance of <see cref="XunitTestCase"/> /// with the data row inside of it. /// </summary> /// <param name="discoveryOptions">The discovery options to be used.</param> /// <param name="testMethod">The test method the test cases belong to.</param> /// <param name="theoryAttribute">The theory attribute attached to the test method.</param> /// <param name="displayName">The optional display name for the test</param> /// <param name="traits">The traits associated with the test case.</param> /// <param name="dataRow">The row of data for this test case.</param> /// <returns>The test cases</returns> protected virtual ValueTask <IReadOnlyCollection <IXunitTestCase> > CreateTestCasesForDataRow( _ITestFrameworkDiscoveryOptions discoveryOptions, _ITestMethod testMethod, _IAttributeInfo theoryAttribute, string?displayName, Dictionary <string, List <string> >?traits, object?[] dataRow) { var testCase = new XunitPreEnumeratedTheoryTestCase( discoveryOptions.MethodDisplayOrDefault(), discoveryOptions.MethodDisplayOptionsOrDefault(), testMethod, dataRow, traits: traits, displayName: displayName ); return(new(new[] { testCase })); }