Use XUnit instead of NUnit

This commit is contained in:
Alexander Luzgarev 2018-10-25 19:15:02 +02:00
parent 9490864ef3
commit 27a7cf7fd4
5 changed files with 30 additions and 33 deletions

View File

@ -1,4 +1,4 @@
using NUnit.Framework; using Xunit;
namespace Parser.Tests namespace Parser.Tests
{ {
@ -11,26 +11,26 @@ namespace Parser.Tests
return parser; return parser;
} }
[Test] [Fact]
public void ParseAssignmentExpression() public void ParseAssignmentExpression()
{ {
var text = "a = b"; var text = "a = b";
var sut = GetSut(text); var sut = GetSut(text);
var actual = sut.Parse(); var actual = sut.Parse();
var assignment = actual.Root.StatementList[0].AsNode(); var assignment = actual.Root.StatementList[0].AsNode();
Assert.IsInstanceOf<ExpressionStatementSyntaxNode>(assignment); Assert.IsType<ExpressionStatementSyntaxNode>(assignment);
Assert.IsInstanceOf<AssignmentExpressionSyntaxNode>(((ExpressionStatementSyntaxNode)assignment).Expression); Assert.IsType<AssignmentExpressionSyntaxNode>(((ExpressionStatementSyntaxNode)assignment).Expression);
} }
[Test] [Fact]
public void ParseAssignmentExpression_Incomplete() public void ParseAssignmentExpression_Incomplete()
{ {
var text = "a = "; var text = "a = ";
var sut = GetSut(text); var sut = GetSut(text);
var actual = sut.Parse(); var actual = sut.Parse();
var assignment = actual.Root.StatementList[0].AsNode(); var assignment = actual.Root.StatementList[0].AsNode();
Assert.IsInstanceOf<ExpressionStatementSyntaxNode>(assignment); Assert.IsType<ExpressionStatementSyntaxNode>(assignment);
Assert.IsInstanceOf<AssignmentExpressionSyntaxNode>(((ExpressionStatementSyntaxNode)assignment).Expression); Assert.IsType<AssignmentExpressionSyntaxNode>(((ExpressionStatementSyntaxNode)assignment).Expression);
} }
} }
} }

View File

@ -5,8 +5,8 @@
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" /> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
<PackageReference Include="NUnit" Version="3.10.1" /> <PackageReference Include="xunit" Version="2.3.1" />
<PackageReference Include="NUnit3TestAdapter" Version="3.10.0" /> <PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\Parser\Parser.csproj" /> <ProjectReference Include="..\Parser\Parser.csproj" />

View File

@ -1,36 +1,35 @@
using NUnit.Framework; using Xunit;
namespace Parser.Tests namespace Parser.Tests
{ {
[TestFixture]
public class TestWindowShould public class TestWindowShould
{ {
[Test] [Fact]
public void ReturnEofGivenEmptyText() public void ReturnEofGivenEmptyText()
{ {
var sut = new TextWindow(""); var sut = new TextWindow("");
Assert.IsTrue(sut.IsEof()); Assert.True(sut.IsEof());
} }
[Test] [Fact]
public void ReturnNotEofGivenNonEmptyText() public void ReturnNotEofGivenNonEmptyText()
{ {
var sut = new TextWindow("Text."); var sut = new TextWindow("Text.");
Assert.IsFalse(sut.IsEof()); Assert.False(sut.IsEof());
} }
[Test] [Fact]
public void ReturnCharsInCorrectOrder() public void ReturnCharsInCorrectOrder()
{ {
var text = "abc"; var text = "abc";
var sut = new TextWindow(text); var sut = new TextWindow(text);
Assert.AreEqual('a', sut.PeekChar()); Assert.Equal('a', sut.PeekChar());
sut.ConsumeChar(); sut.ConsumeChar();
Assert.AreEqual('b', sut.PeekChar()); Assert.Equal('b', sut.PeekChar());
sut.ConsumeChar(); sut.ConsumeChar();
Assert.AreEqual('c', sut.PeekChar()); Assert.Equal('c', sut.PeekChar());
sut.ConsumeChar(); sut.ConsumeChar();
Assert.IsTrue(sut.IsEof()); Assert.True(sut.IsEof());
} }
} }
} }

View File

@ -1,29 +1,28 @@
using NUnit.Framework; using Xunit;
namespace Parser.Tests namespace Parser.Tests
{ {
[TestFixture]
public class TestWindowWithNullShould public class TestWindowWithNullShould
{ {
[Test] [Fact]
public void ReturnNullGivenEmptyText() public void ReturnNullGivenEmptyText()
{ {
var sut = new TextWindowWithNull(""); var sut = new TextWindowWithNull("");
Assert.IsTrue(sut.PeekChar() == '\0'); Assert.True(sut.PeekChar() == '\0');
} }
[Test] [Fact]
public void ReturnCharsInCorrectOrder() public void ReturnCharsInCorrectOrder()
{ {
var text = "abc"; var text = "abc";
var sut = new TextWindowWithNull(text); var sut = new TextWindowWithNull(text);
Assert.AreEqual('a', sut.PeekChar()); Assert.Equal('a', sut.PeekChar());
sut.ConsumeChar(); sut.ConsumeChar();
Assert.AreEqual('b', sut.PeekChar()); Assert.Equal('b', sut.PeekChar());
sut.ConsumeChar(); sut.ConsumeChar();
Assert.AreEqual('c', sut.PeekChar()); Assert.Equal('c', sut.PeekChar());
sut.ConsumeChar(); sut.ConsumeChar();
Assert.AreEqual('\0', sut.PeekChar()); Assert.Equal('\0', sut.PeekChar());
} }
} }
} }

View File

@ -1,7 +1,7 @@
using System; using System;
using NUnit.Framework;
using System.Collections.Generic; using System.Collections.Generic;
using System.IO; using System.IO;
using Xunit;
namespace Parser.Tests namespace Parser.Tests
{ {
@ -49,7 +49,7 @@ namespace Parser.Tests
var parser = CreateParser(window); var parser = CreateParser(window);
var tree = parser.Parse(); var tree = parser.Parse();
var actual = tree.Root.FullText; var actual = tree.Root.FullText;
Assert.That(actual == text); Assert.Equal(text, actual);
} }
private static void ProcessDirectory(string directory) private static void ProcessDirectory(string directory)
@ -72,8 +72,7 @@ namespace Parser.Tests
} }
} }
[Category("Slow")] [Fact]
[Test]
public void TestEverything() public void TestEverything()
{ {
ProcessDirectory(BaseDirectory); ProcessDirectory(BaseDirectory);