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

View File

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

View File

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

View File

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

View File

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