irules/test/test.core/ClauseTests.cs

59 lines
929 B
C#

11 months ago
using Irony.Interpreter;
using irules.core;
namespace test.core;
public class ClauseTests : GrammarTester
{
10 months ago
public ClauseTests() : base()
11 months ago
{
}
[Fact]
public void TestA()
{
10 months ago
AssertParsed("A");
11 months ago
}
10 months ago
11 months ago
[Fact]
public void TestNotA()
{
10 months ago
AssertParsed("^A");
11 months ago
}
[Fact]
public void TestAandB()
{
10 months ago
AssertParsed("A&B");
11 months ago
}
[Fact]
public void TestAorB()
{
10 months ago
AssertParsed("A|B");
11 months ago
}
[Fact]
public void TestAorNotB()
{
10 months ago
AssertParsed("A|^B");
11 months ago
}
[Fact]
public void TestAandNotB()
{
10 months ago
AssertParsed("A&^B");
11 months ago
}
[Fact]
public void TestNotAandNotB()
{
10 months ago
AssertParsed("^A&^B");
11 months ago
}
[Fact]
public void TestSyntactError()
{
var ex = Assert.Throws<ScriptException>(()=>
Parse("B+A"));
Assert.Equal(0, ex.Location.Line);
Assert.Equal(1, ex.Location.Column);
}
}