mirror of
https://github.com/Smaug123/unofficial-nunit-runner
synced 2025-10-05 01:18:39 +00:00
Model TRX reports (#40)
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -10,4 +10,5 @@ result
|
||||
.analyzerpackages/
|
||||
analysis.sarif
|
||||
.direnv/
|
||||
TestResults/
|
||||
Generated*.fs
|
||||
|
30
TestRunner.Lib/Result.fs
Normal file
30
TestRunner.Lib/Result.fs
Normal file
@@ -0,0 +1,30 @@
|
||||
namespace TestRunner
|
||||
|
||||
[<RequireQualifiedAccess>]
|
||||
module internal Result =
|
||||
|
||||
let inline getError<'r, 'e> (r : Result<'r, 'e>) : 'e option =
|
||||
match r with
|
||||
| Ok _ -> None
|
||||
| Error e -> Some e
|
||||
|
||||
let inline get<'r, 'e> (r : Result<'r, 'e>) : 'r option =
|
||||
match r with
|
||||
| Ok r -> Some r
|
||||
| Error _ -> None
|
||||
|
||||
let allOkOrError<'o, 'e> (a : Result<'o, 'e> list) : Result<'o list, 'o list * 'e list> =
|
||||
let oks = ResizeArray ()
|
||||
let errors = ResizeArray ()
|
||||
|
||||
for i in a do
|
||||
match i with
|
||||
| Error e -> errors.Add e
|
||||
| Ok o -> oks.Add o
|
||||
|
||||
let oks = oks |> Seq.toList
|
||||
|
||||
if errors.Count = 0 then
|
||||
Ok oks
|
||||
else
|
||||
Error (oks, Seq.toList errors)
|
@@ -253,6 +253,224 @@ TestRunner.TestMemberSuccess.Ok [static property]: [read-only] TestRunner.TestMe
|
||||
TestRunner.TestMemberSuccess.Tag [property]: [read-only] int
|
||||
TestRunner.TestProgress inherit obj
|
||||
TestRunner.TestProgress.toStderr [static method]: unit -> TestRunner.ITestProgress
|
||||
TestRunner.TrxCounters inherit obj, implements TestRunner.TrxCounters System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxCounters System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
TestRunner.TrxCounters..ctor [constructor]: (System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32)
|
||||
TestRunner.TrxCounters.Aborted [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.Completed [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.Disconnected [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.Errors [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.Executed [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.Failed [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.get_Aborted [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_Completed [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_Disconnected [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_Errors [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_Executed [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_Failed [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_Inconclusive [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_InProgress [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_NotExecuted [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_NotRunnable [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_Passed [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_PassedButRunAborted [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_Pending [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_Timeout [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_Total [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_Warning [method]: unit -> System.UInt32
|
||||
TestRunner.TrxCounters.get_Zero [static method]: unit -> TestRunner.TrxCounters
|
||||
TestRunner.TrxCounters.Inconclusive [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.InProgress [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.NotExecuted [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.NotRunnable [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.Passed [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.PassedButRunAborted [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.Pending [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.Timeout [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.Total [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.Warning [property]: [read-only] System.UInt32
|
||||
TestRunner.TrxCounters.Zero [static property]: [read-only] TestRunner.TrxCounters
|
||||
TestRunner.TrxDeployment inherit obj, implements TestRunner.TrxDeployment System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxDeployment System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
TestRunner.TrxDeployment..ctor [constructor]: string
|
||||
TestRunner.TrxDeployment.get_RunDeploymentRoot [method]: unit -> string
|
||||
TestRunner.TrxDeployment.RunDeploymentRoot [property]: [read-only] string
|
||||
TestRunner.TrxErrorInfo inherit obj, implements TestRunner.TrxErrorInfo System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxErrorInfo System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
TestRunner.TrxErrorInfo..ctor [constructor]: (string option, string option)
|
||||
TestRunner.TrxErrorInfo.get_Message [method]: unit -> string option
|
||||
TestRunner.TrxErrorInfo.get_StackTrace [method]: unit -> string option
|
||||
TestRunner.TrxErrorInfo.Message [property]: [read-only] string option
|
||||
TestRunner.TrxErrorInfo.StackTrace [property]: [read-only] string option
|
||||
TestRunner.TrxExecution inherit obj, implements TestRunner.TrxExecution System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxExecution System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
TestRunner.TrxExecution..ctor [constructor]: System.Guid
|
||||
TestRunner.TrxExecution.get_Id [method]: unit -> System.Guid
|
||||
TestRunner.TrxExecution.Id [property]: [read-only] System.Guid
|
||||
TestRunner.TrxOutcome inherit obj, implements TestRunner.TrxOutcome System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxOutcome System.IComparable, System.IComparable, System.Collections.IStructuralComparable - union type with 3 cases
|
||||
TestRunner.TrxOutcome+Tags inherit obj
|
||||
TestRunner.TrxOutcome+Tags.Completed [static field]: int = 0
|
||||
TestRunner.TrxOutcome+Tags.Failed [static field]: int = 2
|
||||
TestRunner.TrxOutcome+Tags.Warning [static field]: int = 1
|
||||
TestRunner.TrxOutcome.Completed [static property]: [read-only] TestRunner.TrxOutcome
|
||||
TestRunner.TrxOutcome.Failed [static property]: [read-only] TestRunner.TrxOutcome
|
||||
TestRunner.TrxOutcome.get_Completed [static method]: unit -> TestRunner.TrxOutcome
|
||||
TestRunner.TrxOutcome.get_Failed [static method]: unit -> TestRunner.TrxOutcome
|
||||
TestRunner.TrxOutcome.get_IsCompleted [method]: unit -> bool
|
||||
TestRunner.TrxOutcome.get_IsFailed [method]: unit -> bool
|
||||
TestRunner.TrxOutcome.get_IsWarning [method]: unit -> bool
|
||||
TestRunner.TrxOutcome.get_Tag [method]: unit -> int
|
||||
TestRunner.TrxOutcome.get_Warning [static method]: unit -> TestRunner.TrxOutcome
|
||||
TestRunner.TrxOutcome.IsCompleted [property]: [read-only] bool
|
||||
TestRunner.TrxOutcome.IsFailed [property]: [read-only] bool
|
||||
TestRunner.TrxOutcome.IsWarning [property]: [read-only] bool
|
||||
TestRunner.TrxOutcome.Parse [static method]: string -> TestRunner.TrxOutcome option
|
||||
TestRunner.TrxOutcome.Tag [property]: [read-only] int
|
||||
TestRunner.TrxOutcome.Warning [static property]: [read-only] TestRunner.TrxOutcome
|
||||
TestRunner.TrxOutput inherit obj, implements TestRunner.TrxOutput System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxOutput System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
TestRunner.TrxOutput..ctor [constructor]: (string option, TestRunner.TrxErrorInfo option)
|
||||
TestRunner.TrxOutput.ErrorInfo [property]: [read-only] TestRunner.TrxErrorInfo option
|
||||
TestRunner.TrxOutput.get_ErrorInfo [method]: unit -> TestRunner.TrxErrorInfo option
|
||||
TestRunner.TrxOutput.get_StdOut [method]: unit -> string option
|
||||
TestRunner.TrxOutput.StdOut [property]: [read-only] string option
|
||||
TestRunner.TrxReport inherit obj, implements TestRunner.TrxReport System.IEquatable, System.Collections.IStructuralEquatable
|
||||
TestRunner.TrxReport..ctor [constructor]: (System.Guid, string, TestRunner.TrxReportTimes, TestRunner.TrxTestSettings, TestRunner.TrxUnitTestResult list, TestRunner.TrxUnitTest list, TestRunner.TrxTestEntry list, TestRunner.TrxTestListEntry list, TestRunner.TrxResultsSummary)
|
||||
TestRunner.TrxReport.get_Id [method]: unit -> System.Guid
|
||||
TestRunner.TrxReport.get_Name [method]: unit -> string
|
||||
TestRunner.TrxReport.get_Results [method]: unit -> TestRunner.TrxUnitTestResult list
|
||||
TestRunner.TrxReport.get_ResultsSummary [method]: unit -> TestRunner.TrxResultsSummary
|
||||
TestRunner.TrxReport.get_Settings [method]: unit -> TestRunner.TrxTestSettings
|
||||
TestRunner.TrxReport.get_TestDefinitions [method]: unit -> TestRunner.TrxUnitTest list
|
||||
TestRunner.TrxReport.get_TestEntries [method]: unit -> TestRunner.TrxTestEntry list
|
||||
TestRunner.TrxReport.get_TestLists [method]: unit -> TestRunner.TrxTestListEntry list
|
||||
TestRunner.TrxReport.get_Times [method]: unit -> TestRunner.TrxReportTimes
|
||||
TestRunner.TrxReport.Id [property]: [read-only] System.Guid
|
||||
TestRunner.TrxReport.Name [property]: [read-only] string
|
||||
TestRunner.TrxReport.Results [property]: [read-only] TestRunner.TrxUnitTestResult list
|
||||
TestRunner.TrxReport.ResultsSummary [property]: [read-only] TestRunner.TrxResultsSummary
|
||||
TestRunner.TrxReport.Settings [property]: [read-only] TestRunner.TrxTestSettings
|
||||
TestRunner.TrxReport.TestDefinitions [property]: [read-only] TestRunner.TrxUnitTest list
|
||||
TestRunner.TrxReport.TestEntries [property]: [read-only] TestRunner.TrxTestEntry list
|
||||
TestRunner.TrxReport.TestLists [property]: [read-only] TestRunner.TrxTestListEntry list
|
||||
TestRunner.TrxReport.Times [property]: [read-only] TestRunner.TrxReportTimes
|
||||
TestRunner.TrxReportModule inherit obj
|
||||
TestRunner.TrxReportModule.parse [static method]: string -> Microsoft.FSharp.Core.FSharpResult<TestRunner.TrxReport, string>
|
||||
TestRunner.TrxReportTimes inherit obj, implements TestRunner.TrxReportTimes System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxReportTimes System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
TestRunner.TrxReportTimes..ctor [constructor]: (System.DateTimeOffset, System.DateTimeOffset, System.DateTimeOffset, System.DateTimeOffset)
|
||||
TestRunner.TrxReportTimes.Creation [property]: [read-only] System.DateTimeOffset
|
||||
TestRunner.TrxReportTimes.Finish [property]: [read-only] System.DateTimeOffset
|
||||
TestRunner.TrxReportTimes.get_Creation [method]: unit -> System.DateTimeOffset
|
||||
TestRunner.TrxReportTimes.get_Finish [method]: unit -> System.DateTimeOffset
|
||||
TestRunner.TrxReportTimes.get_Queuing [method]: unit -> System.DateTimeOffset
|
||||
TestRunner.TrxReportTimes.get_Start [method]: unit -> System.DateTimeOffset
|
||||
TestRunner.TrxReportTimes.Queuing [property]: [read-only] System.DateTimeOffset
|
||||
TestRunner.TrxReportTimes.Start [property]: [read-only] System.DateTimeOffset
|
||||
TestRunner.TrxResultsSummary inherit obj, implements TestRunner.TrxResultsSummary System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxResultsSummary System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
TestRunner.TrxResultsSummary..ctor [constructor]: (TestRunner.TrxOutcome, TestRunner.TrxCounters, TestRunner.TrxOutput, TestRunner.TrxRunInfo list)
|
||||
TestRunner.TrxResultsSummary.Counters [property]: [read-only] TestRunner.TrxCounters
|
||||
TestRunner.TrxResultsSummary.get_Counters [method]: unit -> TestRunner.TrxCounters
|
||||
TestRunner.TrxResultsSummary.get_Outcome [method]: unit -> TestRunner.TrxOutcome
|
||||
TestRunner.TrxResultsSummary.get_Output [method]: unit -> TestRunner.TrxOutput
|
||||
TestRunner.TrxResultsSummary.get_RunInfos [method]: unit -> TestRunner.TrxRunInfo list
|
||||
TestRunner.TrxResultsSummary.Outcome [property]: [read-only] TestRunner.TrxOutcome
|
||||
TestRunner.TrxResultsSummary.Output [property]: [read-only] TestRunner.TrxOutput
|
||||
TestRunner.TrxResultsSummary.RunInfos [property]: [read-only] TestRunner.TrxRunInfo list
|
||||
TestRunner.TrxRunInfo inherit obj, implements TestRunner.TrxRunInfo System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxRunInfo System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
TestRunner.TrxRunInfo..ctor [constructor]: (string, TestRunner.TrxOutcome, System.DateTimeOffset, string)
|
||||
TestRunner.TrxRunInfo.ComputerName [property]: [read-only] string
|
||||
TestRunner.TrxRunInfo.get_ComputerName [method]: unit -> string
|
||||
TestRunner.TrxRunInfo.get_Outcome [method]: unit -> TestRunner.TrxOutcome
|
||||
TestRunner.TrxRunInfo.get_Text [method]: unit -> string
|
||||
TestRunner.TrxRunInfo.get_Timestamp [method]: unit -> System.DateTimeOffset
|
||||
TestRunner.TrxRunInfo.Outcome [property]: [read-only] TestRunner.TrxOutcome
|
||||
TestRunner.TrxRunInfo.Text [property]: [read-only] string
|
||||
TestRunner.TrxRunInfo.Timestamp [property]: [read-only] System.DateTimeOffset
|
||||
TestRunner.TrxTestEntry inherit obj, implements TestRunner.TrxTestEntry System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxTestEntry System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
TestRunner.TrxTestEntry..ctor [constructor]: (System.Guid, System.Guid, System.Guid)
|
||||
TestRunner.TrxTestEntry.ExecutionId [property]: [read-only] System.Guid
|
||||
TestRunner.TrxTestEntry.get_ExecutionId [method]: unit -> System.Guid
|
||||
TestRunner.TrxTestEntry.get_TestId [method]: unit -> System.Guid
|
||||
TestRunner.TrxTestEntry.get_TestListId [method]: unit -> System.Guid
|
||||
TestRunner.TrxTestEntry.TestId [property]: [read-only] System.Guid
|
||||
TestRunner.TrxTestEntry.TestListId [property]: [read-only] System.Guid
|
||||
TestRunner.TrxTestListEntry inherit obj, implements TestRunner.TrxTestListEntry System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxTestListEntry System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
TestRunner.TrxTestListEntry..ctor [constructor]: (string, System.Guid)
|
||||
TestRunner.TrxTestListEntry.get_Id [method]: unit -> System.Guid
|
||||
TestRunner.TrxTestListEntry.get_Name [method]: unit -> string
|
||||
TestRunner.TrxTestListEntry.Id [property]: [read-only] System.Guid
|
||||
TestRunner.TrxTestListEntry.Name [property]: [read-only] string
|
||||
TestRunner.TrxTestMethod inherit obj, implements TestRunner.TrxTestMethod System.IEquatable, System.Collections.IStructuralEquatable
|
||||
TestRunner.TrxTestMethod..ctor [constructor]: (string, System.Uri, string, string)
|
||||
TestRunner.TrxTestMethod.AdapterTypeName [property]: [read-only] System.Uri
|
||||
TestRunner.TrxTestMethod.ClassName [property]: [read-only] string
|
||||
TestRunner.TrxTestMethod.CodeBase [property]: [read-only] string
|
||||
TestRunner.TrxTestMethod.get_AdapterTypeName [method]: unit -> System.Uri
|
||||
TestRunner.TrxTestMethod.get_ClassName [method]: unit -> string
|
||||
TestRunner.TrxTestMethod.get_CodeBase [method]: unit -> string
|
||||
TestRunner.TrxTestMethod.get_Name [method]: unit -> string
|
||||
TestRunner.TrxTestMethod.Name [property]: [read-only] string
|
||||
TestRunner.TrxTestOutcome inherit obj, implements TestRunner.TrxTestOutcome System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxTestOutcome System.IComparable, System.IComparable, System.Collections.IStructuralComparable - union type with 3 cases
|
||||
TestRunner.TrxTestOutcome+Tags inherit obj
|
||||
TestRunner.TrxTestOutcome+Tags.Failed [static field]: int = 1
|
||||
TestRunner.TrxTestOutcome+Tags.NotExecuted [static field]: int = 2
|
||||
TestRunner.TrxTestOutcome+Tags.Passed [static field]: int = 0
|
||||
TestRunner.TrxTestOutcome.Failed [static property]: [read-only] TestRunner.TrxTestOutcome
|
||||
TestRunner.TrxTestOutcome.get_Failed [static method]: unit -> TestRunner.TrxTestOutcome
|
||||
TestRunner.TrxTestOutcome.get_IsFailed [method]: unit -> bool
|
||||
TestRunner.TrxTestOutcome.get_IsNotExecuted [method]: unit -> bool
|
||||
TestRunner.TrxTestOutcome.get_IsPassed [method]: unit -> bool
|
||||
TestRunner.TrxTestOutcome.get_NotExecuted [static method]: unit -> TestRunner.TrxTestOutcome
|
||||
TestRunner.TrxTestOutcome.get_Passed [static method]: unit -> TestRunner.TrxTestOutcome
|
||||
TestRunner.TrxTestOutcome.get_Tag [method]: unit -> int
|
||||
TestRunner.TrxTestOutcome.IsFailed [property]: [read-only] bool
|
||||
TestRunner.TrxTestOutcome.IsNotExecuted [property]: [read-only] bool
|
||||
TestRunner.TrxTestOutcome.IsPassed [property]: [read-only] bool
|
||||
TestRunner.TrxTestOutcome.NotExecuted [static property]: [read-only] TestRunner.TrxTestOutcome
|
||||
TestRunner.TrxTestOutcome.Parse [static method]: string -> TestRunner.TrxTestOutcome option
|
||||
TestRunner.TrxTestOutcome.Passed [static property]: [read-only] TestRunner.TrxTestOutcome
|
||||
TestRunner.TrxTestOutcome.Tag [property]: [read-only] int
|
||||
TestRunner.TrxTestSettings inherit obj, implements TestRunner.TrxTestSettings System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxTestSettings System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
TestRunner.TrxTestSettings..ctor [constructor]: (string, System.Guid, TestRunner.TrxDeployment)
|
||||
TestRunner.TrxTestSettings.Deployment [property]: [read-only] TestRunner.TrxDeployment
|
||||
TestRunner.TrxTestSettings.get_Deployment [method]: unit -> TestRunner.TrxDeployment
|
||||
TestRunner.TrxTestSettings.get_Id [method]: unit -> System.Guid
|
||||
TestRunner.TrxTestSettings.get_Name [method]: unit -> string
|
||||
TestRunner.TrxTestSettings.Id [property]: [read-only] System.Guid
|
||||
TestRunner.TrxTestSettings.Name [property]: [read-only] string
|
||||
TestRunner.TrxUnitTest inherit obj, implements TestRunner.TrxUnitTest System.IEquatable, System.Collections.IStructuralEquatable
|
||||
TestRunner.TrxUnitTest..ctor [constructor]: (string, string, System.Guid, TestRunner.TrxExecution, TestRunner.TrxTestMethod)
|
||||
TestRunner.TrxUnitTest.Execution [property]: [read-only] TestRunner.TrxExecution
|
||||
TestRunner.TrxUnitTest.get_Execution [method]: unit -> TestRunner.TrxExecution
|
||||
TestRunner.TrxUnitTest.get_Id [method]: unit -> System.Guid
|
||||
TestRunner.TrxUnitTest.get_Name [method]: unit -> string
|
||||
TestRunner.TrxUnitTest.get_Storage [method]: unit -> string
|
||||
TestRunner.TrxUnitTest.get_TestMethod [method]: unit -> TestRunner.TrxTestMethod
|
||||
TestRunner.TrxUnitTest.Id [property]: [read-only] System.Guid
|
||||
TestRunner.TrxUnitTest.Name [property]: [read-only] string
|
||||
TestRunner.TrxUnitTest.Storage [property]: [read-only] string
|
||||
TestRunner.TrxUnitTest.TestMethod [property]: [read-only] TestRunner.TrxTestMethod
|
||||
TestRunner.TrxUnitTestResult inherit obj, implements TestRunner.TrxUnitTestResult System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxUnitTestResult System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
TestRunner.TrxUnitTestResult..ctor [constructor]: (System.Guid, System.Guid, string, string, System.TimeSpan, System.DateTimeOffset, System.DateTimeOffset, System.Guid, TestRunner.TrxTestOutcome, System.Guid, string, TestRunner.TrxOutput option)
|
||||
TestRunner.TrxUnitTestResult.ComputerName [property]: [read-only] string
|
||||
TestRunner.TrxUnitTestResult.Duration [property]: [read-only] System.TimeSpan
|
||||
TestRunner.TrxUnitTestResult.EndTime [property]: [read-only] System.DateTimeOffset
|
||||
TestRunner.TrxUnitTestResult.ExecutionId [property]: [read-only] System.Guid
|
||||
TestRunner.TrxUnitTestResult.get_ComputerName [method]: unit -> string
|
||||
TestRunner.TrxUnitTestResult.get_Duration [method]: unit -> System.TimeSpan
|
||||
TestRunner.TrxUnitTestResult.get_EndTime [method]: unit -> System.DateTimeOffset
|
||||
TestRunner.TrxUnitTestResult.get_ExecutionId [method]: unit -> System.Guid
|
||||
TestRunner.TrxUnitTestResult.get_Outcome [method]: unit -> TestRunner.TrxTestOutcome
|
||||
TestRunner.TrxUnitTestResult.get_Output [method]: unit -> TestRunner.TrxOutput option
|
||||
TestRunner.TrxUnitTestResult.get_RelativeResultsDirectory [method]: unit -> string
|
||||
TestRunner.TrxUnitTestResult.get_StartTime [method]: unit -> System.DateTimeOffset
|
||||
TestRunner.TrxUnitTestResult.get_TestId [method]: unit -> System.Guid
|
||||
TestRunner.TrxUnitTestResult.get_TestListId [method]: unit -> System.Guid
|
||||
TestRunner.TrxUnitTestResult.get_TestName [method]: unit -> string
|
||||
TestRunner.TrxUnitTestResult.get_TestType [method]: unit -> System.Guid
|
||||
TestRunner.TrxUnitTestResult.Outcome [property]: [read-only] TestRunner.TrxTestOutcome
|
||||
TestRunner.TrxUnitTestResult.Output [property]: [read-only] TestRunner.TrxOutput option
|
||||
TestRunner.TrxUnitTestResult.RelativeResultsDirectory [property]: [read-only] string
|
||||
TestRunner.TrxUnitTestResult.StartTime [property]: [read-only] System.DateTimeOffset
|
||||
TestRunner.TrxUnitTestResult.TestId [property]: [read-only] System.Guid
|
||||
TestRunner.TrxUnitTestResult.TestListId [property]: [read-only] System.Guid
|
||||
TestRunner.TrxUnitTestResult.TestName [property]: [read-only] string
|
||||
TestRunner.TrxUnitTestResult.TestType [property]: [read-only] System.Guid
|
||||
TestRunner.UserMethodFailure inherit obj, implements TestRunner.UserMethodFailure System.IEquatable, System.Collections.IStructuralEquatable - union type with 2 cases
|
||||
TestRunner.UserMethodFailure+ReturnedNonUnit inherit TestRunner.UserMethodFailure
|
||||
TestRunner.UserMethodFailure+ReturnedNonUnit.get_name [method]: unit -> string
|
||||
|
@@ -20,11 +20,14 @@
|
||||
<Compile Include="AssemblyInfo.fs" />
|
||||
<Compile Include="Array.fs" />
|
||||
<Compile Include="List.fs" />
|
||||
<Compile Include="Result.fs" />
|
||||
<Compile Include="Domain.fs" />
|
||||
<Compile Include="Filter.fs" />
|
||||
<Compile Include="SingleTestMethod.fs" />
|
||||
<Compile Include="TestProgress.fs" />
|
||||
<Compile Include="TestFixture.fs" />
|
||||
<Compile Include="Xml.fs" />
|
||||
<Compile Include="TrxReport.fs" />
|
||||
<None Include="..\README.md">
|
||||
<Pack>True</Pack>
|
||||
<PackagePath>\</PackagePath>
|
||||
|
1277
TestRunner.Lib/TrxReport.fs
Normal file
1277
TestRunner.Lib/TrxReport.fs
Normal file
File diff suppressed because it is too large
Load Diff
47
TestRunner.Lib/Xml.fs
Normal file
47
TestRunner.Lib/Xml.fs
Normal file
@@ -0,0 +1,47 @@
|
||||
namespace TestRunner
|
||||
|
||||
open System.Xml
|
||||
|
||||
[<AutoOpen>]
|
||||
module internal XmlPatterns =
|
||||
[<return : Struct>]
|
||||
let (|NodeWithChildren|_|) (expectedName : string) (node : XmlNode) : unit voption =
|
||||
if node.Name = expectedName && node.HasChildNodes then
|
||||
ValueSome ()
|
||||
else
|
||||
ValueNone
|
||||
|
||||
let (|NodeWithNamedChild|_|) (childName : string) (node : XmlNode) : XmlNode option =
|
||||
if node.HasChildNodes then
|
||||
node.ChildNodes
|
||||
|> Seq.cast<XmlNode>
|
||||
|> Seq.tryFind (fun n -> n.Name = childName)
|
||||
else
|
||||
None
|
||||
|
||||
let (|OneChildNode|_|) (expectedName : string) (node : XmlNode) : XmlNode option =
|
||||
if node.Name = expectedName && node.HasChildNodes && node.ChildNodes.Count = 1 then
|
||||
Some node.FirstChild
|
||||
else
|
||||
None
|
||||
|
||||
let (|NoChildrenNode|_|) (node : XmlNode) : string option =
|
||||
if node.HasChildNodes then None else Some node.Value
|
||||
|
||||
[<return : Struct>]
|
||||
let (|NamedNoChildren|_|) (name : string) (node : XmlNode) : unit voption =
|
||||
if node.HasChildNodes then ValueNone
|
||||
elif node.Name = name then ValueSome ()
|
||||
else ValueNone
|
||||
|
||||
[<return : Struct>]
|
||||
let (|Int64|_|) (s : string) : int64 voption =
|
||||
match System.Int64.TryParse s with
|
||||
| false, _ -> ValueNone
|
||||
| true, v -> ValueSome v
|
||||
|
||||
[<return : Struct>]
|
||||
let (|Int|_|) (s : string) : int voption =
|
||||
match System.Int32.TryParse s with
|
||||
| false, _ -> ValueNone
|
||||
| true, v -> ValueSome v
|
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "0.4",
|
||||
"version": "0.5",
|
||||
"publicReleaseRefSpec": null,
|
||||
"pathFilters": [
|
||||
"./",
|
||||
|
20
TestRunner/TestRunner.Test/EmbeddedResource.fs
Normal file
20
TestRunner/TestRunner.Test/EmbeddedResource.fs
Normal file
@@ -0,0 +1,20 @@
|
||||
namespace TestRunner.Test
|
||||
|
||||
open System
|
||||
open System.IO
|
||||
|
||||
[<RequireQualifiedAccess>]
|
||||
module internal EmbeddedResource =
|
||||
type Dummy = class end
|
||||
|
||||
let read (name : string) : string =
|
||||
let assy = typeof<Dummy>.Assembly
|
||||
|
||||
let manifestName =
|
||||
assy.GetManifestResourceNames ()
|
||||
|> Seq.filter (fun s -> s.EndsWith (name, StringComparison.Ordinal))
|
||||
|> Seq.exactlyOne
|
||||
|
||||
use s = assy.GetManifestResourceStream manifestName
|
||||
use reader = new StreamReader (s)
|
||||
reader.ReadToEnd ()
|
536
TestRunner/TestRunner.Test/Example1.trx
Normal file
536
TestRunner/TestRunner.Test/Example1.trx
Normal file
@@ -0,0 +1,536 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TestRun id="ccbc0600-fe62-46d9-a3d9-6551da338a3e" name="@Patricks-MacBook-Pro 2024-06-06 22:51:47" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010">
|
||||
<Times creation="2024-06-06T22:51:47.0155230+01:00" queuing="2024-06-06T22:51:47.0155230+01:00" start="2024-06-06T22:51:46.6031940+01:00" finish="2024-06-06T22:51:47.1574390+01:00" />
|
||||
<TestSettings name="default" id="542f16c8-664f-40a7-9829-0d13fc32f19f">
|
||||
<Deployment runDeploymentRoot="_Patricks-MacBook-Pro_2024-06-06_22_51_47" />
|
||||
</TestSettings>
|
||||
<Results>
|
||||
<UnitTestResult executionId="0f224761-6bbd-43f2-9559-1327816450d9" testId="099ab0d7-e616-e3ed-18e1-8238c2e316c4" testName="Doc examples("FullyQualifiedName!=MSTestNamespace.UnitTest1.TestMethod1",Not (Equal (FullyQualifiedName, String "MSTestNamespace.UnitTest1.TestMethod1")))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000330" startTime="2024-06-06T22:51:46.9663480+01:00" endTime="2024-06-06T22:51:46.9663800+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="0f224761-6bbd-43f2-9559-1327816450d9" />
|
||||
<UnitTestResult executionId="a382138f-5b4d-4c86-adb0-b6238efacdd4" testId="00c1848d-a05e-9a06-2781-1fa11ce95eb9" testName="Doc examples, refined("FullyQualifiedName!~IntegrationTests",Not (FullyQualifiedName (Contains "IntegrationTests")))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000100" startTime="2024-06-06T22:51:46.9679160+01:00" endTime="2024-06-06T22:51:46.9679260+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="a382138f-5b4d-4c86-adb0-b6238efacdd4" />
|
||||
<UnitTestResult executionId="ba434804-1ada-466d-8f9b-1b4b694193cc" testId="df13938a-7ab7-ffa5-3032-b0360d3ac165" testName="Doc examples, refined("FullyQualifiedName~UnitTest1|TestCategory=CategoryA",Or (FullyQualifiedName (Contains "UnitTest1"), TestCategory (Exact "CategoryA")))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000080" startTime="2024-06-06T22:51:46.9679770+01:00" endTime="2024-06-06T22:51:46.9679850+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="ba434804-1ada-466d-8f9b-1b4b694193cc" />
|
||||
<UnitTestResult executionId="0405711d-fa10-4175-9e60-2f2df1e95226" testId="ce1a6a79-d333-550c-9440-42aa00b8a965" testName="Doc examples("(Name~MyClass) | (Name~MyClass2)",Or (Contains (Name, String "MyClass"), Contains (Name, String "MyClass2")))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0191880" startTime="2024-06-06T22:51:46.9462310+01:00" endTime="2024-06-06T22:51:46.9653920+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="0405711d-fa10-4175-9e60-2f2df1e95226" />
|
||||
<UnitTestResult executionId="a884d69f-5783-4d8f-be3b-81310a903e3a" testId="4074d63b-6752-050c-966d-d5216c2b1c71" testName="Doc examples, refined("(Name~MyClass) | (Name~MyClass2)",Or (Name (Contains "MyClass"), Name (Contains "MyClass2")))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0006660" startTime="2024-06-06T22:51:46.9671560+01:00" endTime="2024-06-06T22:51:46.9678220+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="a884d69f-5783-4d8f-be3b-81310a903e3a" />
|
||||
<UnitTestResult executionId="663a073f-f01c-400e-bffe-dd8d68355b83" testId="1bd5500a-baad-f37f-76eb-3905c00e9884" testName="Ensure API surface has not been modified" computerName="Patricks-MacBook-Pro" duration="00:00:00.0329610" startTime="2024-06-06T22:51:47.0636370+01:00" endTime="2024-06-06T22:51:47.0965980+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Failed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="663a073f-f01c-400e-bffe-dd8d68355b83">
|
||||
<Output>
|
||||
<ErrorInfo>
|
||||
<Message>System.Exception : Unexpected difference.
|
||||
|
||||
The following 205 member(s) have been added (i.e. are NOT present in the baseline):
|
||||
+ TestRunner.TrxCounters inherit obj, implements TestRunner.TrxCounters System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxCounters System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
+ TestRunner.TrxCounters..ctor [constructor]: (System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32, System.UInt32)
|
||||
+ TestRunner.TrxCounters.Aborted [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.Completed [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.Disconnected [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.Errors [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.Executed [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.Failed [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.InProgress [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.Inconclusive [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.NotExecuted [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.NotRunnable [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.Passed [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.PassedButRunAborted [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.Pending [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.Timeout [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.Total [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.Warning [property]: [read-only] System.UInt32
|
||||
+ TestRunner.TrxCounters.Zero [static property]: [read-only] TestRunner.TrxCounters
|
||||
+ TestRunner.TrxCounters.get_Aborted [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_Completed [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_Disconnected [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_Errors [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_Executed [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_Failed [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_InProgress [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_Inconclusive [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_NotExecuted [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_NotRunnable [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_Passed [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_PassedButRunAborted [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_Pending [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_Timeout [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_Total [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_Warning [method]: unit -> System.UInt32
|
||||
+ TestRunner.TrxCounters.get_Zero [static method]: unit -> TestRunner.TrxCounters
|
||||
+ TestRunner.TrxDeployment inherit obj, implements TestRunner.TrxDeployment System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxDeployment System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
+ TestRunner.TrxDeployment..ctor [constructor]: string
|
||||
+ TestRunner.TrxDeployment.RunDeploymentRoot [property]: [read-only] string
|
||||
+ TestRunner.TrxDeployment.get_RunDeploymentRoot [method]: unit -> string
|
||||
+ TestRunner.TrxErrorInfo inherit obj, implements TestRunner.TrxErrorInfo System.IEquatable, System.Collections.IStructuralEquatable
|
||||
+ TestRunner.TrxErrorInfo..ctor [constructor]: (string, System.Diagnostics.StackTrace option)
|
||||
+ TestRunner.TrxErrorInfo.Message [property]: [read-only] string
|
||||
+ TestRunner.TrxErrorInfo.StackTrace [property]: [read-only] System.Diagnostics.StackTrace option
|
||||
+ TestRunner.TrxErrorInfo.get_Message [method]: unit -> string
|
||||
+ TestRunner.TrxErrorInfo.get_StackTrace [method]: unit -> System.Diagnostics.StackTrace option
|
||||
+ TestRunner.TrxOutcome inherit obj, implements TestRunner.TrxOutcome System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxOutcome System.IComparable, System.IComparable, System.Collections.IStructuralComparable - union type with 3 cases
|
||||
+ TestRunner.TrxOutcome+Tags inherit obj
|
||||
+ TestRunner.TrxOutcome+Tags.Completed [static field]: int = 0
|
||||
+ TestRunner.TrxOutcome+Tags.Failed [static field]: int = 2
|
||||
+ TestRunner.TrxOutcome+Tags.Warning [static field]: int = 1
|
||||
+ TestRunner.TrxOutcome.Completed [static property]: [read-only] TestRunner.TrxOutcome
|
||||
+ TestRunner.TrxOutcome.Failed [static property]: [read-only] TestRunner.TrxOutcome
|
||||
+ TestRunner.TrxOutcome.IsCompleted [property]: [read-only] bool
|
||||
+ TestRunner.TrxOutcome.IsFailed [property]: [read-only] bool
|
||||
+ TestRunner.TrxOutcome.IsWarning [property]: [read-only] bool
|
||||
+ TestRunner.TrxOutcome.Tag [property]: [read-only] int
|
||||
+ TestRunner.TrxOutcome.Warning [static property]: [read-only] TestRunner.TrxOutcome
|
||||
+ TestRunner.TrxOutcome.get_Completed [static method]: unit -> TestRunner.TrxOutcome
|
||||
+ TestRunner.TrxOutcome.get_Failed [static method]: unit -> TestRunner.TrxOutcome
|
||||
+ TestRunner.TrxOutcome.get_IsCompleted [method]: unit -> bool
|
||||
+ TestRunner.TrxOutcome.get_IsFailed [method]: unit -> bool
|
||||
+ TestRunner.TrxOutcome.get_IsWarning [method]: unit -> bool
|
||||
+ TestRunner.TrxOutcome.get_Tag [method]: unit -> int
|
||||
+ TestRunner.TrxOutcome.get_Warning [static method]: unit -> TestRunner.TrxOutcome
|
||||
+ TestRunner.TrxOutput inherit obj, implements TestRunner.TrxOutput System.IEquatable, System.Collections.IStructuralEquatable
|
||||
+ TestRunner.TrxOutput..ctor [constructor]: (string option, TestRunner.TrxErrorInfo option)
|
||||
+ TestRunner.TrxOutput.ErrorInfo [property]: [read-only] TestRunner.TrxErrorInfo option
|
||||
+ TestRunner.TrxOutput.StdOut [property]: [read-only] string option
|
||||
+ TestRunner.TrxOutput.get_ErrorInfo [method]: unit -> TestRunner.TrxErrorInfo option
|
||||
+ TestRunner.TrxOutput.get_StdOut [method]: unit -> string option
|
||||
+ TestRunner.TrxReport inherit obj, implements TestRunner.TrxReport System.IEquatable, System.Collections.IStructuralEquatable
|
||||
+ TestRunner.TrxReport..ctor [constructor]: (System.Guid, string, TestRunner.TrxReportTimes, TestRunner.TrxTestSettings, TestRunner.TrxUnitTestResult list, TestRunner.TrxUnitTest list, TestRunner.TrxTestEntry list, TestRunner.TrxTestList list, TestRunner.TrxResultsSummary)
|
||||
+ TestRunner.TrxReport.Id [property]: [read-only] System.Guid
|
||||
+ TestRunner.TrxReport.Name [property]: [read-only] string
|
||||
+ TestRunner.TrxReport.Results [property]: [read-only] TestRunner.TrxUnitTestResult list
|
||||
+ TestRunner.TrxReport.ResultsSummary [property]: [read-only] TestRunner.TrxResultsSummary
|
||||
+ TestRunner.TrxReport.Settings [property]: [read-only] TestRunner.TrxTestSettings
|
||||
+ TestRunner.TrxReport.TestDefinitions [property]: [read-only] TestRunner.TrxUnitTest list
|
||||
+ TestRunner.TrxReport.TestEntries [property]: [read-only] TestRunner.TrxTestEntry list
|
||||
+ TestRunner.TrxReport.TestLists [property]: [read-only] TestRunner.TrxTestList list
|
||||
+ TestRunner.TrxReport.Times [property]: [read-only] TestRunner.TrxReportTimes
|
||||
+ TestRunner.TrxReport.get_Id [method]: unit -> System.Guid
|
||||
+ TestRunner.TrxReport.get_Name [method]: unit -> string
|
||||
+ TestRunner.TrxReport.get_Results [method]: unit -> TestRunner.TrxUnitTestResult list
|
||||
+ TestRunner.TrxReport.get_ResultsSummary [method]: unit -> TestRunner.TrxResultsSummary
|
||||
+ TestRunner.TrxReport.get_Settings [method]: unit -> TestRunner.TrxTestSettings
|
||||
+ TestRunner.TrxReport.get_TestDefinitions [method]: unit -> TestRunner.TrxUnitTest list
|
||||
+ TestRunner.TrxReport.get_TestEntries [method]: unit -> TestRunner.TrxTestEntry list
|
||||
+ TestRunner.TrxReport.get_TestLists [method]: unit -> TestRunner.TrxTestList list
|
||||
+ TestRunner.TrxReport.get_Times [method]: unit -> TestRunner.TrxReportTimes
|
||||
+ TestRunner.TrxReportTimes inherit obj, implements TestRunner.TrxReportTimes System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxReportTimes System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
+ TestRunner.TrxReportTimes..ctor [constructor]: (System.DateTimeOffset, System.DateTimeOffset, System.DateTimeOffset, System.DateTimeOffset)
|
||||
+ TestRunner.TrxReportTimes.Creation [property]: [read-only] System.DateTimeOffset
|
||||
+ TestRunner.TrxReportTimes.Finish [property]: [read-only] System.DateTimeOffset
|
||||
+ TestRunner.TrxReportTimes.Queuing [property]: [read-only] System.DateTimeOffset
|
||||
+ TestRunner.TrxReportTimes.Start [property]: [read-only] System.DateTimeOffset
|
||||
+ TestRunner.TrxReportTimes.get_Creation [method]: unit -> System.DateTimeOffset
|
||||
+ TestRunner.TrxReportTimes.get_Finish [method]: unit -> System.DateTimeOffset
|
||||
+ TestRunner.TrxReportTimes.get_Queuing [method]: unit -> System.DateTimeOffset
|
||||
+ TestRunner.TrxReportTimes.get_Start [method]: unit -> System.DateTimeOffset
|
||||
+ TestRunner.TrxResultsSummary inherit obj, implements TestRunner.TrxResultsSummary System.IEquatable, System.Collections.IStructuralEquatable
|
||||
+ TestRunner.TrxResultsSummary..ctor [constructor]: (TestRunner.TrxOutcome, TestRunner.TrxCounters, TestRunner.TrxOutput, TestRunner.TrxRunInfo list)
|
||||
+ TestRunner.TrxResultsSummary.Counters [property]: [read-only] TestRunner.TrxCounters
|
||||
+ TestRunner.TrxResultsSummary.Outcome [property]: [read-only] TestRunner.TrxOutcome
|
||||
+ TestRunner.TrxResultsSummary.Output [property]: [read-only] TestRunner.TrxOutput
|
||||
+ TestRunner.TrxResultsSummary.RunInfos [property]: [read-only] TestRunner.TrxRunInfo list
|
||||
+ TestRunner.TrxResultsSummary.get_Counters [method]: unit -> TestRunner.TrxCounters
|
||||
+ TestRunner.TrxResultsSummary.get_Outcome [method]: unit -> TestRunner.TrxOutcome
|
||||
+ TestRunner.TrxResultsSummary.get_Output [method]: unit -> TestRunner.TrxOutput
|
||||
+ TestRunner.TrxResultsSummary.get_RunInfos [method]: unit -> TestRunner.TrxRunInfo list
|
||||
+ TestRunner.TrxRunInfo inherit obj, implements TestRunner.TrxRunInfo System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxRunInfo System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
+ TestRunner.TrxRunInfo..ctor [constructor]: (string, TestRunner.TrxOutcome, System.DateTimeOffset, string)
|
||||
+ TestRunner.TrxRunInfo.ComputerName [property]: [read-only] string
|
||||
+ TestRunner.TrxRunInfo.Outcome [property]: [read-only] TestRunner.TrxOutcome
|
||||
+ TestRunner.TrxRunInfo.Text [property]: [read-only] string
|
||||
+ TestRunner.TrxRunInfo.Timestamp [property]: [read-only] System.DateTimeOffset
|
||||
+ TestRunner.TrxRunInfo.get_ComputerName [method]: unit -> string
|
||||
+ TestRunner.TrxRunInfo.get_Outcome [method]: unit -> TestRunner.TrxOutcome
|
||||
+ TestRunner.TrxRunInfo.get_Text [method]: unit -> string
|
||||
+ TestRunner.TrxRunInfo.get_Timestamp [method]: unit -> System.DateTimeOffset
|
||||
+ TestRunner.TrxTestEntry inherit obj, implements TestRunner.TrxTestEntry System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxTestEntry System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
+ TestRunner.TrxTestEntry..ctor [constructor]: (System.Guid, System.Guid, System.Guid)
|
||||
+ TestRunner.TrxTestEntry.ExecutionId [property]: [read-only] System.Guid
|
||||
+ TestRunner.TrxTestEntry.TestId [property]: [read-only] System.Guid
|
||||
+ TestRunner.TrxTestEntry.TestListId [property]: [read-only] System.Guid
|
||||
+ TestRunner.TrxTestEntry.get_ExecutionId [method]: unit -> System.Guid
|
||||
+ TestRunner.TrxTestEntry.get_TestId [method]: unit -> System.Guid
|
||||
+ TestRunner.TrxTestEntry.get_TestListId [method]: unit -> System.Guid
|
||||
+ TestRunner.TrxTestList inherit obj, implements TestRunner.TrxTestList System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxTestList System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
+ TestRunner.TrxTestList..ctor [constructor]: (string, System.Guid)
|
||||
+ TestRunner.TrxTestList.Id [property]: [read-only] System.Guid
|
||||
+ TestRunner.TrxTestList.Name [property]: [read-only] string
|
||||
+ TestRunner.TrxTestList.get_Id [method]: unit -> System.Guid
|
||||
+ TestRunner.TrxTestList.get_Name [method]: unit -> string
|
||||
+ TestRunner.TrxTestMethod inherit obj, implements TestRunner.TrxTestMethod System.IEquatable, System.Collections.IStructuralEquatable
|
||||
+ TestRunner.TrxTestMethod..ctor [constructor]: (System.IO.FileInfo, System.Uri, string, string)
|
||||
+ TestRunner.TrxTestMethod.AdapterTypeName [property]: [read-only] System.Uri
|
||||
+ TestRunner.TrxTestMethod.ClassName [property]: [read-only] string
|
||||
+ TestRunner.TrxTestMethod.CodeBase [property]: [read-only] System.IO.FileInfo
|
||||
+ TestRunner.TrxTestMethod.Name [property]: [read-only] string
|
||||
+ TestRunner.TrxTestMethod.get_AdapterTypeName [method]: unit -> System.Uri
|
||||
+ TestRunner.TrxTestMethod.get_ClassName [method]: unit -> string
|
||||
+ TestRunner.TrxTestMethod.get_CodeBase [method]: unit -> System.IO.FileInfo
|
||||
+ TestRunner.TrxTestMethod.get_Name [method]: unit -> string
|
||||
+ TestRunner.TrxTestOutcome inherit obj, implements TestRunner.TrxTestOutcome System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxTestOutcome System.IComparable, System.IComparable, System.Collections.IStructuralComparable - union type with 2 cases
|
||||
+ TestRunner.TrxTestOutcome+Tags inherit obj
|
||||
+ TestRunner.TrxTestOutcome+Tags.Failed [static field]: int = 1
|
||||
+ TestRunner.TrxTestOutcome+Tags.Passed [static field]: int = 0
|
||||
+ TestRunner.TrxTestOutcome.Failed [static property]: [read-only] TestRunner.TrxTestOutcome
|
||||
+ TestRunner.TrxTestOutcome.IsFailed [property]: [read-only] bool
|
||||
+ TestRunner.TrxTestOutcome.IsPassed [property]: [read-only] bool
|
||||
+ TestRunner.TrxTestOutcome.Passed [static property]: [read-only] TestRunner.TrxTestOutcome
|
||||
+ TestRunner.TrxTestOutcome.Tag [property]: [read-only] int
|
||||
+ TestRunner.TrxTestOutcome.get_Failed [static method]: unit -> TestRunner.TrxTestOutcome
|
||||
+ TestRunner.TrxTestOutcome.get_IsFailed [method]: unit -> bool
|
||||
+ TestRunner.TrxTestOutcome.get_IsPassed [method]: unit -> bool
|
||||
+ TestRunner.TrxTestOutcome.get_Passed [static method]: unit -> TestRunner.TrxTestOutcome
|
||||
+ TestRunner.TrxTestOutcome.get_Tag [method]: unit -> int
|
||||
+ TestRunner.TrxTestSettings inherit obj, implements TestRunner.TrxTestSettings System.IEquatable, System.Collections.IStructuralEquatable, TestRunner.TrxTestSettings System.IComparable, System.IComparable, System.Collections.IStructuralComparable
|
||||
+ TestRunner.TrxTestSettings..ctor [constructor]: (string, System.Guid, TestRunner.TrxDeployment)
|
||||
+ TestRunner.TrxTestSettings.Deployment [property]: [read-only] TestRunner.TrxDeployment
|
||||
+ TestRunner.TrxTestSettings.Id [property]: [read-only] System.Guid
|
||||
+ TestRunner.TrxTestSettings.Name [property]: [read-only] string
|
||||
+ TestRunner.TrxTestSettings.get_Deployment [method]: unit -> TestRunner.TrxDeployment
|
||||
+ TestRunner.TrxTestSettings.get_Id [method]: unit -> System.Guid
|
||||
+ TestRunner.TrxTestSettings.get_Name [method]: unit -> string
|
||||
+ TestRunner.TrxUnitTest inherit obj, implements TestRunner.TrxUnitTest System.IEquatable, System.Collections.IStructuralEquatable
|
||||
+ TestRunner.TrxUnitTest..ctor [constructor]: (string, System.IO.FileInfo, System.Guid, System.Guid, TestRunner.TrxTestMethod)
|
||||
+ TestRunner.TrxUnitTest.ExecutionId [property]: [read-only] System.Guid
|
||||
+ TestRunner.TrxUnitTest.Id [property]: [read-only] System.Guid
|
||||
+ TestRunner.TrxUnitTest.Name [property]: [read-only] string
|
||||
+ TestRunner.TrxUnitTest.Storage [property]: [read-only] System.IO.FileInfo
|
||||
+ TestRunner.TrxUnitTest.TestMethod [property]: [read-only] TestRunner.TrxTestMethod
|
||||
+ TestRunner.TrxUnitTest.get_ExecutionId [method]: unit -> System.Guid
|
||||
+ TestRunner.TrxUnitTest.get_Id [method]: unit -> System.Guid
|
||||
+ TestRunner.TrxUnitTest.get_Name [method]: unit -> string
|
||||
+ TestRunner.TrxUnitTest.get_Storage [method]: unit -> System.IO.FileInfo
|
||||
+ TestRunner.TrxUnitTest.get_TestMethod [method]: unit -> TestRunner.TrxTestMethod
|
||||
+ TestRunner.TrxUnitTestResult inherit obj, implements TestRunner.TrxUnitTestResult System.IEquatable, System.Collections.IStructuralEquatable
|
||||
+ TestRunner.TrxUnitTestResult..ctor [constructor]: (System.Guid, System.Guid, string, string, System.TimeSpan, System.DateTimeOffset, System.DateTimeOffset, System.Guid, TestRunner.TrxTestOutcome, System.Guid, System.Guid, TestRunner.TrxOutput option)
|
||||
+ TestRunner.TrxUnitTestResult.ComputerName [property]: [read-only] string
|
||||
+ TestRunner.TrxUnitTestResult.Duration [property]: [read-only] System.TimeSpan
|
||||
+ TestRunner.TrxUnitTestResult.EndTime [property]: [read-only] System.DateTimeOffset
|
||||
+ TestRunner.TrxUnitTestResult.ExecutionId [property]: [read-only] System.Guid
|
||||
+ TestRunner.TrxUnitTestResult.Outcome [property]: [read-only] TestRunner.TrxTestOutcome
|
||||
+ TestRunner.TrxUnitTestResult.Output [property]: [read-only] TestRunner.TrxOutput option
|
||||
+ TestRunner.TrxUnitTestResult.RelativeResultsDirectory [property]: [read-only] System.Guid
|
||||
+ TestRunner.TrxUnitTestResult.StartTime [property]: [read-only] System.DateTimeOffset
|
||||
+ TestRunner.TrxUnitTestResult.TestId [property]: [read-only] System.Guid
|
||||
+ TestRunner.TrxUnitTestResult.TestListId [property]: [read-only] System.Guid
|
||||
+ TestRunner.TrxUnitTestResult.TestName [property]: [read-only] string
|
||||
+ TestRunner.TrxUnitTestResult.TestType [property]: [read-only] System.Guid
|
||||
+ TestRunner.TrxUnitTestResult.get_ComputerName [method]: unit -> string
|
||||
+ TestRunner.TrxUnitTestResult.get_Duration [method]: unit -> System.TimeSpan
|
||||
+ TestRunner.TrxUnitTestResult.get_EndTime [method]: unit -> System.DateTimeOffset
|
||||
+ TestRunner.TrxUnitTestResult.get_ExecutionId [method]: unit -> System.Guid
|
||||
+ TestRunner.TrxUnitTestResult.get_Outcome [method]: unit -> TestRunner.TrxTestOutcome
|
||||
+ TestRunner.TrxUnitTestResult.get_Output [method]: unit -> TestRunner.TrxOutput option
|
||||
+ TestRunner.TrxUnitTestResult.get_RelativeResultsDirectory [method]: unit -> System.Guid
|
||||
+ TestRunner.TrxUnitTestResult.get_StartTime [method]: unit -> System.DateTimeOffset
|
||||
+ TestRunner.TrxUnitTestResult.get_TestId [method]: unit -> System.Guid
|
||||
+ TestRunner.TrxUnitTestResult.get_TestListId [method]: unit -> System.Guid
|
||||
+ TestRunner.TrxUnitTestResult.get_TestName [method]: unit -> string
|
||||
+ TestRunner.TrxUnitTestResult.get_TestType [method]: unit -> System.Guid
|
||||
</Message>
|
||||
<StackTrace> at Microsoft.FSharp.Core.PrintfModule.PrintFormatToStringThenFail@1448.Invoke(String message)
|
||||
at ApiSurface.SurfaceComparisonModule.AssertIdentical(SurfaceComparison _arg1) in /_//ApiSurface/SurfaceComparison.fs:line 41
|
||||
at TestRunner.Test.TestSurface.Ensure API surface has not been modified() in /Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/TestSurface.fs:line 12
|
||||
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
|
||||
at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr)
|
||||
</StackTrace>
|
||||
</ErrorInfo>
|
||||
</Output>
|
||||
</UnitTestResult>
|
||||
<UnitTestResult executionId="a943407b-8ba2-4565-a7e4-85caf4802524" testId="ec7f1a3e-77d9-4c85-40b6-a2be454fc7d7" testName="Update API surface" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000050" startTime="2024-06-06T22:51:47.1180690+01:00" endTime="2024-06-06T22:51:47.1180740+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="a943407b-8ba2-4565-a7e4-85caf4802524" />
|
||||
<UnitTestResult executionId="d50faae3-4ba3-4f2b-9ec8-028698e51b75" testId="a8381c2d-9147-f725-faa5-3e652b00175b" testName="Ensure version is monotonic" computerName="Patricks-MacBook-Pro" duration="00:00:00.0001350" startTime="2024-06-06T22:51:47.1179300+01:00" endTime="2024-06-06T22:51:47.1180650+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="d50faae3-4ba3-4f2b-9ec8-028698e51b75">
|
||||
<Output>
|
||||
<StdOut>Not yet published</StdOut>
|
||||
<ErrorInfo>
|
||||
<Message>Not yet published</Message>
|
||||
</ErrorInfo>
|
||||
</Output>
|
||||
</UnitTestResult>
|
||||
<UnitTestResult executionId="0348ed3b-c625-44fd-a9b8-26402367db2e" testId="8f20f899-4287-617e-b654-b7db066494fa" testName="Ensure public API is fully documented" computerName="Patricks-MacBook-Pro" duration="00:00:00.0212370" startTime="2024-06-06T22:51:47.0966500+01:00" endTime="2024-06-06T22:51:47.1178870+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Failed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="0348ed3b-c625-44fd-a9b8-26402367db2e">
|
||||
<Output>
|
||||
<ErrorInfo>
|
||||
<Message>System.Exception : Unexpected difference.
|
||||
|
||||
The following 3 member(s) are only in 'TestRunner.Lib.xml':
|
||||
+ T:TestRunner.FilterModule
|
||||
+ T:TestRunner.SingleTestMethodModule
|
||||
+ T:TestRunner.TestFixtureModule
|
||||
|
||||
The following 74 member(s) are only in 'TestRunner.Lib.dll':
|
||||
- T:TestRunner.TrxCounters
|
||||
- P:TestRunner.TrxCounters.Aborted
|
||||
- P:TestRunner.TrxCounters.Completed
|
||||
- P:TestRunner.TrxCounters.Disconnected
|
||||
- P:TestRunner.TrxCounters.Errors
|
||||
- P:TestRunner.TrxCounters.Executed
|
||||
- P:TestRunner.TrxCounters.Failed
|
||||
- P:TestRunner.TrxCounters.InProgress
|
||||
- P:TestRunner.TrxCounters.Inconclusive
|
||||
- P:TestRunner.TrxCounters.NotExecuted
|
||||
- P:TestRunner.TrxCounters.NotRunnable
|
||||
- P:TestRunner.TrxCounters.Passed
|
||||
- P:TestRunner.TrxCounters.PassedButRunAborted
|
||||
- P:TestRunner.TrxCounters.Pending
|
||||
- P:TestRunner.TrxCounters.Timeout
|
||||
- P:TestRunner.TrxCounters.Total
|
||||
- P:TestRunner.TrxCounters.Warning
|
||||
- T:TestRunner.TrxDeployment
|
||||
- P:TestRunner.TrxDeployment.RunDeploymentRoot
|
||||
- T:TestRunner.TrxOutcome
|
||||
- T:TestRunner.TrxOutcome.Completed
|
||||
- T:TestRunner.TrxOutcome.Failed
|
||||
- T:TestRunner.TrxOutcome.Warning
|
||||
- T:TestRunner.TrxReport
|
||||
- P:TestRunner.TrxReport.Id
|
||||
- P:TestRunner.TrxReport.Name
|
||||
- P:TestRunner.TrxReport.Results
|
||||
- P:TestRunner.TrxReport.ResultsSummary
|
||||
- P:TestRunner.TrxReport.Settings
|
||||
- P:TestRunner.TrxReport.TestDefinitions
|
||||
- P:TestRunner.TrxReport.TestEntries
|
||||
- P:TestRunner.TrxReport.TestLists
|
||||
- P:TestRunner.TrxReport.Times
|
||||
- P:TestRunner.TrxReportTimes.Queuing
|
||||
- T:TestRunner.TrxResultsSummary
|
||||
- P:TestRunner.TrxResultsSummary.Counters
|
||||
- P:TestRunner.TrxResultsSummary.Outcome
|
||||
- P:TestRunner.TrxResultsSummary.Output
|
||||
- P:TestRunner.TrxResultsSummary.RunInfos
|
||||
- P:TestRunner.TrxRunInfo.Outcome
|
||||
- T:TestRunner.TrxTestEntry
|
||||
- P:TestRunner.TrxTestEntry.ExecutionId
|
||||
- P:TestRunner.TrxTestEntry.TestId
|
||||
- P:TestRunner.TrxTestEntry.TestListId
|
||||
- T:TestRunner.TrxTestList
|
||||
- P:TestRunner.TrxTestList.Id
|
||||
- P:TestRunner.TrxTestList.Name
|
||||
- T:TestRunner.TrxTestMethod
|
||||
- P:TestRunner.TrxTestMethod.AdapterTypeName
|
||||
- P:TestRunner.TrxTestMethod.ClassName
|
||||
- P:TestRunner.TrxTestMethod.CodeBase
|
||||
- P:TestRunner.TrxTestMethod.Name
|
||||
- T:TestRunner.TrxTestSettings
|
||||
- P:TestRunner.TrxTestSettings.Deployment
|
||||
- P:TestRunner.TrxTestSettings.Id
|
||||
- P:TestRunner.TrxTestSettings.Name
|
||||
- T:TestRunner.TrxUnitTest
|
||||
- P:TestRunner.TrxUnitTest.ExecutionId
|
||||
- P:TestRunner.TrxUnitTest.Id
|
||||
- P:TestRunner.TrxUnitTest.Name
|
||||
- P:TestRunner.TrxUnitTest.Storage
|
||||
- P:TestRunner.TrxUnitTest.TestMethod
|
||||
- T:TestRunner.TrxUnitTestResult
|
||||
- P:TestRunner.TrxUnitTestResult.ComputerName
|
||||
- P:TestRunner.TrxUnitTestResult.Duration
|
||||
- P:TestRunner.TrxUnitTestResult.EndTime
|
||||
- P:TestRunner.TrxUnitTestResult.ExecutionId
|
||||
- P:TestRunner.TrxUnitTestResult.Outcome
|
||||
- P:TestRunner.TrxUnitTestResult.Output
|
||||
- P:TestRunner.TrxUnitTestResult.RelativeResultsDirectory
|
||||
- P:TestRunner.TrxUnitTestResult.StartTime
|
||||
- P:TestRunner.TrxUnitTestResult.TestId
|
||||
- P:TestRunner.TrxUnitTestResult.TestListId
|
||||
- P:TestRunner.TrxUnitTestResult.TestType
|
||||
</Message>
|
||||
<StackTrace> at Microsoft.FSharp.Core.PrintfModule.PrintFormatToStringThenFail@1448.Invoke(String message)
|
||||
at ApiSurface.SurfaceComparisonModule.assertNoneRemoved$cont@48(Boolean shouldPrint, SurfaceComparison comparison, Unit unitVar) in /_//ApiSurface/SurfaceComparison.fs:line 70
|
||||
at TestRunner.Test.TestSurface.Ensure public API is fully documented() in /Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/TestSurface.fs:line 20
|
||||
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
|
||||
at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr)
|
||||
</StackTrace>
|
||||
</ErrorInfo>
|
||||
</Output>
|
||||
</UnitTestResult>
|
||||
<UnitTestResult executionId="589fdef2-d601-4104-9319-27982a0b03c2" testId="54f7e9c6-642e-4408-18f7-2f88d592e478" testName="Doc examples, refined("FullyQualifiedName!=MSTestNamespace.UnitTest1.TestMethod1",Not (FullyQualifiedName (Exact "MSTestNamespace.UnitTest1.TestMethod1")))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000070" startTime="2024-06-06T22:51:46.9679560+01:00" endTime="2024-06-06T22:51:46.9679630+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="589fdef2-d601-4104-9319-27982a0b03c2" />
|
||||
<UnitTestResult executionId="5af71b23-3a6c-4087-b4af-786ea6f24a23" testId="94df793c-aa9b-7761-e8cc-fd71193cb683" testName="Doc examples, refined("(FullyQualifiedName~UnitTest1&TestCategory=CategoryA)|TestCategory=1",Or
 (And
 (FullyQualifiedName (Contains "UnitTest1"),
 TestCategory (Exact "CategoryA")), TestCategory (Exact "1")))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000120" startTime="2024-06-06T22:51:46.9679970+01:00" endTime="2024-06-06T22:51:46.9680090+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="5af71b23-3a6c-4087-b4af-786ea6f24a23" />
|
||||
<UnitTestResult executionId="3acdf7b0-79c4-4dff-8a42-2ac89723a6dd" testId="a103bfc3-83f7-770a-d0fe-9d706c1eb3e4" testName="Doc examples("FullyQualifiedName!~IntegrationTests",Not (Contains (FullyQualifiedName, String "IntegrationTests")))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000520" startTime="2024-06-06T22:51:46.9662360+01:00" endTime="2024-06-06T22:51:46.9662880+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="3acdf7b0-79c4-4dff-8a42-2ac89723a6dd" />
|
||||
<UnitTestResult executionId="68443f21-a319-4b3b-a4d9-b3753f5d8523" testId="6cd03969-ef9a-6d86-a2e6-2fd8b0849fe4" testName="Doc examples, refined("FullyQualifiedName~xyz",FullyQualifiedName (Contains "xyz"))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000080" startTime="2024-06-06T22:51:46.9679060+01:00" endTime="2024-06-06T22:51:46.9679140+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="68443f21-a319-4b3b-a4d9-b3753f5d8523" />
|
||||
<UnitTestResult executionId="111d7ced-8dda-49b9-a13f-227d4a7e5321" testId="f6679088-93ed-d80b-8f88-7079d9e37967" testName="Doc examples("FullyQualifiedName~UnitTest1&TestCategory=CategoryA",And
 (Contains (FullyQualifiedName, String "UnitTest1"),
 Equal (TestCategory, String "CategoryA")))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000320" startTime="2024-06-06T22:51:46.9664610+01:00" endTime="2024-06-06T22:51:46.9664930+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="111d7ced-8dda-49b9-a13f-227d4a7e5321" />
|
||||
<UnitTestResult executionId="d1467ce7-89db-466d-8bce-d12aac12d8bc" testId="c398fd88-221a-5cb5-fd83-58826b32aadc" testName="Doc examples, refined("FullyQualifiedName~UnitTest1&TestCategory=CategoryA",And
 (FullyQualifiedName (Contains "UnitTest1"), TestCategory (Exact "CategoryA")))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000090" startTime="2024-06-06T22:51:46.9679860+01:00" endTime="2024-06-06T22:51:46.9679950+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="d1467ce7-89db-466d-8bce-d12aac12d8bc" />
|
||||
<UnitTestResult executionId="c1bd8051-4713-4900-8104-81d35bd1044e" testId="e0b80408-0788-25db-0152-798f8af05264" testName="Doc examples("FullyQualifiedName=MyNamespace.MyTestsClass<ParameterType1%2CParameterType2>.MyTestMethod",Equal
 (FullyQualifiedName,
 String
 "MyNamespace.MyTestsClass<ParameterType1%2CParameterType2>.MyTestMethod"))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000440" startTime="2024-06-06T22:51:46.9662910+01:00" endTime="2024-06-06T22:51:46.9663360+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="c1bd8051-4713-4900-8104-81d35bd1044e" />
|
||||
<UnitTestResult executionId="05610646-1016-42f1-a9ce-9924d518a649" testId="4cd1fed0-221b-2488-5651-4056b23a0279" testName="Doc examples, refined("xyz",FullyQualifiedName (Contains "xyz"))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000770" startTime="2024-06-06T22:51:46.9678260+01:00" endTime="2024-06-06T22:51:46.9679030+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="05610646-1016-42f1-a9ce-9924d518a649" />
|
||||
<UnitTestResult executionId="102d8433-e372-4955-abb6-41c89c83ce38" testId="07cec6c0-3329-4eca-95b4-f5c8e06c672e" testName="Doc examples("Name~Method",Contains (Name, String "Method"))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000070" startTime="2024-06-06T22:51:46.9663390+01:00" endTime="2024-06-06T22:51:46.9663460+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="102d8433-e372-4955-abb6-41c89c83ce38" />
|
||||
<UnitTestResult executionId="c9308953-40f8-40e4-ae0b-0392a7fd46bd" testId="4fe35dcf-149c-1eb3-2146-3eaf9cd77db0" testName="Doc examples("FullyQualifiedName~xyz",Contains (FullyQualifiedName, String "xyz"))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000490" startTime="2024-06-06T22:51:46.9661830+01:00" endTime="2024-06-06T22:51:46.9662320+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="c9308953-40f8-40e4-ae0b-0392a7fd46bd" />
|
||||
<UnitTestResult executionId="a734daf7-094e-4fde-aee4-11ed8616040f" testId="94b0ecf3-6f00-39dc-f3b2-ad50879f7ed5" testName="Doc examples("FullyQualifiedName~UnitTest1|TestCategory=CategoryA",Or
 (Contains (FullyQualifiedName, String "UnitTest1"),
 Equal (TestCategory, String "CategoryA")))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000090" startTime="2024-06-06T22:51:46.9664490+01:00" endTime="2024-06-06T22:51:46.9664590+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="a734daf7-094e-4fde-aee4-11ed8616040f" />
|
||||
<UnitTestResult executionId="3b33c345-6569-413a-a016-5c4416108282" testId="e46ebf05-6d5c-52a6-cbb2-48eb67b32b42" testName="Doc examples, refined("FullyQualifiedName=MyNamespace.MyTestsClass<ParameterType1%2CParameterType2>.MyTestMethod",FullyQualifiedName
 (Exact
 "MyNamespace.MyTestsClass<ParameterType1%2CParameterType2>.MyTestMethod"))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000120" startTime="2024-06-06T22:51:46.9679280+01:00" endTime="2024-06-06T22:51:46.9679400+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="3b33c345-6569-413a-a016-5c4416108282" />
|
||||
<UnitTestResult executionId="adb817f1-c9fc-462a-8efd-9bb5008d7fa2" testId="b62009a7-3738-0b30-e183-862aac477c4e" testName="combinations has right size" computerName="Patricks-MacBook-Pro" duration="00:00:00.0777940" startTime="2024-06-06T22:51:46.9684920+01:00" endTime="2024-06-06T22:51:47.0462870+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="adb817f1-c9fc-462a-8efd-9bb5008d7fa2">
|
||||
<Output>
|
||||
<StdOut>Ok, passed 100 tests.</StdOut>
|
||||
</Output>
|
||||
</UnitTestResult>
|
||||
<UnitTestResult executionId="3e466940-9612-4a7f-ae85-de45e12a2666" testId="c9f875e8-8c5b-45ab-ce03-7f0dbd247c5b" testName="Doc examples, refined("TestCategory=CategoryA",TestCategory (Exact "CategoryA"))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000100" startTime="2024-06-06T22:51:46.9679650+01:00" endTime="2024-06-06T22:51:46.9679750+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="3e466940-9612-4a7f-ae85-de45e12a2666" />
|
||||
<UnitTestResult executionId="331bdde3-bc99-4c0f-8e40-4857c3f41bf6" testId="94b5920d-623b-242f-6562-612f644ada4b" testName="Doc examples, refined("Name~Method",Name (Contains "Method"))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000090" startTime="2024-06-06T22:51:46.9679450+01:00" endTime="2024-06-06T22:51:46.9679540+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="331bdde3-bc99-4c0f-8e40-4857c3f41bf6" />
|
||||
<UnitTestResult executionId="25551cfd-3a4a-47f5-8ab6-0d2982949e1d" testId="fd2905e8-f961-c324-ec48-045e9c7f9c68" testName="Doc examples("(FullyQualifiedName~UnitTest1&TestCategory=CategoryA)|TestCategory=1",Or
 (And
 (Contains (FullyQualifiedName, String "UnitTest1"),
 Equal (TestCategory, String "CategoryA")),
 Equal (TestCategory, String "1")))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000150" startTime="2024-06-06T22:51:46.9664950+01:00" endTime="2024-06-06T22:51:46.9665110+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="25551cfd-3a4a-47f5-8ab6-0d2982949e1d" />
|
||||
<UnitTestResult executionId="9a0b2595-6baa-4b7a-aab8-9dfba7099213" testId="f3da37a1-7feb-0259-c6a2-4db2614a4bdc" testName="Doc examples("TestCategory=CategoryA",Equal (TestCategory, String "CategoryA"))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0000640" startTime="2024-06-06T22:51:46.9663830+01:00" endTime="2024-06-06T22:51:46.9664470+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="9a0b2595-6baa-4b7a-aab8-9dfba7099213" />
|
||||
<UnitTestResult executionId="e5720565-2ba2-401a-9e40-b5e3088af67b" testId="c19803c5-66d3-11ce-1328-8ba7452d9127" testName="Doc examples("xyz",Contains (FullyQualifiedName, String "xyz"))" computerName="Patricks-MacBook-Pro" duration="00:00:00.0001130" startTime="2024-06-06T22:51:46.9660500+01:00" endTime="2024-06-06T22:51:46.9661630+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="e5720565-2ba2-401a-9e40-b5e3088af67b" />
|
||||
<UnitTestResult executionId="c63454b1-8b07-48c3-a777-4272b9321932" testId="b19fe9a0-ce05-189a-49ce-573b23b4e871" testName="each combination is drawn from the right set" computerName="Patricks-MacBook-Pro" duration="00:00:00.0171900" startTime="2024-06-06T22:51:47.0463120+01:00" endTime="2024-06-06T22:51:47.0635020+01:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="c63454b1-8b07-48c3-a777-4272b9321932">
|
||||
<Output>
|
||||
<StdOut>Ok, passed 100 tests.</StdOut>
|
||||
</Output>
|
||||
</UnitTestResult>
|
||||
</Results>
|
||||
<TestDefinitions>
|
||||
<UnitTest name="Ensure API surface has not been modified" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="1bd5500a-baad-f37f-76eb-3905c00e9884">
|
||||
<Execution id="663a073f-f01c-400e-bffe-dd8d68355b83" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestSurface" name="Ensure API surface has not been modified" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Ensure public API is fully documented" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="8f20f899-4287-617e-b654-b7db066494fa">
|
||||
<Execution id="0348ed3b-c625-44fd-a9b8-26402367db2e" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestSurface" name="Ensure public API is fully documented" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples("FullyQualifiedName=MyNamespace.MyTestsClass<ParameterType1%2CParameterType2>.MyTestMethod",Equal
 (FullyQualifiedName,
 String
 "MyNamespace.MyTestsClass<ParameterType1%2CParameterType2>.MyTestMethod"))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="e0b80408-0788-25db-0152-798f8af05264">
|
||||
<Execution id="c1bd8051-4713-4900-8104-81d35bd1044e" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples("FullyQualifiedName=MyNamespace.MyTestsClass<ParameterType1%2CParameterType2>.MyTestMethod",Equal
 (FullyQualifiedName,
 String
 "MyNamespace.MyTestsClass<ParameterType1%2CParameterType2>.MyTestMethod"))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples("FullyQualifiedName~UnitTest1&TestCategory=CategoryA",And
 (Contains (FullyQualifiedName, String "UnitTest1"),
 Equal (TestCategory, String "CategoryA")))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="f6679088-93ed-d80b-8f88-7079d9e37967">
|
||||
<Execution id="111d7ced-8dda-49b9-a13f-227d4a7e5321" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples("FullyQualifiedName~UnitTest1&TestCategory=CategoryA",And
 (Contains (FullyQualifiedName, String "UnitTest1"),
 Equal (TestCategory, String "CategoryA")))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples("(Name~MyClass) | (Name~MyClass2)",Or (Contains (Name, String "MyClass"), Contains (Name, String "MyClass2")))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="ce1a6a79-d333-550c-9440-42aa00b8a965">
|
||||
<Execution id="0405711d-fa10-4175-9e60-2f2df1e95226" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples("(Name~MyClass) | (Name~MyClass2)",Or (Contains (Name, String "MyClass"), Contains (Name, String "MyClass2")))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Ensure version is monotonic" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="a8381c2d-9147-f725-faa5-3e652b00175b">
|
||||
<Execution id="d50faae3-4ba3-4f2b-9ec8-028698e51b75" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestSurface" name="Ensure version is monotonic" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples, refined("FullyQualifiedName!~IntegrationTests",Not (FullyQualifiedName (Contains "IntegrationTests")))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="00c1848d-a05e-9a06-2781-1fa11ce95eb9">
|
||||
<Execution id="a382138f-5b4d-4c86-adb0-b6238efacdd4" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples, refined("FullyQualifiedName!~IntegrationTests",Not (FullyQualifiedName (Contains "IntegrationTests")))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples, refined("TestCategory=CategoryA",TestCategory (Exact "CategoryA"))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="c9f875e8-8c5b-45ab-ce03-7f0dbd247c5b">
|
||||
<Execution id="3e466940-9612-4a7f-ae85-de45e12a2666" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples, refined("TestCategory=CategoryA",TestCategory (Exact "CategoryA"))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples, refined("FullyQualifiedName~UnitTest1&TestCategory=CategoryA",And
 (FullyQualifiedName (Contains "UnitTest1"), TestCategory (Exact "CategoryA")))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="c398fd88-221a-5cb5-fd83-58826b32aadc">
|
||||
<Execution id="d1467ce7-89db-466d-8bce-d12aac12d8bc" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples, refined("FullyQualifiedName~UnitTest1&TestCategory=CategoryA",And
 (FullyQualifiedName (Contains "UnitTest1"), TestCategory (Exact "CategoryA")))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples("FullyQualifiedName~xyz",Contains (FullyQualifiedName, String "xyz"))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="4fe35dcf-149c-1eb3-2146-3eaf9cd77db0">
|
||||
<Execution id="c9308953-40f8-40e4-ae0b-0392a7fd46bd" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples("FullyQualifiedName~xyz",Contains (FullyQualifiedName, String "xyz"))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples, refined("Name~Method",Name (Contains "Method"))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="94b5920d-623b-242f-6562-612f644ada4b">
|
||||
<Execution id="331bdde3-bc99-4c0f-8e40-4857c3f41bf6" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples, refined("Name~Method",Name (Contains "Method"))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples("FullyQualifiedName!~IntegrationTests",Not (Contains (FullyQualifiedName, String "IntegrationTests")))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="a103bfc3-83f7-770a-d0fe-9d706c1eb3e4">
|
||||
<Execution id="3acdf7b0-79c4-4dff-8a42-2ac89723a6dd" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples("FullyQualifiedName!~IntegrationTests",Not (Contains (FullyQualifiedName, String "IntegrationTests")))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="combinations has right size" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="b62009a7-3738-0b30-e183-862aac477c4e">
|
||||
<Execution id="adb817f1-c9fc-462a-8efd-9bb5008d7fa2" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestList" name="combinations has right size" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Update API surface" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="ec7f1a3e-77d9-4c85-40b6-a2be454fc7d7">
|
||||
<Execution id="a943407b-8ba2-4565-a7e4-85caf4802524" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestSurface" name="Update API surface" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples("FullyQualifiedName~UnitTest1|TestCategory=CategoryA",Or
 (Contains (FullyQualifiedName, String "UnitTest1"),
 Equal (TestCategory, String "CategoryA")))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="94b0ecf3-6f00-39dc-f3b2-ad50879f7ed5">
|
||||
<Execution id="a734daf7-094e-4fde-aee4-11ed8616040f" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples("FullyQualifiedName~UnitTest1|TestCategory=CategoryA",Or
 (Contains (FullyQualifiedName, String "UnitTest1"),
 Equal (TestCategory, String "CategoryA")))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples, refined("(FullyQualifiedName~UnitTest1&TestCategory=CategoryA)|TestCategory=1",Or
 (And
 (FullyQualifiedName (Contains "UnitTest1"),
 TestCategory (Exact "CategoryA")), TestCategory (Exact "1")))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="94df793c-aa9b-7761-e8cc-fd71193cb683">
|
||||
<Execution id="5af71b23-3a6c-4087-b4af-786ea6f24a23" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples, refined("(FullyQualifiedName~UnitTest1&TestCategory=CategoryA)|TestCategory=1",Or
 (And
 (FullyQualifiedName (Contains "UnitTest1"),
 TestCategory (Exact "CategoryA")), TestCategory (Exact "1")))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples, refined("FullyQualifiedName!=MSTestNamespace.UnitTest1.TestMethod1",Not (FullyQualifiedName (Exact "MSTestNamespace.UnitTest1.TestMethod1")))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="54f7e9c6-642e-4408-18f7-2f88d592e478">
|
||||
<Execution id="589fdef2-d601-4104-9319-27982a0b03c2" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples, refined("FullyQualifiedName!=MSTestNamespace.UnitTest1.TestMethod1",Not (FullyQualifiedName (Exact "MSTestNamespace.UnitTest1.TestMethod1")))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples("FullyQualifiedName!=MSTestNamespace.UnitTest1.TestMethod1",Not (Equal (FullyQualifiedName, String "MSTestNamespace.UnitTest1.TestMethod1")))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="099ab0d7-e616-e3ed-18e1-8238c2e316c4">
|
||||
<Execution id="0f224761-6bbd-43f2-9559-1327816450d9" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples("FullyQualifiedName!=MSTestNamespace.UnitTest1.TestMethod1",Not (Equal (FullyQualifiedName, String "MSTestNamespace.UnitTest1.TestMethod1")))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples, refined("FullyQualifiedName=MyNamespace.MyTestsClass<ParameterType1%2CParameterType2>.MyTestMethod",FullyQualifiedName
 (Exact
 "MyNamespace.MyTestsClass<ParameterType1%2CParameterType2>.MyTestMethod"))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="e46ebf05-6d5c-52a6-cbb2-48eb67b32b42">
|
||||
<Execution id="3b33c345-6569-413a-a016-5c4416108282" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples, refined("FullyQualifiedName=MyNamespace.MyTestsClass<ParameterType1%2CParameterType2>.MyTestMethod",FullyQualifiedName
 (Exact
 "MyNamespace.MyTestsClass<ParameterType1%2CParameterType2>.MyTestMethod"))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples("(FullyQualifiedName~UnitTest1&TestCategory=CategoryA)|TestCategory=1",Or
 (And
 (Contains (FullyQualifiedName, String "UnitTest1"),
 Equal (TestCategory, String "CategoryA")),
 Equal (TestCategory, String "1")))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="fd2905e8-f961-c324-ec48-045e9c7f9c68">
|
||||
<Execution id="25551cfd-3a4a-47f5-8ab6-0d2982949e1d" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples("(FullyQualifiedName~UnitTest1&TestCategory=CategoryA)|TestCategory=1",Or
 (And
 (Contains (FullyQualifiedName, String "UnitTest1"),
 Equal (TestCategory, String "CategoryA")),
 Equal (TestCategory, String "1")))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples, refined("(Name~MyClass) | (Name~MyClass2)",Or (Name (Contains "MyClass"), Name (Contains "MyClass2")))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="4074d63b-6752-050c-966d-d5216c2b1c71">
|
||||
<Execution id="a884d69f-5783-4d8f-be3b-81310a903e3a" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples, refined("(Name~MyClass) | (Name~MyClass2)",Or (Name (Contains "MyClass"), Name (Contains "MyClass2")))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples, refined("FullyQualifiedName~xyz",FullyQualifiedName (Contains "xyz"))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="6cd03969-ef9a-6d86-a2e6-2fd8b0849fe4">
|
||||
<Execution id="68443f21-a319-4b3b-a4d9-b3753f5d8523" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples, refined("FullyQualifiedName~xyz",FullyQualifiedName (Contains "xyz"))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples("xyz",Contains (FullyQualifiedName, String "xyz"))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="c19803c5-66d3-11ce-1328-8ba7452d9127">
|
||||
<Execution id="e5720565-2ba2-401a-9e40-b5e3088af67b" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples("xyz",Contains (FullyQualifiedName, String "xyz"))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples, refined("xyz",FullyQualifiedName (Contains "xyz"))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="4cd1fed0-221b-2488-5651-4056b23a0279">
|
||||
<Execution id="05610646-1016-42f1-a9ce-9924d518a649" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples, refined("xyz",FullyQualifiedName (Contains "xyz"))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples("TestCategory=CategoryA",Equal (TestCategory, String "CategoryA"))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="f3da37a1-7feb-0259-c6a2-4db2614a4bdc">
|
||||
<Execution id="9a0b2595-6baa-4b7a-aab8-9dfba7099213" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples("TestCategory=CategoryA",Equal (TestCategory, String "CategoryA"))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="each combination is drawn from the right set" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="b19fe9a0-ce05-189a-49ce-573b23b4e871">
|
||||
<Execution id="c63454b1-8b07-48c3-a777-4272b9321932" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestList" name="each combination is drawn from the right set" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples, refined("FullyQualifiedName~UnitTest1|TestCategory=CategoryA",Or (FullyQualifiedName (Contains "UnitTest1"), TestCategory (Exact "CategoryA")))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="df13938a-7ab7-ffa5-3032-b0360d3ac165">
|
||||
<Execution id="ba434804-1ada-466d-8f9b-1b4b694193cc" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples, refined("FullyQualifiedName~UnitTest1|TestCategory=CategoryA",Or (FullyQualifiedName (Contains "UnitTest1"), TestCategory (Exact "CategoryA")))" />
|
||||
</UnitTest>
|
||||
<UnitTest name="Doc examples("Name~Method",Contains (Name, String "Method"))" storage="/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll" id="07cec6c0-3329-4eca-95b4-f5c8e06c672e">
|
||||
<Execution id="102d8433-e372-4955-abb6-41c89c83ce38" />
|
||||
<TestMethod codeBase="/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll" adapterTypeName="executor://nunit3testexecutor/" className="TestRunner.Test.TestFilter" name="Doc examples("Name~Method",Contains (Name, String "Method"))" />
|
||||
</UnitTest>
|
||||
</TestDefinitions>
|
||||
<TestEntries>
|
||||
<TestEntry testId="099ab0d7-e616-e3ed-18e1-8238c2e316c4" executionId="0f224761-6bbd-43f2-9559-1327816450d9" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="00c1848d-a05e-9a06-2781-1fa11ce95eb9" executionId="a382138f-5b4d-4c86-adb0-b6238efacdd4" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="df13938a-7ab7-ffa5-3032-b0360d3ac165" executionId="ba434804-1ada-466d-8f9b-1b4b694193cc" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="ce1a6a79-d333-550c-9440-42aa00b8a965" executionId="0405711d-fa10-4175-9e60-2f2df1e95226" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="4074d63b-6752-050c-966d-d5216c2b1c71" executionId="a884d69f-5783-4d8f-be3b-81310a903e3a" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="1bd5500a-baad-f37f-76eb-3905c00e9884" executionId="663a073f-f01c-400e-bffe-dd8d68355b83" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="ec7f1a3e-77d9-4c85-40b6-a2be454fc7d7" executionId="a943407b-8ba2-4565-a7e4-85caf4802524" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="a8381c2d-9147-f725-faa5-3e652b00175b" executionId="d50faae3-4ba3-4f2b-9ec8-028698e51b75" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="8f20f899-4287-617e-b654-b7db066494fa" executionId="0348ed3b-c625-44fd-a9b8-26402367db2e" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="54f7e9c6-642e-4408-18f7-2f88d592e478" executionId="589fdef2-d601-4104-9319-27982a0b03c2" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="94df793c-aa9b-7761-e8cc-fd71193cb683" executionId="5af71b23-3a6c-4087-b4af-786ea6f24a23" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="a103bfc3-83f7-770a-d0fe-9d706c1eb3e4" executionId="3acdf7b0-79c4-4dff-8a42-2ac89723a6dd" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="6cd03969-ef9a-6d86-a2e6-2fd8b0849fe4" executionId="68443f21-a319-4b3b-a4d9-b3753f5d8523" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="f6679088-93ed-d80b-8f88-7079d9e37967" executionId="111d7ced-8dda-49b9-a13f-227d4a7e5321" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="c398fd88-221a-5cb5-fd83-58826b32aadc" executionId="d1467ce7-89db-466d-8bce-d12aac12d8bc" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="e0b80408-0788-25db-0152-798f8af05264" executionId="c1bd8051-4713-4900-8104-81d35bd1044e" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="4cd1fed0-221b-2488-5651-4056b23a0279" executionId="05610646-1016-42f1-a9ce-9924d518a649" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="07cec6c0-3329-4eca-95b4-f5c8e06c672e" executionId="102d8433-e372-4955-abb6-41c89c83ce38" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="4fe35dcf-149c-1eb3-2146-3eaf9cd77db0" executionId="c9308953-40f8-40e4-ae0b-0392a7fd46bd" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="94b0ecf3-6f00-39dc-f3b2-ad50879f7ed5" executionId="a734daf7-094e-4fde-aee4-11ed8616040f" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="e46ebf05-6d5c-52a6-cbb2-48eb67b32b42" executionId="3b33c345-6569-413a-a016-5c4416108282" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="b62009a7-3738-0b30-e183-862aac477c4e" executionId="adb817f1-c9fc-462a-8efd-9bb5008d7fa2" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="c9f875e8-8c5b-45ab-ce03-7f0dbd247c5b" executionId="3e466940-9612-4a7f-ae85-de45e12a2666" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="94b5920d-623b-242f-6562-612f644ada4b" executionId="331bdde3-bc99-4c0f-8e40-4857c3f41bf6" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="fd2905e8-f961-c324-ec48-045e9c7f9c68" executionId="25551cfd-3a4a-47f5-8ab6-0d2982949e1d" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="f3da37a1-7feb-0259-c6a2-4db2614a4bdc" executionId="9a0b2595-6baa-4b7a-aab8-9dfba7099213" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="c19803c5-66d3-11ce-1328-8ba7452d9127" executionId="e5720565-2ba2-401a-9e40-b5e3088af67b" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestEntry testId="b19fe9a0-ce05-189a-49ce-573b23b4e871" executionId="c63454b1-8b07-48c3-a777-4272b9321932" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
</TestEntries>
|
||||
<TestLists>
|
||||
<TestList name="Results Not in a List" id="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||
<TestList name="All Loaded Results" id="19431567-8539-422a-85d7-44ee4e166bda" />
|
||||
</TestLists>
|
||||
<ResultSummary outcome="Failed">
|
||||
<Counters total="28" executed="26" passed="24" failed="2" error="0" timeout="0" aborted="0" inconclusive="0" passedButRunAborted="0" notRunnable="0" notExecuted="0" disconnected="0" warning="0" completed="0" inProgress="0" pending="0" />
|
||||
<Output>
|
||||
<StdOut>NUnit Adapter 4.5.0.0: Test execution started
|
||||
Running all tests in /Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll
|
||||
NUnit3TestExecutor discovered 26 of 28 NUnit test cases using Current Discovery mode, Non-Explicit run
|
||||
Ensure version is monotonic: Not yet published
|
||||
NUnit Adapter 4.5.0.0: Test execution complete
|
||||
</StdOut>
|
||||
</Output>
|
||||
<RunInfos>
|
||||
<RunInfo computerName="Patricks-MacBook-Pro" outcome="Warning" timestamp="2024-06-06T22:51:47.0471530+01:00">
|
||||
<Text>Ok, passed 100 tests.
|
||||
</Text>
|
||||
</RunInfo>
|
||||
<RunInfo computerName="Patricks-MacBook-Pro" outcome="Warning" timestamp="2024-06-06T22:51:47.0640360+01:00">
|
||||
<Text>Ok, passed 100 tests.
|
||||
</Text>
|
||||
</RunInfo>
|
||||
</RunInfos>
|
||||
</ResultSummary>
|
||||
</TestRun>
|
||||
|
@@ -21,6 +21,8 @@ module TestList =
|
||||
[<Test>]
|
||||
let ``each combination is drawn from the right set`` () =
|
||||
let property (xs : int list list) =
|
||||
let xs = if xs.Length > 6 then xs |> List.take 6 else xs
|
||||
let xs = xs |> List.map (fun xs -> if xs.Length > 6 then xs |> List.take 6 else xs)
|
||||
let combs = List.combinations xs
|
||||
|
||||
for comb in combs do
|
||||
|
@@ -2,15 +2,17 @@
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
|
||||
<IsPackable>false</IsPackable>
|
||||
<IsTestProject>true</IsTestProject>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Compile Include="EmbeddedResource.fs" />
|
||||
<Compile Include="TestFilter.fs" />
|
||||
<Compile Include="TestList.fs" />
|
||||
<Compile Include="TestSurface.fs" />
|
||||
<Compile Include="TestTrx.fs" />
|
||||
<EmbeddedResource Include="Example1.trx" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
180
TestRunner/TestRunner.Test/TestTrx.fs
Normal file
180
TestRunner/TestRunner.Test/TestTrx.fs
Normal file
@@ -0,0 +1,180 @@
|
||||
namespace TestRunner.Test
|
||||
|
||||
open System
|
||||
open NuGet.Packaging.Signing
|
||||
open TestRunner
|
||||
open NUnit.Framework
|
||||
open FsUnitTyped
|
||||
|
||||
[<TestFixture>]
|
||||
module TestTrx =
|
||||
|
||||
[<Test>]
|
||||
let ``Can parse the first example`` () =
|
||||
let resource = EmbeddedResource.read "Example1.trx"
|
||||
|
||||
let parsed =
|
||||
match TrxReport.parse resource with
|
||||
| Error e -> failwith $"Expected successful parse: %s{e}"
|
||||
| Ok r -> r
|
||||
|
||||
parsed.Id.ToString () |> shouldEqual "ccbc0600-fe62-46d9-a3d9-6551da338a3e"
|
||||
parsed.Name |> shouldEqual "@Patricks-MacBook-Pro 2024-06-06 22:51:47"
|
||||
|
||||
parsed.Times
|
||||
|> shouldEqual
|
||||
{
|
||||
Creation = DateTimeOffset.Parse "2024-06-06T22:51:47.0155230+01:00"
|
||||
Queuing = DateTimeOffset.Parse "2024-06-06T22:51:47.0155230+01:00"
|
||||
Start = DateTimeOffset.Parse "2024-06-06T22:51:46.6031940+01:00"
|
||||
Finish = DateTimeOffset.Parse "2024-06-06T22:51:47.1574390+01:00"
|
||||
}
|
||||
|
||||
parsed.Settings.Name |> shouldEqual "default"
|
||||
|
||||
parsed.Settings.Id.ToString ()
|
||||
|> shouldEqual "542f16c8-664f-40a7-9829-0d13fc32f19f"
|
||||
|
||||
parsed.Settings.Deployment
|
||||
|> shouldEqual
|
||||
{
|
||||
RunDeploymentRoot = "_Patricks-MacBook-Pro_2024-06-06_22_51_47"
|
||||
}
|
||||
|
||||
do
|
||||
parsed.TestDefinitions |> shouldHaveLength 28
|
||||
let defn = parsed.TestDefinitions.[0]
|
||||
defn.Name |> shouldEqual "Ensure API surface has not been modified"
|
||||
|
||||
defn.Storage
|
||||
|> shouldEqual
|
||||
"/users/patrick/documents/github/testrunner/testrunner/testrunner.test/bin/debug/net8.0/testrunner.test.dll"
|
||||
|
||||
defn.Id.ToString () |> shouldEqual "1bd5500a-baad-f37f-76eb-3905c00e9884"
|
||||
|
||||
defn.Execution.Id.ToString ()
|
||||
|> shouldEqual "663a073f-f01c-400e-bffe-dd8d68355b83"
|
||||
|
||||
defn.TestMethod
|
||||
|> shouldEqual
|
||||
{
|
||||
CodeBase =
|
||||
"/Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll"
|
||||
AdapterTypeName = Uri "executor://nunit3testexecutor/"
|
||||
ClassName = "TestRunner.Test.TestSurface"
|
||||
Name = "Ensure API surface has not been modified"
|
||||
}
|
||||
|
||||
// TODO: test contents of UnitTestResults
|
||||
parsed.Results |> shouldHaveLength 28
|
||||
|
||||
do
|
||||
parsed.Results.[5].ExecutionId.ToString ()
|
||||
|> shouldEqual "663a073f-f01c-400e-bffe-dd8d68355b83"
|
||||
|
||||
parsed.Results.[5].TestId.ToString ()
|
||||
|> shouldEqual "1bd5500a-baad-f37f-76eb-3905c00e9884"
|
||||
|
||||
parsed.Results.[5].TestName
|
||||
|> shouldEqual "Ensure API surface has not been modified"
|
||||
|
||||
parsed.Results.[5].ComputerName |> shouldEqual "Patricks-MacBook-Pro"
|
||||
parsed.Results.[5].Duration |> shouldEqual (TimeSpan.Parse "00:00:00.0329610")
|
||||
|
||||
parsed.Results.[5].StartTime
|
||||
|> shouldEqual (DateTimeOffset.Parse "2024-06-06T22:51:47.0636370+01:00")
|
||||
|
||||
parsed.Results.[5].EndTime
|
||||
|> shouldEqual (DateTimeOffset.Parse "2024-06-06T22:51:47.0965980+01:00")
|
||||
|
||||
parsed.Results.[5].TestType.ToString ()
|
||||
|> shouldEqual "13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b"
|
||||
|
||||
parsed.Results.[5].Outcome |> shouldEqual TrxTestOutcome.Failed
|
||||
|
||||
parsed.Results.[5].TestListId.ToString ()
|
||||
|> shouldEqual "8c84fa94-04c1-424b-9868-57a2d4851a1d"
|
||||
|
||||
parsed.Results.[5].RelativeResultsDirectory
|
||||
|> shouldEqual "663a073f-f01c-400e-bffe-dd8d68355b83"
|
||||
|
||||
match parsed.Results.[5].Output with
|
||||
| None -> failwith "expected output"
|
||||
| Some output ->
|
||||
match output.ErrorInfo with
|
||||
| None -> failwith "expected errorinfo"
|
||||
| Some ei ->
|
||||
let message = ei.Message |> Option.get
|
||||
|
||||
message.StartsWith ("System.Exception : Unexpected", StringComparison.Ordinal)
|
||||
|> shouldEqual true
|
||||
|
||||
message |> shouldContainText "unit -> string"
|
||||
let stackTrace = ei.StackTrace |> Option.get
|
||||
stackTrace |> shouldContainText "Ensure API surface has not been modified()"
|
||||
|
||||
do
|
||||
parsed.TestEntries |> shouldHaveLength 28
|
||||
let testEntry = parsed.TestEntries.[0]
|
||||
|
||||
testEntry.TestId.ToString ()
|
||||
|> shouldEqual "099ab0d7-e616-e3ed-18e1-8238c2e316c4"
|
||||
|
||||
testEntry.ExecutionId.ToString ()
|
||||
|> shouldEqual "0f224761-6bbd-43f2-9559-1327816450d9"
|
||||
|
||||
testEntry.TestListId.ToString ()
|
||||
|> shouldEqual "8c84fa94-04c1-424b-9868-57a2d4851a1d"
|
||||
|
||||
do
|
||||
parsed.TestLists |> shouldHaveLength 2
|
||||
parsed.TestLists.[0].Name |> shouldEqual "Results Not in a List"
|
||||
|
||||
parsed.TestLists.[0].Id.ToString ()
|
||||
|> shouldEqual "8c84fa94-04c1-424b-9868-57a2d4851a1d"
|
||||
|
||||
parsed.TestLists.[1].Name |> shouldEqual "All Loaded Results"
|
||||
|
||||
parsed.TestLists.[1].Id.ToString ()
|
||||
|> shouldEqual "19431567-8539-422a-85d7-44ee4e166bda"
|
||||
|
||||
let expectedResultsSummary =
|
||||
{
|
||||
Counters =
|
||||
{ TrxCounters.Zero with
|
||||
Total = 28u
|
||||
Executed = 26u
|
||||
Passed = 24u
|
||||
Failed = 2u
|
||||
}
|
||||
Output =
|
||||
{
|
||||
StdOut =
|
||||
Some
|
||||
"""NUnit Adapter 4.5.0.0: Test execution started
|
||||
Running all tests in /Users/patrick/Documents/GitHub/TestRunner/TestRunner/TestRunner.Test/bin/Debug/net8.0/TestRunner.Test.dll
|
||||
NUnit3TestExecutor discovered 26 of 28 NUnit test cases using Current Discovery mode, Non-Explicit run
|
||||
Ensure version is monotonic: Not yet published
|
||||
NUnit Adapter 4.5.0.0: Test execution complete
|
||||
"""
|
||||
ErrorInfo = None
|
||||
}
|
||||
Outcome = TrxOutcome.Failed
|
||||
RunInfos =
|
||||
[
|
||||
{
|
||||
ComputerName = "Patricks-MacBook-Pro"
|
||||
Outcome = TrxOutcome.Warning
|
||||
Timestamp = DateTimeOffset.Parse "2024-06-06T22:51:47.0471530+01:00"
|
||||
Text = $"Ok, passed 100 tests.%s{Environment.NewLine}"
|
||||
}
|
||||
{
|
||||
ComputerName = "Patricks-MacBook-Pro"
|
||||
Outcome = TrxOutcome.Warning
|
||||
Timestamp = DateTimeOffset.Parse "2024-06-06T22:51:47.0640360+01:00"
|
||||
Text = $"Ok, passed 100 tests.%s{Environment.NewLine}"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
parsed.ResultsSummary |> shouldEqual expectedResultsSummary
|
Reference in New Issue
Block a user