pgLabII/pgLabII.PgUtils.Tests/ConnectionStrings/Util/UnitTestTokenizerTests.cs

82 lines
1.7 KiB
C#
Raw Normal View History

namespace pgLabII.PgUtils.Tests.ConnectionStrings.Util;
public class UnitTestTokenizerTests
{
private readonly UnitTestTokenizer _sut = new();
[Fact]
public void Eof_True()
{
Assert.True(_sut.Eof);
}
[Fact]
public void Eof_False()
{
_sut.AddString("a");
Assert.False(_sut.Eof);
}
[Fact]
public void GetKeyword_Success()
{
_sut.AddString("a");
Assert.Equal("a", _sut.GetKeyword());
}
[Fact]
public void GetKeyword_Unexpected_Throws()
{
_sut.AddEquals();
Assert.Throws<Exception>(() => _sut.GetKeyword());
}
[Fact]
public void GetKeyword_SimulatesException()
{
_sut.AddException(new ArgumentNullException());
Assert.Throws<ArgumentNullException>(() => _sut.GetKeyword());
}
[Fact]
public void GetValue_Success()
{
_sut.AddString("a");
Assert.Equal("a", _sut.GetValue());
}
[Fact]
public void GetValue_Unexpected_Throws()
{
_sut.AddEquals();
Assert.Throws<Exception>(() => _sut.GetValue());
}
[Fact]
public void GetValue_SimulatesException()
{
_sut.AddException(new ArgumentNullException());
Assert.Throws<ArgumentNullException>(() => _sut.GetValue());
}
[Fact]
public void ConsumeEquals_Success()
{
_sut.AddEquals();
_sut.ConsumeEquals();
}
[Fact]
public void ConsumeEquals_Unexpected_Throws1()
{
Assert.Throws<Exception>(() => _sut.ConsumeEquals());
}
[Fact]
public void ConsumeEquals_Unexpected_Throws2()
{
_sut.AddString("t");
Assert.Throws<Exception>(() => _sut.ConsumeEquals());
}
}