public async Task EvaluatesExpression() { TestExecutionContext context = new TestExecutionContext(); context.ScriptHelper = new ScriptHelper(context); TestDocument document = new TestDocument(); EvalShortcode shortcode = new EvalShortcode(); string shortcodeContent = "1 + 2"; // When string result = await shortcode.ExecuteAsync(null, shortcodeContent, document, context); // Then result.ShouldBe("3"); }
public async Task RendersEval() { TestExecutionContext context = new TestExecutionContext(); context.ScriptHelper = new ScriptHelper(context); TestDocument document = new TestDocument(); EvalShortcode shortcode = new EvalShortcode(); string shortcodeContent = "return 1 + 2;"; // When ShortcodeResult result = await shortcode.ExecuteAsync(null, shortcodeContent, document, context); // Then result.ContentProvider.GetStream().ReadToEnd().ShouldBe("3"); }
public async Task CanAccessDocumentMetadata() { TestExecutionContext context = new TestExecutionContext(); TestDocument document = new TestDocument { { "Foo", "4" } }; EvalShortcode shortcode = new EvalShortcode(); string shortcodeContent = "return 1 + Document.GetInt(\"Foo\");"; // When TestDocument result = (TestDocument)await shortcode.ExecuteAsync(null, shortcodeContent, document, context); // Then result.Content.ShouldBe("5"); }
public async Task CanAccessMetadataAsProperties() { TestExecutionContext context = new TestExecutionContext(); context.ScriptHelper = new ScriptHelper(context); TestDocument document = new TestDocument { { "Foo", 4 } }; EvalShortcode shortcode = new EvalShortcode(); string shortcodeContent = "return 1 + (int)Foo;"; // When string result = await shortcode.ExecuteAsync(null, shortcodeContent, document, context); // Then result.ShouldBe("5"); }
public async Task CanAccessMetadata() { TestExecutionContext context = new TestExecutionContext(); context.ScriptHelper = new ScriptHelper(context); TestDocument document = new TestDocument { { "Foo", "4" } }; EvalShortcode shortcode = new EvalShortcode(); string shortcodeContent = "return 1 + GetInt(\"Foo\");"; // When ShortcodeResult result = await shortcode.ExecuteAsync(null, shortcodeContent, document, context); // Then result.ContentProvider.GetStream().ReadToEnd().ShouldBe("5"); }