Exemplo n.º 1
0
        public async Task RunAsync_WithContentSetsOutputsContent()
        {
            // Arrange
            var runner           = new TagHelperRunner();
            var executionContext = new TagHelperExecutionContext("p");
            var tagHelper        = new ExecutableTagHelper();
            var contentWriter    = new StringWriter(new StringBuilder("Hello World"));

            // Act
            executionContext.Add(tagHelper);
            var output = await runner.RunAsync(executionContext, contentWriter);

            // Assert
            Assert.Equal(output.Content, "Hello World");
        }
Exemplo n.º 2
0
        public async Task RunAsync_ProcessesAllTagHelpers()
        {
            // Arrange
            var runner               = new TagHelperRunner();
            var executionContext     = new TagHelperExecutionContext("p", selfClosing: false);
            var executableTagHelper1 = new ExecutableTagHelper();
            var executableTagHelper2 = new ExecutableTagHelper();

            // Act
            executionContext.Add(executableTagHelper1);
            executionContext.Add(executableTagHelper2);
            await runner.RunAsync(executionContext);

            // Assert
            Assert.True(executableTagHelper1.Processed);
            Assert.True(executableTagHelper2.Processed);
        }
Exemplo n.º 3
0
        public async Task RunAsync_AllowsModificationOfTagHelperOutput()
        {
            // Arrange
            var runner              = new TagHelperRunner();
            var executionContext    = new TagHelperExecutionContext("p", selfClosing: false);
            var executableTagHelper = new ExecutableTagHelper();

            // Act
            executionContext.Add(executableTagHelper);
            executionContext.AddHtmlAttribute("class", "btn");
            var output = await runner.RunAsync(executionContext);

            // Assert
            Assert.Equal("foo", output.TagName);
            Assert.Equal("somethingelse", output.Attributes["class"]);
            Assert.Equal("world", output.Attributes["hello"]);
            Assert.Equal(true, output.SelfClosing);
        }
Exemplo n.º 4
0
        public async Task RunAsync_AllowsModificationOfTagHelperOutput()
        {
            // Arrange
            var runner              = new TagHelperRunner();
            var executionContext    = new TagHelperExecutionContext("p", TagMode.StartTagAndEndTag);
            var executableTagHelper = new ExecutableTagHelper();

            // Act
            executionContext.Add(executableTagHelper);
            executionContext.AddHtmlAttribute("class", "btn", HtmlAttributeValueStyle.DoubleQuotes);
            await runner.RunAsync(executionContext);

            // Assert
            var output = executionContext.Output;

            Assert.Equal("foo", output.TagName);
            Assert.Equal("somethingelse", output.Attributes["class"].Value);
            Assert.Equal("world", output.Attributes["hello"].Value);
            Assert.Equal(TagMode.SelfClosing, output.TagMode);
        }
Exemplo n.º 5
0
        public async Task RunAsync_AllowsModificationOfTagHelperOutput()
        {
            // Arrange
            var runner = new TagHelperRunner();
            var executionContext = new TagHelperExecutionContext("p", TagMode.StartTagAndEndTag);
            var executableTagHelper = new ExecutableTagHelper();

            // Act
            executionContext.Add(executableTagHelper);
            executionContext.AddHtmlAttribute("class", "btn");
            var output = await runner.RunAsync(executionContext);

            // Assert
            Assert.Equal("foo", output.TagName);
            Assert.Equal("somethingelse", output.Attributes["class"].Value);
            Assert.Equal("world", output.Attributes["hello"].Value);
            Assert.Equal(TagMode.SelfClosing, output.TagMode);
        }
Exemplo n.º 6
0
        public async Task RunAsync_ProcessesAllTagHelpers()
        {
            // Arrange
            var runner = new TagHelperRunner();
            var executionContext = new TagHelperExecutionContext("p", TagMode.StartTagAndEndTag);
            var executableTagHelper1 = new ExecutableTagHelper();
            var executableTagHelper2 = new ExecutableTagHelper();

            // Act
            executionContext.Add(executableTagHelper1);
            executionContext.Add(executableTagHelper2);
            await runner.RunAsync(executionContext);

            // Assert
            Assert.True(executableTagHelper1.Processed);
            Assert.True(executableTagHelper2.Processed);
        }