Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
<PackageVersion Include="Microsoft.Testing.Extensions.TrxReport" Version="1.9.0" />
<PackageVersion Include="Microsoft.Testing.Extensions.CodeCoverage" Version="17.14.2" />
<PackageVersion Include="PublicApiGenerator" Version="11.4.6" />
<PackageVersion Include="MSTest.TestAdapter" Version="3.11.0" />
<PackageVersion Include="MSTest.TestFramework" Version="3.11.0" />
<PackageVersion Include="MSTest.TestAdapter" Version="4.0.1" />
<PackageVersion Include="MSTest.TestFramework" Version="4.0.1" />
</ItemGroup>
</Project>
3 changes: 2 additions & 1 deletion Pipeline/Build.FrameworkTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ partial class Build
Project[] FrameworkUnitTestProjects =>
[
Solution.Tests.Frameworks.aweXpect_Frameworks_Fallback_Tests,
Solution.Tests.Frameworks.aweXpect_Frameworks_MsTest_Tests,
Solution.Tests.Frameworks.aweXpect_Frameworks_MsTest3_Tests,
Solution.Tests.Frameworks.aweXpect_Frameworks_MsTest4_Tests,
Solution.Tests.Frameworks.aweXpect_Frameworks_NUnit4_Tests,
Solution.Tests.Frameworks.aweXpect_Frameworks_NUnit3_Tests,
Solution.Tests.Frameworks.aweXpect_Frameworks_Xunit2_Tests,
Expand Down
10 changes: 6 additions & 4 deletions Source/aweXpect.Frameworks/FrameworkGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -234,25 +234,27 @@ private interface ITestTimeoutException;

void IIncrementalGenerator.Initialize(IncrementalGeneratorInitializationContext context)
{
IncrementalValueProvider<(bool hasMsTest, bool hasNunit, bool hasTUnit, bool hasXunit2, bool hasXunit3Core, bool
IncrementalValueProvider<(bool hasMsTest3, bool hasMsTest4, bool hasNunit, bool hasTUnit, bool hasXunit2, bool hasXunit3Core, bool
hasXunit3Assert)> settings = context.CompilationProvider
.Select((c, _) =>
{
bool hasMsTest =
bool hasMsTest3 =
c.ReferencedAssemblyNames.Any(x => x.Name == "Microsoft.VisualStudio.TestPlatform.TestFramework");
bool hasMsTest4 =
c.ReferencedAssemblyNames.Any(x => x.Name == "MSTest.TestFramework");
bool hasNunit = c.ReferencedAssemblyNames.Any(x => x.Name == "nunit.framework");
bool hasTUnit = c.ReferencedAssemblyNames.Any(x => x.Name == "TUnit.Core") &&
c.ReferencedAssemblyNames.Any(x => x.Name == "TUnit.Assertions");
bool hasXunit2 = c.ReferencedAssemblyNames.Any(x => x.Name == "xunit.assert");
bool hasXunit3Core = c.ReferencedAssemblyNames.Any(x => x.Name == "xunit.v3.core");
bool hasXunit3Assert = c.ReferencedAssemblyNames.Any(x => x.Name == "xunit.v3.assert");
return (hasMsTest, hasNunit, hasTUnit, hasXunit2, hasXunit3Core, hasXunit3Assert);
return (hasMsTest3, hasMsTest4, hasNunit, hasTUnit, hasXunit2, hasXunit3Core, hasXunit3Assert);
});

// Generate the source from the captured values
context.RegisterSourceOutput(settings, static (spc, opts) =>
{
if (opts.hasMsTest)
if (opts.hasMsTest3 || opts.hasMsTest4)
{
spc.AddSource("MsTest.g.cs", MsTestAdapter);
Comment thread
vbreuss marked this conversation as resolved.
}
Expand Down
2 changes: 1 addition & 1 deletion Source/aweXpect.Frameworks/Properties/launchSettings.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"profiles": {
"Generators": {
"commandName": "DebugRoslynComponent",
"targetProject": "../../Tests/Frameworks/aweXpect.Frameworks.TUnit.Tests/aweXpect.Frameworks.TUnit.Tests.csproj"
"targetProject": "../../Tests/Frameworks/aweXpect.Frameworks.MsTest4.Tests/aweXpect.Frameworks.MsTest4.Tests.csproj"
Comment thread
vbreuss marked this conversation as resolved.
}
}
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
using System.Threading.Tasks;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace aweXpect.Frameworks.MsTest.Tests;
namespace aweXpect.Frameworks.MsTest3.Tests;

[TestClass]
public sealed class MsTestFrameworkTests
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<Project Sdk="Microsoft.NET.Sdk">

<ItemGroup>
<PackageReference Include="MSTest.TestAdapter" VersionOverride="[3.11.0,4.0.0)"/>
<PackageReference Include="MSTest.TestFramework" VersionOverride="[3.11.0,4.0.0)"/>
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\..\..\Source\aweXpect.Frameworks\aweXpect.Frameworks.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
<ProjectReference Include="..\..\..\Source\aweXpect\aweXpect.csproj"/>
</ItemGroup>

<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk"/>
<PackageReference Include="coverlet.collector">
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
</ItemGroup>

</Project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
using System.Threading.Tasks;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace aweXpect.Frameworks.MsTest4.Tests;

[TestClass]
public sealed class MsTestFrameworkTests
{
[TestMethod]
public async Task OnFail_WhenUsingMsTestAsTestFramework_ShouldThrowAssertFailedException()
{
void Act()
=> Fail.Test("my message");

await Expect.That(Act).Throws<AssertFailedException>()
.WithMessage("my message");
}

[TestMethod]
public async Task OnInconclusive_WhenUsingMsTestAsTestFramework_ShouldThrowAssertInconclusiveException()
{
void Act()
=> Fail.Inconclusive("my message");

await Expect.That(Act).Throws<AssertInconclusiveException>()
.WithMessage("my message");
}

[TestMethod]
public async Task OnSkip_WhenUsingMsTestAsTestFramework_ShouldThrowAssertInconclusiveException()
{
void Act()
=> Skip.Test("my message");

await Expect.That(Act).Throws<AssertInconclusiveException>()
.WithMessage("my message");
}
}
9 changes: 8 additions & 1 deletion aweXpect.sln
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "aweXpect.Benchmarks", "Benc
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "aweXpect.Frameworks.Fallback.Tests", "Tests\Frameworks\aweXpect.Frameworks.Fallback.Tests\aweXpect.Frameworks.Fallback.Tests.csproj", "{A672BA16-8BE2-4E4F-A6DD-59911284EDF8}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "aweXpect.Frameworks.MsTest.Tests", "Tests\Frameworks\aweXpect.Frameworks.MsTest.Tests\aweXpect.Frameworks.MsTest.Tests.csproj", "{1EC393AD-DE25-4C0E-A8B5-B19A2843A4E2}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "aweXpect.Frameworks.MsTest3.Tests", "Tests\Frameworks\aweXpect.Frameworks.MsTest3.Tests\aweXpect.Frameworks.MsTest3.Tests.csproj", "{1EC393AD-DE25-4C0E-A8B5-B19A2843A4E2}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "aweXpect.Frameworks.Xunit3.Tests", "Tests\Frameworks\aweXpect.Frameworks.Xunit3.Tests\aweXpect.Frameworks.Xunit3.Tests.csproj", "{5D0060AC-986B-4C28-A871-BA0EC9223DA7}"
EndProject
Expand All @@ -97,6 +97,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "aweXpect.SourceGenerators",
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "aweXpect.Frameworks", "Source\aweXpect.Frameworks\aweXpect.Frameworks.csproj", "{75E57A42-1C09-4923-B1E1-A27937189E9A}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "aweXpect.Frameworks.MsTest4.Tests", "Tests\Frameworks\aweXpect.Frameworks.MsTest4.Tests\aweXpect.Frameworks.MsTest4.Tests.csproj", "{14C9979C-21EF-424F-90A5-A7B2D96E297E}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down Expand Up @@ -189,6 +191,10 @@ Global
{75E57A42-1C09-4923-B1E1-A27937189E9A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{75E57A42-1C09-4923-B1E1-A27937189E9A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{75E57A42-1C09-4923-B1E1-A27937189E9A}.Release|Any CPU.Build.0 = Release|Any CPU
{14C9979C-21EF-424F-90A5-A7B2D96E297E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{14C9979C-21EF-424F-90A5-A7B2D96E297E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{14C9979C-21EF-424F-90A5-A7B2D96E297E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{14C9979C-21EF-424F-90A5-A7B2D96E297E}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{97D64B45-D97E-4A94-9EF0-37BF25310EBA} = {9CC57AD0-4984-4618-96EA-01FFFCCD84FA}
Expand All @@ -213,5 +219,6 @@ Global
{4A940BE9-D9E0-4004-89D4-5D6E8CB37208} = {9CC57AD0-4984-4618-96EA-01FFFCCD84FA}
{6C70D2A0-3BB0-4FFC-9422-E0213562176C} = {9CC57AD0-4984-4618-96EA-01FFFCCD84FA}
{8FF9344F-E84E-47B8-AB28-575EF15E5C59} = {9CC57AD0-4984-4618-96EA-01FFFCCD84FA}
{14C9979C-21EF-424F-90A5-A7B2D96E297E} = {97A9E15D-5A21-4BA1-940B-7F42933DE0A5}
EndGlobalSection
EndGlobal
Loading