Skip to content

Commit

Permalink
Add test framework ground work (#1)
Browse files Browse the repository at this point in the history
* Add base code

* Add test context message

* Remove message bus

* Resolve conflicts

* Add more diagnostic messages

* Consolidate framework classes

* Add test context message

* Add test result bus and sink

* Fix problem with error messages during bulk index to elastic serach

* Add new visualization to test case status dashboard

* Upgrade to the latest xunit

* Add test case context indexing
  • Loading branch information
Jandini authored Sep 21, 2023
1 parent 05cdf7c commit b0f4bf3
Show file tree
Hide file tree
Showing 32 changed files with 1,091 additions and 20 deletions.
81 changes: 81 additions & 0 deletions res/MessageBus.drawio
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
<mxfile host="app.diagrams.net" modified="2023-08-06T21:23:07.378Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36" etag="gWqZwxvY56xP-PJiCLv0" version="21.6.6" type="device">
<diagram name="Page-1" id="2YBvvXClWsGukQMizWep">
<mxGraphModel dx="2647" dy="1580" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="nZ8uCZlaQuFoHqbtni7n-3" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="nZ8uCZlaQuFoHqbtni7n-1" target="nZ8uCZlaQuFoHqbtni7n-2">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-1" value="TestMethodStarting" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="331" y="91" width="200" height="60" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-5" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="nZ8uCZlaQuFoHqbtni7n-2" target="nZ8uCZlaQuFoHqbtni7n-4">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-2" value="TestCaseStarting" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="331" y="191" width="200" height="60" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-7" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="nZ8uCZlaQuFoHqbtni7n-4" target="nZ8uCZlaQuFoHqbtni7n-6">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-4" value="TestStarting" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="331" y="291" width="200" height="60" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-10" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="nZ8uCZlaQuFoHqbtni7n-6" target="nZ8uCZlaQuFoHqbtni7n-9">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-6" value="TestClassConstructionStarting" style="whiteSpace=wrap;html=1;rounded=0;" vertex="1" parent="1">
<mxGeometry x="331" y="401" width="200" height="60" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-12" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.25;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="nZ8uCZlaQuFoHqbtni7n-9" target="nZ8uCZlaQuFoHqbtni7n-11">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-13" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="nZ8uCZlaQuFoHqbtni7n-9" target="nZ8uCZlaQuFoHqbtni7n-14">
<mxGeometry relative="1" as="geometry">
<mxPoint x="481" y="631" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-16" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.75;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="nZ8uCZlaQuFoHqbtni7n-9" target="nZ8uCZlaQuFoHqbtni7n-15">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-9" value="TestClassConstructionFinished" style="whiteSpace=wrap;html=1;rounded=0;" vertex="1" parent="1">
<mxGeometry x="331" y="501" width="200" height="60" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-24" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.25;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="nZ8uCZlaQuFoHqbtni7n-11" target="nZ8uCZlaQuFoHqbtni7n-17">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-11" value="TestPassed" style="whiteSpace=wrap;html=1;rounded=0;" vertex="1" parent="1">
<mxGeometry x="210" y="621" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-19" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="nZ8uCZlaQuFoHqbtni7n-14" target="nZ8uCZlaQuFoHqbtni7n-17">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-14" value="TestFailed" style="whiteSpace=wrap;html=1;rounded=0;" vertex="1" parent="1">
<mxGeometry x="371" y="621" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-21" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.75;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="nZ8uCZlaQuFoHqbtni7n-15" target="nZ8uCZlaQuFoHqbtni7n-17">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-15" value="TestSkipped" style="whiteSpace=wrap;html=1;rounded=0;" vertex="1" parent="1">
<mxGeometry x="521" y="621" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-23" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="nZ8uCZlaQuFoHqbtni7n-17" target="nZ8uCZlaQuFoHqbtni7n-22">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-17" value="TestFinished" style="whiteSpace=wrap;html=1;rounded=0;" vertex="1" parent="1">
<mxGeometry x="331" y="751" width="200" height="60" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-26" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="nZ8uCZlaQuFoHqbtni7n-22" target="nZ8uCZlaQuFoHqbtni7n-25">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-22" value="TestCaseFinished" style="whiteSpace=wrap;html=1;rounded=0;" vertex="1" parent="1">
<mxGeometry x="331" y="852" width="200" height="60" as="geometry" />
</mxCell>
<mxCell id="nZ8uCZlaQuFoHqbtni7n-25" value="TestMethodFinished" style="whiteSpace=wrap;html=1;rounded=0;" vertex="1" parent="1">
<mxGeometry x="331" y="950" width="200" height="60" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>
Binary file added res/MessageBus.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
66 changes: 66 additions & 0 deletions res/MessageBus.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
[xUnit.net 00:00:02.64] KiBoards.Tests: MessageBus: Xunit.Sdk.TestMethodStarting

[xUnit.net 00:00:02.67] KiBoards.Tests: MessageBus: Xunit.Sdk.TestCaseStarting
[xUnit.net 00:00:02.67] KiBoards.Tests: MessageBus: Xunit.Sdk.TestStarting
[xUnit.net 00:00:02.67] KiBoards.Tests: MessageBus: Xunit.Sdk.TestClassConstructionStarting
[xUnit.net 00:00:02.67] KiBoards.Tests: MessageBus: Xunit.Sdk.TestClassConstructionFinished
[xUnit.net 00:00:02.68] KiBoards.Tests: MessageBus: Xunit.Sdk.TestPassed
[xUnit.net 00:00:02.68] KiBoards.Tests: MessageBus: Xunit.Sdk.TestFinished
[xUnit.net 00:00:02.68] KiBoards.Tests: MessageBus: Xunit.Sdk.TestCaseFinished

[xUnit.net 00:00:02.71] KiBoards.Tests: MessageBus: Xunit.Sdk.TestCaseStarting
[xUnit.net 00:00:02.71] KiBoards.Tests: MessageBus: Xunit.Sdk.TestStarting
[xUnit.net 00:00:02.71] KiBoards.Tests: MessageBus: Xunit.Sdk.TestClassConstructionStarting
[xUnit.net 00:00:02.71] KiBoards.Tests: MessageBus: Xunit.Sdk.TestClassConstructionFinished
[xUnit.net 00:00:02.72] KiBoards.Tests: MessageBus: Xunit.Sdk.TestFailed
[xUnit.net 00:00:02.72] KiBoards.Tests: MessageBus: Xunit.Sdk.TestFinished
[xUnit.net 00:00:02.72] KiBoards.Tests: MessageBus: Xunit.Sdk.TestCaseFinished

[xUnit.net 00:00:02.73] KiBoards.Tests: MessageBus: Xunit.Sdk.TestCaseStarting
[xUnit.net 00:00:02.73] KiBoards.Tests: MessageBus: Xunit.Sdk.TestStarting
[xUnit.net 00:00:02.73] KiBoards.Tests: MessageBus: Xunit.Sdk.TestClassConstructionStarting
[xUnit.net 00:00:02.73] KiBoards.Tests: MessageBus: Xunit.Sdk.TestClassConstructionFinished

[xUnit.net 00:00:02.73] KiBoards.Tests: MessageBus: Xunit.Sdk.TestPassed
[xUnit.net 00:00:02.73] KiBoards.Tests: MessageBus: Xunit.Sdk.TestFinished

[xUnit.net 00:00:02.73] KiBoards.Tests: MessageBus: Xunit.Sdk.TestCaseFinished

[xUnit.net 00:00:02.74] KiBoards.Tests: MessageBus: Xunit.Sdk.TestMethodFinished


[xUnit.net 00:00:02.74] KiBoards.Tests: MessageBus: Xunit.Sdk.TestMethodStarting
[xUnit.net 00:00:02.75] KiBoards.Tests: MessageBus: Xunit.Sdk.TestCaseStarting
[xUnit.net 00:00:02.75] KiBoards.Tests: MessageBus: Xunit.Sdk.TestStarting
[xUnit.net 00:00:02.75] KiBoards.Tests: MessageBus: Xunit.Sdk.TestClassConstructionStarting
[xUnit.net 00:00:02.75] KiBoards.Tests: MessageBus: Xunit.Sdk.TestClassConstructionFinished

[xUnit.net 00:00:02.75] KiBoards.Tests: MessageBus: Xunit.Sdk.TestPassed
[xUnit.net 00:00:02.75] KiBoards.Tests: MessageBus: Xunit.Sdk.TestFinished

[xUnit.net 00:00:02.75] KiBoards.Tests: MessageBus: Xunit.Sdk.TestCaseFinished
[xUnit.net 00:00:02.75] KiBoards.Tests: MessageBus: Xunit.Sdk.TestMethodFinished

[xUnit.net 00:00:02.75] KiBoards.Tests: MessageBus: Xunit.Sdk.TestMethodStarting
[xUnit.net 00:00:02.76] KiBoards.Tests: MessageBus: Xunit.Sdk.TestCaseStarting
[xUnit.net 00:00:02.76] KiBoards.Tests: MessageBus: Xunit.Sdk.TestStarting
[xUnit.net 00:00:02.76] KiBoards.Tests: MessageBus: Xunit.Sdk.TestClassConstructionStarting
[xUnit.net 00:00:02.76] KiBoards.Tests: MessageBus: Xunit.Sdk.TestClassConstructionFinished

[xUnit.net 00:00:02.76] KiBoards.Tests: MessageBus: Xunit.Sdk.TestFailed
[xUnit.net 00:00:02.76] KiBoards.Tests: MessageBus: Xunit.Sdk.TestFinished

[xUnit.net 00:00:02.76] KiBoards.Tests: MessageBus: Xunit.Sdk.TestCaseFinished
[xUnit.net 00:00:02.77] KiBoards.Tests: MessageBus: Xunit.Sdk.TestMethodFinished

[xUnit.net 00:00:02.77] KiBoards.Tests: MessageBus: Xunit.Sdk.TestMethodStarting
[xUnit.net 00:00:02.77] KiBoards.Tests: MessageBus: Xunit.Sdk.TestCaseStarting
[xUnit.net 00:00:02.77] KiBoards.Tests: MessageBus: Xunit.Sdk.TestStarting

[xUnit.net 00:00:02.77] KiBoards.Tests: MessageBus: Xunit.Sdk.TestSkipped
[xUnit.net 00:00:02.77] KiBoards.Tests: MessageBus: Xunit.Sdk.TestFinished

[xUnit.net 00:00:02.77] KiBoards.Tests: MessageBus: Xunit.Sdk.TestCaseFinished
[xUnit.net 00:00:02.78] KiBoards.Tests: MessageBus: Xunit.Sdk.TestMethodFinished

Failed! - Failed: 2, Passed: 3, Skipped: 1, Total: 6, Duration: 85 ms - KiBoards.Tests.dll (net7.0)
5 changes: 5 additions & 0 deletions res/TestCaseStatus.ndjson

Large diffs are not rendered by default.

31 changes: 31 additions & 0 deletions src/KiBoards.Tests/KiBoards.Tests.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<SatelliteResourceLanguages>en</SatelliteResourceLanguages>
<BaseOutputPath>..\..\bin</BaseOutputPath>
<IsPackable>false</IsPackable>
<IsTestProject>true</IsTestProject>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="KiBoards.Extensions.Logging" Version="0.1.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.7.2" />
<PackageReference Include="xunit" Version="2.5.1" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.1">
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="coverlet.collector" Version="6.0.0">
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\KiBoards\KiBoards.csproj" />
</ItemGroup>

</Project>
52 changes: 52 additions & 0 deletions src/KiBoards.Tests/UnitTest1.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
using Xunit.Abstractions;
using Xunit.Sdk;

[assembly: TestFramework("KiBoards.TestFramework", "KiBoards")]

namespace KiBoards.Tests
{

public class UnitTest1 : IClassFixture<TestContextFixture>
{
readonly TestContextFixture _testContextFixture;
readonly ITestOutputHelper _testOutputHelper;

public UnitTest1(TestContextFixture testContextFixture, ITestOutputHelper testOutputHelper)
{
_testContextFixture = testContextFixture;
_testOutputHelper = testOutputHelper;

_testContextFixture.SetContext(new { Version = "Context via Fixture", Hello = "World", Input = 1 });
}

[Fact]
public void Test1()
{

var testCase = _testOutputHelper.GetTestCase();

_testContextFixture.SetContext(new { Version = "12345", TestCase = testCase }) ;
Thread.Sleep(1000);
}

[Fact]
public void Test2()
{
Assert.Equal(1, 2);
}


[Fact]
public void Test3()
{
throw new NotImplementedException();
}

[Fact(Skip = "Not required.")]
public void Test4()
{

}

}
}
53 changes: 53 additions & 0 deletions src/KiBoards.Tests/UnitTest2.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@

using Microsoft.VisualStudio.TestPlatform.Utilities;
using System.Reflection;
using Xunit.Abstractions;
using Xunit.Sdk;

namespace KiBoards.Tests
{

public class UnitTest2 : IClassFixture<TestContextFixture>
{

public UnitTest2(TestContextFixture testContextFixture, ITestOutputHelper outputHelper)
{
// This is how to get messageBus

testContextFixture.SetContext(new { Version = "1234" });

outputHelper.WriteLine("HELLO WORLD MESSAGE BUS");
}

[Fact(Timeout = 1000)]
public void Test5()
{
Thread.Sleep(5000);


}

[Theory]
[InlineData(1, 2)]
[InlineData(2, 2)]
[InlineData(3, 3)]
public void Test6(int a, int b)
{
Assert.Equal(a, b);
}


[Fact]
public void Test7()
{
throw new NotImplementedException();
}

[Fact(Skip = "Not required.")]
public void Test8()
{

}

}
}
49 changes: 49 additions & 0 deletions src/KiBoards.Tests/UnitTest3.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
using Xunit.Abstractions;

namespace KiBoards.Tests
{

public class UnitTest3 : IClassFixture<TestContextFixture>
{

public UnitTest3(TestContextFixture testContextFixture, ITestOutputHelper outputHelper)
{
// This is how to get messageBus

testContextFixture.SetContext(new { Version = "1234" });

outputHelper.WriteLine("HELLO WORLD MESSAGE BUS");
}

[Fact(Timeout = 1000)]
public void Test5()
{
Thread.Sleep(5000);


}

[Theory]
[InlineData(1, 2)]
[InlineData(2, 2)]
[InlineData(3, 3)]
public void Test6(int a, int b)
{
Assert.Equal(a, b);
}


[Fact]
public void Test7()
{
throw new NotImplementedException();
}

[Fact(Skip = "Not required.")]
public void Test8()
{

}

}
}
1 change: 1 addition & 0 deletions src/KiBoards.Tests/Usings.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
global using Xunit;
18 changes: 12 additions & 6 deletions src/KiBoards.sln
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,29 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.5.33516.290
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FDCEF06B-A89A-43CC-B505-4608DF29BBF7}") = "KiBoards", "KiBoards\KiBoards.csproj", "{5DC70E65-1093-4D72-9129-F0FFE3AF5151}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "KiBoards", "KiBoards\KiBoards.csproj", "{644D75DA-7457-4DC2-AD9B-2376A7C20BC1}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KiBoards.Tests", "KiBoards.Tests\KiBoards.Tests.csproj", "{BD23E63C-CC78-4714-A319-E492CC90178A}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{5DC70E65-1093-4D72-9129-F0FFE3AF5151}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5DC70E65-1093-4D72-9129-F0FFE3AF5151}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5DC70E65-1093-4D72-9129-F0FFE3AF5151}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5DC70E65-1093-4D72-9129-F0FFE3AF5151}.Release|Any CPU.Build.0 = Release|Any CPU
{644D75DA-7457-4DC2-AD9B-2376A7C20BC1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{644D75DA-7457-4DC2-AD9B-2376A7C20BC1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{644D75DA-7457-4DC2-AD9B-2376A7C20BC1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{644D75DA-7457-4DC2-AD9B-2376A7C20BC1}.Release|Any CPU.Build.0 = Release|Any CPU
{BD23E63C-CC78-4714-A319-E492CC90178A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{BD23E63C-CC78-4714-A319-E492CC90178A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BD23E63C-CC78-4714-A319-E492CC90178A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BD23E63C-CC78-4714-A319-E492CC90178A}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {58F0F7CE-57BF-43A9-8390-A15E0C1A9A66}
SolutionGuid = {F7A87B3B-2908-4E34-AC90-13E68B977B90}
EndGlobalSection
EndGlobal
7 changes: 0 additions & 7 deletions src/KiBoards/Class1.cs

This file was deleted.

9 changes: 9 additions & 0 deletions src/KiBoards/ITestContextMessage.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
using Xunit.Abstractions;

namespace KiBoards
{
internal interface ITestContextMessage : IMessageSinkMessage
{
public object Context { get; set; }
}
}
Loading

0 comments on commit b0f4bf3

Please sign in to comment.