Remove RazorIRBuilder.Document
This commit is contained in:
parent
2ec2b98f83
commit
fd3a34b000
|
|
@ -19,9 +19,9 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
// This might not have been set if there are no tag helpers.
|
||||
var tagHelperContext = codeDocument.GetTagHelperContext();
|
||||
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = (DocumentIRNode)builder.Current;
|
||||
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
|
||||
document.Options = syntaxTree.Options;
|
||||
|
||||
|
|
|
|||
|
|
@ -7,11 +7,6 @@ namespace Microsoft.AspNetCore.Razor.Language.Intermediate
|
|||
{
|
||||
public abstract class RazorIRBuilder
|
||||
{
|
||||
public static RazorIRBuilder Document()
|
||||
{
|
||||
return Create(new DocumentIRNode());
|
||||
}
|
||||
|
||||
public static RazorIRBuilder Create(RazorIRNode root)
|
||||
{
|
||||
if (root == null)
|
||||
|
|
|
|||
|
|
@ -14,7 +14,9 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void InstrumentationPass_InstrumentsHtml()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
|
||||
builder.Push(new HtmlContentIRNode()
|
||||
{
|
||||
Source = CreateSource(1),
|
||||
|
|
@ -26,20 +28,18 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
Source = CreateSource(1)
|
||||
});
|
||||
builder.Pop();
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
|
||||
|
||||
var pass = new InstrumentationPass()
|
||||
{
|
||||
Engine = RazorEngine.CreateEmpty(b => { }),
|
||||
};
|
||||
|
||||
// Act
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), irDocument);
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), document);
|
||||
|
||||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
document,
|
||||
n => BeginInstrumentation("1, 1, true", n),
|
||||
n => RazorIRAssert.Html("Hi", n),
|
||||
n => EndInstrumentation(n));
|
||||
|
|
@ -49,7 +49,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void InstrumentationPass_SkipsHtml_WithoutLocation()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
builder.Push(new HtmlContentIRNode());
|
||||
builder.Add(new RazorIRToken()
|
||||
{
|
||||
|
|
@ -58,19 +59,17 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
});
|
||||
builder.Pop();
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
|
||||
var pass = new InstrumentationPass()
|
||||
{
|
||||
Engine = RazorEngine.CreateEmpty(b => { }),
|
||||
};
|
||||
|
||||
// Act
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), irDocument);
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), document);
|
||||
|
||||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
document,
|
||||
n => RazorIRAssert.Html("Hi", n));
|
||||
}
|
||||
|
||||
|
|
@ -78,7 +77,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void InstrumentationPass_InstrumentsCSharpExpression()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
builder.Push(new CSharpExpressionIRNode()
|
||||
{
|
||||
Source = CreateSource(2),
|
||||
|
|
@ -89,19 +89,17 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
Kind = RazorIRToken.TokenKind.CSharp,
|
||||
});
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
|
||||
var pass = new InstrumentationPass()
|
||||
{
|
||||
Engine = RazorEngine.CreateEmpty(b => { }),
|
||||
};
|
||||
|
||||
// Act
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), irDocument);
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), document);
|
||||
|
||||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
document,
|
||||
n => BeginInstrumentation("2, 2, false", n),
|
||||
n => CSharpExpression("Hi", n),
|
||||
n => EndInstrumentation(n));
|
||||
|
|
@ -111,7 +109,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void InstrumentationPass_SkipsCSharpExpression_WithoutLocation()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
builder.Push(new CSharpExpressionIRNode());
|
||||
builder.Add(new RazorIRToken()
|
||||
{
|
||||
|
|
@ -119,19 +118,17 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
Kind = RazorIRToken.TokenKind.CSharp,
|
||||
});
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
|
||||
var pass = new InstrumentationPass()
|
||||
{
|
||||
Engine = RazorEngine.CreateEmpty(b => { }),
|
||||
};
|
||||
|
||||
// Act
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), irDocument);
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), document);
|
||||
|
||||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
document,
|
||||
n => CSharpExpression("Hi", n));
|
||||
}
|
||||
|
||||
|
|
@ -139,7 +136,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void InstrumentationPass_SkipsCSharpExpression_InsideTagHelperAttribute()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
builder.Push(new TagHelperIRNode()
|
||||
{
|
||||
Source = CreateSource(3)
|
||||
|
|
@ -158,19 +156,17 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
Kind = RazorIRToken.TokenKind.CSharp,
|
||||
});
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
|
||||
var pass = new InstrumentationPass()
|
||||
{
|
||||
Engine = RazorEngine.CreateEmpty(b => { }),
|
||||
};
|
||||
|
||||
// Act
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), irDocument);
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), document);
|
||||
|
||||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
document,
|
||||
n =>
|
||||
{
|
||||
Assert.IsType<TagHelperIRNode>(n);
|
||||
|
|
@ -190,7 +186,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void InstrumentationPass_SkipsCSharpExpression_InsideTagHelperProperty()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
builder.Push(new TagHelperIRNode()
|
||||
{
|
||||
Source = CreateSource(3)
|
||||
|
|
@ -209,19 +206,17 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
Kind = RazorIRToken.TokenKind.CSharp,
|
||||
});
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
|
||||
var pass = new InstrumentationPass()
|
||||
{
|
||||
Engine = RazorEngine.CreateEmpty(b => { }),
|
||||
};
|
||||
|
||||
// Act
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), irDocument);
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), document);
|
||||
|
||||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
document,
|
||||
n =>
|
||||
{
|
||||
Assert.IsType<TagHelperIRNode>(n);
|
||||
|
|
@ -241,7 +236,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void InstrumentationPass_InstrumentsExecuteTagHelper_InsideTagHelper()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
builder.Push(new TagHelperIRNode()
|
||||
{
|
||||
Source = CreateSource(3),
|
||||
|
|
@ -249,19 +245,17 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
|
||||
builder.Add(new ExecuteTagHelpersIRNode());
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
|
||||
var pass = new InstrumentationPass()
|
||||
{
|
||||
Engine = RazorEngine.CreateEmpty(b => { }),
|
||||
};
|
||||
|
||||
// Act
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), irDocument);
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), document);
|
||||
|
||||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
document,
|
||||
n =>
|
||||
{
|
||||
Assert.IsType<TagHelperIRNode>(n);
|
||||
|
|
@ -277,24 +271,23 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void InstrumentationPass_SkipsExecuteTagHelper_WithoutLocation()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
builder.Push(new TagHelperIRNode());
|
||||
|
||||
builder.Add(new ExecuteTagHelpersIRNode());
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
|
||||
var pass = new InstrumentationPass()
|
||||
{
|
||||
Engine = RazorEngine.CreateEmpty(b => { }),
|
||||
};
|
||||
|
||||
// Act
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), irDocument);
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), document);
|
||||
|
||||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
document,
|
||||
n =>
|
||||
{
|
||||
Assert.IsType<TagHelperIRNode>(n);
|
||||
|
|
@ -308,7 +301,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void InstrumentationPass_SkipsExecuteTagHelper_MalformedTagHelper()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
builder.Push(new TagHelperIRNode()
|
||||
{
|
||||
Source = CreateSource(3),
|
||||
|
|
@ -316,19 +310,17 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
builder.Push(new CSharpExpressionIRNode());
|
||||
builder.Add(new ExecuteTagHelpersIRNode()); // Malformed
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
|
||||
var pass = new InstrumentationPass()
|
||||
{
|
||||
Engine = RazorEngine.CreateEmpty(b => { }),
|
||||
};
|
||||
|
||||
// Act
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), irDocument);
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), document);
|
||||
|
||||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
document,
|
||||
n =>
|
||||
{
|
||||
Assert.IsType<TagHelperIRNode>(n);
|
||||
|
|
|
|||
|
|
@ -117,7 +117,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void Pass_SetsNamespaceAndClassName_ComputedFromImports()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
|
||||
builder.Push(new DirectiveIRNode()
|
||||
{
|
||||
|
|
@ -132,9 +133,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
|
||||
var @class = new ClassDeclarationIRNode() { Name = "default" };
|
||||
builder.Add(@class);
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
irDocument.DocumentKind = RazorPageDocumentClassifierPass.RazorPageDocumentKind;
|
||||
|
||||
document.DocumentKind = RazorPageDocumentClassifierPass.RazorPageDocumentKind;
|
||||
|
||||
var codeDocument = RazorCodeDocument.Create(RazorSourceDocument.Create("ignored", "/Account/Manage/AddUser.cshtml"));
|
||||
|
||||
|
|
@ -142,7 +142,7 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
pass.Engine = RazorEngine.CreateEmpty(b => { });
|
||||
|
||||
// Act
|
||||
pass.Execute(codeDocument, irDocument);
|
||||
pass.Execute(codeDocument, document);
|
||||
|
||||
// Assert
|
||||
Assert.Equal("WebApplication.Account.Manage", @namespace.Content);
|
||||
|
|
@ -154,7 +154,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void Pass_SetsNamespaceAndClassName_ComputedFromSource()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
|
||||
// This will be ignored.
|
||||
builder.Push(new DirectiveIRNode()
|
||||
|
|
@ -179,9 +180,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
|
||||
var @class = new ClassDeclarationIRNode() { Name = "default" };
|
||||
builder.Add(@class);
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
irDocument.DocumentKind = RazorPageDocumentClassifierPass.RazorPageDocumentKind;
|
||||
|
||||
document.DocumentKind = RazorPageDocumentClassifierPass.RazorPageDocumentKind;
|
||||
|
||||
var codeDocument = RazorCodeDocument.Create(RazorSourceDocument.Create("ignored", "/Account/Manage/AddUser.cshtml"));
|
||||
|
||||
|
|
@ -189,7 +189,7 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
pass.Engine = RazorEngine.CreateEmpty(b => { });
|
||||
|
||||
// Act
|
||||
pass.Execute(codeDocument, irDocument);
|
||||
pass.Execute(codeDocument, document);
|
||||
|
||||
// Assert
|
||||
Assert.Equal("WebApplication.Account.Manage", @namespace.Content);
|
||||
|
|
@ -201,7 +201,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void Pass_SetsNamespaceAndClassName_ComputedFromSource_ForView()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
|
||||
// This will be ignored.
|
||||
builder.Push(new DirectiveIRNode()
|
||||
|
|
@ -226,9 +227,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
|
||||
var @class = new ClassDeclarationIRNode() { Name = "default" };
|
||||
builder.Add(@class);
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
irDocument.DocumentKind = MvcViewDocumentClassifierPass.MvcViewDocumentKind;
|
||||
|
||||
document.DocumentKind = MvcViewDocumentClassifierPass.MvcViewDocumentKind;
|
||||
|
||||
var codeDocument = RazorCodeDocument.Create(RazorSourceDocument.Create("ignored", "/Account/Manage/AddUser.cshtml"));
|
||||
|
||||
|
|
@ -236,7 +236,7 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
pass.Engine = RazorEngine.CreateEmpty(b => { });
|
||||
|
||||
// Act
|
||||
pass.Execute(codeDocument, irDocument);
|
||||
pass.Execute(codeDocument, document);
|
||||
|
||||
// Assert
|
||||
Assert.Equal("WebApplication.Account.Manage", @namespace.Content);
|
||||
|
|
@ -249,7 +249,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void Pass_SetsNamespaceButNotClassName_VerbatimFromImports()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
|
||||
builder.Push(new DirectiveIRNode()
|
||||
{
|
||||
|
|
@ -264,9 +265,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
|
||||
var @class = new ClassDeclarationIRNode() { Name = "default" };
|
||||
builder.Add(@class);
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
irDocument.DocumentKind = RazorPageDocumentClassifierPass.RazorPageDocumentKind;
|
||||
|
||||
document.DocumentKind = RazorPageDocumentClassifierPass.RazorPageDocumentKind;
|
||||
|
||||
var codeDocument = RazorCodeDocument.Create(RazorSourceDocument.Create("ignored", "/Account/Manage/AddUser.cshtml"));
|
||||
|
||||
|
|
@ -274,7 +274,7 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
pass.Engine = RazorEngine.CreateEmpty(b => { });
|
||||
|
||||
// Act
|
||||
pass.Execute(codeDocument, irDocument);
|
||||
pass.Execute(codeDocument, document);
|
||||
|
||||
// Assert
|
||||
Assert.Equal("WebApplication.Account", @namespace.Content);
|
||||
|
|
@ -285,7 +285,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
public void Pass_DoesNothing_ForUnknownDocumentKind()
|
||||
{
|
||||
// Arrange
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
|
||||
builder.Push(new DirectiveIRNode()
|
||||
{
|
||||
|
|
@ -300,9 +301,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
|
||||
var @class = new ClassDeclarationIRNode() { Name = "default" };
|
||||
builder.Add(@class);
|
||||
|
||||
var irDocument = (DocumentIRNode)builder.Build();
|
||||
irDocument.DocumentKind = null;
|
||||
|
||||
document.DocumentKind = null;
|
||||
|
||||
var codeDocument = RazorCodeDocument.Create(RazorSourceDocument.Create("ignored", "/Account/Manage/AddUser.cshtml"));
|
||||
|
||||
|
|
@ -310,7 +310,7 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
pass.Engine = RazorEngine.CreateEmpty(b => { });
|
||||
|
||||
// Act
|
||||
pass.Execute(codeDocument, irDocument);
|
||||
pass.Execute(codeDocument, document);
|
||||
|
||||
// Assert
|
||||
Assert.Equal("default", @namespace.Content);
|
||||
|
|
|
|||
|
|
@ -25,14 +25,13 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
|
||||
var writer = new DefaultDocumentWriter(target, context);
|
||||
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
builder.Add(new NamespaceDeclarationIRNode()
|
||||
{
|
||||
Content = "TestNamespace",
|
||||
});
|
||||
|
||||
var document = (DocumentIRNode)builder.Build();
|
||||
|
||||
// Act
|
||||
writer.WriteDocument(document);
|
||||
|
||||
|
|
@ -63,7 +62,8 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
};
|
||||
var writer = new DefaultDocumentWriter(target, context);
|
||||
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
builder.Add(new ClassDeclarationIRNode()
|
||||
{
|
||||
AccessModifier = "internal",
|
||||
|
|
@ -72,8 +72,6 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
Name = "TestClass",
|
||||
});
|
||||
|
||||
var document = (DocumentIRNode)builder.Build();
|
||||
|
||||
// Act
|
||||
writer.WriteDocument(document);
|
||||
|
||||
|
|
@ -103,7 +101,8 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
};
|
||||
var writer = new DefaultDocumentWriter(target, context);
|
||||
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
builder.Add(new MethodDeclarationIRNode()
|
||||
{
|
||||
AccessModifier = "internal",
|
||||
|
|
@ -112,8 +111,6 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
ReturnType = "string",
|
||||
});
|
||||
|
||||
var document = (DocumentIRNode)builder.Build();
|
||||
|
||||
// Act
|
||||
writer.WriteDocument(document);
|
||||
|
||||
|
|
@ -145,17 +142,16 @@ internal virtual async string TestMethod()
|
|||
};
|
||||
var writer = new DefaultDocumentWriter(target, context);
|
||||
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
builder.Add(new FieldDeclarationIRNode()
|
||||
{
|
||||
AccessModifier = "internal",
|
||||
Modifiers = new List<string> { "readonly",},
|
||||
Modifiers = new List<string> { "readonly", },
|
||||
Name = "_foo",
|
||||
Type = "string",
|
||||
});
|
||||
|
||||
var document = (DocumentIRNode)builder.Build();
|
||||
|
||||
// Act
|
||||
writer.WriteDocument(document);
|
||||
|
||||
|
|
@ -183,7 +179,8 @@ internal virtual async string TestMethod()
|
|||
};
|
||||
var writer = new DefaultDocumentWriter(target, context);
|
||||
|
||||
var builder = RazorIRBuilder.Document();
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
builder.Add(new PropertyDeclarationIRNode()
|
||||
{
|
||||
AccessModifier = "internal",
|
||||
|
|
@ -192,8 +189,6 @@ internal virtual async string TestMethod()
|
|||
Type = "string",
|
||||
});
|
||||
|
||||
var document = (DocumentIRNode)builder.Build();
|
||||
|
||||
// Act
|
||||
writer.WriteDocument(document);
|
||||
|
||||
|
|
|
|||
|
|
@ -1,20 +0,0 @@
|
|||
// Copyright (c) .NET Foundation. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||
|
||||
using Xunit;
|
||||
|
||||
namespace Microsoft.AspNetCore.Razor.Language.Intermediate
|
||||
{
|
||||
public class RazorIRBuilderTest
|
||||
{
|
||||
[Fact]
|
||||
public void Document_CreatesDocumentNode()
|
||||
{
|
||||
// Arrange & Act
|
||||
var builder = RazorIRBuilder.Document();
|
||||
|
||||
// Assert
|
||||
Assert.IsType<DocumentIRNode>(builder.Current);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -62,7 +62,7 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
// Arrange
|
||||
var codeDocument = TestRazorCodeDocument.CreateEmpty();
|
||||
|
||||
var expected = RazorIRBuilder.Document().Build();
|
||||
var expected = new DocumentIRNode();
|
||||
codeDocument.Items[typeof(DocumentIRNode)] = expected;
|
||||
|
||||
// Act
|
||||
|
|
@ -78,7 +78,7 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
// Arrange
|
||||
var codeDocument = TestRazorCodeDocument.CreateEmpty();
|
||||
|
||||
var expected = RazorIRBuilder.Document().Build();
|
||||
var expected = new DocumentIRNode();
|
||||
|
||||
// Act
|
||||
codeDocument.SetIRDocument((DocumentIRNode)expected);
|
||||
|
|
|
|||
Loading…
Reference in New Issue