mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 19:54:57 +08:00
Bunch of renames and class re-organization
--HG-- branch : dev
This commit is contained in:
@@ -1,13 +0,0 @@
|
||||
using NUnit.Framework;
|
||||
using Orchard.Widgets.SimpleScripting;
|
||||
|
||||
namespace Orchard.Tests.Modules.SimpleScriptingTests {
|
||||
[TestFixture]
|
||||
public class ExpressionEvaluatorTests {
|
||||
[Test]
|
||||
public void EvaluateSimpleConstant() {
|
||||
var tree = new ExpressionParser("1*2+3").Parse();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@@ -1,76 +0,0 @@
|
||||
using NUnit.Framework;
|
||||
using Orchard.Widgets.SimpleScripting;
|
||||
|
||||
namespace Orchard.Tests.Modules.SimpleScriptingTests {
|
||||
[TestFixture]
|
||||
public class ExpressionTokenizerTests {
|
||||
|
||||
[Test]
|
||||
public void LexerShouldProcessSingleQuotedStringLiteral() {
|
||||
TestStringLiteral(@"'toto'", @"toto", TokenKind.SingleQuotedStringLiteral);
|
||||
TestStringLiteral(@"'to\'to'", @"to'to", TokenKind.SingleQuotedStringLiteral);
|
||||
TestStringLiteral(@"'to\\to'", @"to\to", TokenKind.SingleQuotedStringLiteral);
|
||||
TestStringLiteral(@"'to\ato'", @"to\ato", TokenKind.SingleQuotedStringLiteral);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void LexerShouldProcessStringLiteral() {
|
||||
TestStringLiteral(@"""toto""", @"toto", TokenKind.StringLiteral);
|
||||
TestStringLiteral(@"""to\'to""", @"to'to", TokenKind.StringLiteral);
|
||||
TestStringLiteral(@"""to\\to""", @"to\to", TokenKind.StringLiteral);
|
||||
TestStringLiteral(@"""to\ato""", @"toato", TokenKind.StringLiteral);
|
||||
}
|
||||
|
||||
private void TestStringLiteral(string value, string expected, TokenKind expectedTokenKind) {
|
||||
var lexer = new ExpressionTokenizer(value);
|
||||
var token1 = lexer.NextToken();
|
||||
Assert.That(token1.Kind, Is.EqualTo(expectedTokenKind));
|
||||
Assert.That(token1.Value, Is.EqualTo(expected));
|
||||
|
||||
var token2 = lexer.NextToken();
|
||||
Assert.That(token2.Kind, Is.EqualTo(TokenKind.Eof));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void LexerShouldProcessReservedWords() {
|
||||
TestReservedWord("true", true, TokenKind.True);
|
||||
TestReservedWord("false", false, TokenKind.False);
|
||||
TestReservedWord("not", null, TokenKind.Not);
|
||||
TestReservedWord("and", null, TokenKind.And);
|
||||
TestReservedWord("or", null, TokenKind.Or);
|
||||
}
|
||||
|
||||
private void TestReservedWord(string expression, object value, TokenKind expectedTokenKind) {
|
||||
var lexer = new ExpressionTokenizer(expression);
|
||||
var token1 = lexer.NextToken();
|
||||
Assert.That(token1.Kind, Is.EqualTo(expectedTokenKind));
|
||||
Assert.That(token1.Value, Is.EqualTo(value));
|
||||
|
||||
var token2 = lexer.NextToken();
|
||||
Assert.That(token2.Kind, Is.EqualTo(TokenKind.Eof));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void LexerShouldProcesSequenceOfTokens() {
|
||||
CheckTokenSequence("true false", TokenKind.True, TokenKind.False);
|
||||
CheckTokenSequence("true toto false", TokenKind.True, TokenKind.Identifier, TokenKind.False);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void LexerShouldProcesSequenceOfTokens2() {
|
||||
CheckTokenSequence("1+2*3", TokenKind.Integer, TokenKind.Plus, TokenKind.Integer, TokenKind.Mul, TokenKind.Integer);
|
||||
}
|
||||
|
||||
|
||||
private void CheckTokenSequence(string expression, params TokenKind[] tokenKinds) {
|
||||
var lexer = new ExpressionTokenizer(expression);
|
||||
foreach (var kind in tokenKinds) {
|
||||
var token = lexer.NextToken();
|
||||
Assert.That(token.Kind, Is.EqualTo(kind));
|
||||
}
|
||||
|
||||
var token2 = lexer.NextToken();
|
||||
Assert.That(token2.Kind, Is.EqualTo(TokenKind.Eof));
|
||||
}
|
||||
}
|
||||
}
|
@@ -1,17 +0,0 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using NUnit.Framework;
|
||||
using Orchard.Tests.Stubs;
|
||||
using Orchard.Widgets.Services;
|
||||
using Orchard.Widgets.SimpleScripting;
|
||||
|
||||
namespace Orchard.Tests.Modules.SimpleScriptingTests {
|
||||
[TestFixture]
|
||||
public class SimpleScriptingTests {
|
||||
[Test]
|
||||
public void EngineUnderstandsPrimitiveValues() {
|
||||
var engine = new ScriptingEngine(Enumerable.Empty<IRuleProvider>(), new StubCacheManager());
|
||||
Assert.That(engine.Matches("true"), Is.True);
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user