Removed ChecksumIRNode
This commit is contained in:
parent
dea8948249
commit
3892a6fede
|
|
@ -7,8 +7,6 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
{
|
||||
public abstract class BasicWriter
|
||||
{
|
||||
public abstract void WriteChecksum(CSharpRenderingContext context, ChecksumIRNode node);
|
||||
|
||||
public abstract void WriteUsingStatement(CSharpRenderingContext context, UsingStatementIRNode node);
|
||||
|
||||
public abstract void WriteCSharpExpression(CSharpRenderingContext context, CSharpExpressionIRNode node);
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||
|
||||
using System;
|
||||
using System.Text;
|
||||
using Microsoft.AspNetCore.Razor.Language.Intermediate;
|
||||
|
||||
namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
||||
|
|
@ -69,12 +70,36 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
|
||||
public override void VisitDocument(DocumentIRNode node)
|
||||
{
|
||||
RenderChildren(node);
|
||||
}
|
||||
if (Context.Options.GenerateChecksum)
|
||||
{
|
||||
// See http://msdn.microsoft.com/en-us/library/system.codedom.codechecksumpragma.checksumalgorithmid.aspx
|
||||
const string Sha1AlgorithmId = "{ff1816ec-aa5e-4d10-87f7-6f4963833460}";
|
||||
|
||||
public override void VisitChecksum(ChecksumIRNode node)
|
||||
{
|
||||
Context.BasicWriter.WriteChecksum(Context, node);
|
||||
var sourceDocument = Context.SourceDocument;
|
||||
|
||||
var checksum = sourceDocument.GetChecksum();
|
||||
var fileHashBuilder = new StringBuilder(checksum.Length * 2);
|
||||
foreach (var value in checksum)
|
||||
{
|
||||
fileHashBuilder.Append(value.ToString("x2"));
|
||||
}
|
||||
|
||||
var bytes = fileHashBuilder.ToString();
|
||||
|
||||
if (!string.IsNullOrEmpty(bytes))
|
||||
{
|
||||
Context.Writer
|
||||
.Write("#pragma checksum \"")
|
||||
.Write(sourceDocument.FilePath)
|
||||
.Write("\" \"")
|
||||
.Write(Sha1AlgorithmId)
|
||||
.Write("\" \"")
|
||||
.Write(bytes)
|
||||
.WriteLine("\"");
|
||||
}
|
||||
}
|
||||
|
||||
RenderChildren(node);
|
||||
}
|
||||
|
||||
public override void VisitUsingStatement(UsingStatementIRNode node)
|
||||
|
|
|
|||
|
|
@ -9,11 +9,6 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
{
|
||||
public class DesignTimeBasicWriter : BasicWriter
|
||||
{
|
||||
public override void WriteChecksum(CSharpRenderingContext context, ChecksumIRNode node)
|
||||
{
|
||||
// Do nothing
|
||||
}
|
||||
|
||||
public override void WriteUsingStatement(CSharpRenderingContext context, UsingStatementIRNode node)
|
||||
{
|
||||
if (node.Source.HasValue)
|
||||
|
|
|
|||
|
|
@ -28,21 +28,6 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
|
||||
public string TemplateTypeName { get; set; } = "Microsoft.AspNetCore.Mvc.Razor.HelperResult";
|
||||
|
||||
public override void WriteChecksum(CSharpRenderingContext context, ChecksumIRNode node)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(node.Bytes))
|
||||
{
|
||||
context.Writer
|
||||
.Write("#pragma checksum \"")
|
||||
.Write(node.FilePath)
|
||||
.Write("\" \"")
|
||||
.Write(node.Guid)
|
||||
.Write("\" \"")
|
||||
.Write(node.Bytes)
|
||||
.WriteLine("\"");
|
||||
}
|
||||
}
|
||||
|
||||
public override void WriteUsingStatement(CSharpRenderingContext context, UsingStatementIRNode node)
|
||||
{
|
||||
if (node.Source.HasValue)
|
||||
|
|
|
|||
|
|
@ -7,11 +7,12 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
{
|
||||
internal class DefaultRazorCodeGenerationOptions : RazorCodeGenerationOptions
|
||||
{
|
||||
public DefaultRazorCodeGenerationOptions(bool indentWithTabs, int indentSize, bool designTime)
|
||||
public DefaultRazorCodeGenerationOptions(bool indentWithTabs, int indentSize, bool designTime, bool generateChecksum)
|
||||
{
|
||||
IndentWithTabs = indentWithTabs;
|
||||
IndentSize = indentSize;
|
||||
DesignTime = designTime;
|
||||
GenerateChecksum = generateChecksum;
|
||||
}
|
||||
|
||||
public override bool DesignTime { get; }
|
||||
|
|
@ -19,5 +20,7 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
public override bool IndentWithTabs { get; }
|
||||
|
||||
public override int IndentSize { get; }
|
||||
|
||||
public override bool GenerateChecksum { get; }
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,9 +11,11 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
public override bool IndentWithTabs { get; set; }
|
||||
|
||||
public override bool GenerateChecksum { get; set; }
|
||||
|
||||
public override RazorCodeGenerationOptions Build()
|
||||
{
|
||||
return new DefaultRazorCodeGenerationOptions(IndentWithTabs, IndentSize, DesignTime);
|
||||
return new DefaultRazorCodeGenerationOptions(IndentWithTabs, IndentSize, DesignTime, GenerateChecksum);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,9 +33,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
document.Options = CreateCodeGenerationOptions();
|
||||
|
||||
var checksum = ChecksumIRNode.Create(codeDocument.Source);
|
||||
builder.Insert(0, checksum);
|
||||
|
||||
var namespaces = new Dictionary<string, SourceSpan?>(StringComparer.Ordinal);
|
||||
|
||||
// The import documents should be inserted logically before the main document.
|
||||
|
|
@ -64,7 +61,7 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
// In each lowering piece above, namespaces were tracked. We render them here to ensure every
|
||||
// lowering action has a chance to add a source location to a namespace. Ultimately, closest wins.
|
||||
|
||||
var i = builder.Current.Children.IndexOf(checksum) + 1;
|
||||
var i = 0;
|
||||
foreach (var @namespace in namespaces)
|
||||
{
|
||||
var @using = new UsingStatementIRNode()
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
}
|
||||
|
||||
options.DesignTime = true;
|
||||
options.GenerateChecksum = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -123,11 +123,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
_method = method;
|
||||
}
|
||||
|
||||
public override void VisitChecksum(ChecksumIRNode node)
|
||||
{
|
||||
_document.Insert(0, node);
|
||||
}
|
||||
|
||||
public override void VisitUsingStatement(UsingStatementIRNode node)
|
||||
{
|
||||
var children = _namespace.Current.Children;
|
||||
|
|
|
|||
|
|
@ -1,67 +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 System.Text;
|
||||
|
||||
namespace Microsoft.AspNetCore.Razor.Language.Intermediate
|
||||
{
|
||||
public sealed class ChecksumIRNode : RazorIRNode
|
||||
{
|
||||
private RazorDiagnosticCollection _diagnostics;
|
||||
|
||||
public override ItemCollection Annotations => ReadOnlyItemCollection.Empty;
|
||||
|
||||
public override RazorDiagnosticCollection Diagnostics
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_diagnostics == null)
|
||||
{
|
||||
_diagnostics = new DefaultDiagnosticCollection();
|
||||
}
|
||||
|
||||
return _diagnostics;
|
||||
}
|
||||
}
|
||||
|
||||
public override RazorIRNodeCollection Children => ReadOnlyIRNodeCollection.Instance;
|
||||
|
||||
public override SourceSpan? Source { get; set; }
|
||||
|
||||
public override bool HasDiagnostics => _diagnostics != null && _diagnostics.Count > 0;
|
||||
|
||||
public string Bytes { get; set; }
|
||||
|
||||
public string FilePath { get; set; }
|
||||
|
||||
public string Guid { get; set; }
|
||||
|
||||
public override void Accept(RazorIRNodeVisitor visitor)
|
||||
{
|
||||
visitor.VisitChecksum(this);
|
||||
}
|
||||
|
||||
public static ChecksumIRNode Create(RazorSourceDocument sourceDocument)
|
||||
{
|
||||
// See http://msdn.microsoft.com/en-us/library/system.codedom.codechecksumpragma.checksumalgorithmid.aspx
|
||||
const string Sha1AlgorithmId = "{ff1816ec-aa5e-4d10-87f7-6f4963833460}";
|
||||
|
||||
var node = new ChecksumIRNode()
|
||||
{
|
||||
FilePath = sourceDocument.FilePath,
|
||||
Guid = Sha1AlgorithmId
|
||||
};
|
||||
|
||||
var checksum = sourceDocument.GetChecksum();
|
||||
var fileHashBuilder = new StringBuilder(checksum.Length * 2);
|
||||
foreach (var value in checksum)
|
||||
{
|
||||
fileHashBuilder.Append(value.ToString("x2"));
|
||||
}
|
||||
|
||||
node.Bytes = fileHashBuilder.ToString();
|
||||
|
||||
return node;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -14,11 +14,6 @@ namespace Microsoft.AspNetCore.Razor.Language.Intermediate
|
|||
{
|
||||
}
|
||||
|
||||
public virtual void VisitChecksum(ChecksumIRNode node)
|
||||
{
|
||||
VisitDefault(node);
|
||||
}
|
||||
|
||||
public virtual void VisitToken(RazorIRToken node)
|
||||
{
|
||||
VisitDefault(node);
|
||||
|
|
|
|||
|
|
@ -5,14 +5,14 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
{
|
||||
public abstract class RazorCodeGenerationOptions
|
||||
{
|
||||
public static RazorCodeGenerationOptions Create(bool indentWithTabs, int indentSize, bool designTime)
|
||||
public static RazorCodeGenerationOptions Create(bool indentWithTabs, int indentSize, bool designTime, bool generateChecksum)
|
||||
{
|
||||
return new DefaultRazorCodeGenerationOptions(indentWithTabs, indentSize, designTime);
|
||||
return new DefaultRazorCodeGenerationOptions(indentWithTabs, indentSize, designTime, generateChecksum);
|
||||
}
|
||||
|
||||
public static RazorCodeGenerationOptions CreateDefault()
|
||||
{
|
||||
return new DefaultRazorCodeGenerationOptions(indentWithTabs: false, indentSize: 4, designTime: false);
|
||||
return new DefaultRazorCodeGenerationOptions(indentWithTabs: false, indentSize: 4, designTime: false, generateChecksum: true);
|
||||
}
|
||||
|
||||
public abstract bool DesignTime { get; }
|
||||
|
|
@ -20,5 +20,7 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
public abstract bool IndentWithTabs { get; }
|
||||
|
||||
public abstract int IndentSize { get; }
|
||||
|
||||
public abstract bool GenerateChecksum { get; }
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,6 +11,8 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
public abstract bool IndentWithTabs { get; set; }
|
||||
|
||||
public abstract bool GenerateChecksum { get; set; }
|
||||
|
||||
public abstract RazorCodeGenerationOptions Build();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -102,6 +102,9 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
internal static void AddRuntimeDefaults(IRazorEngineBuilder builder)
|
||||
{
|
||||
builder.Features.Add(new RazorPreallocatedTagHelperAttributeOptimizationPass());
|
||||
|
||||
// Configure options
|
||||
builder.Features.Add(new RuntimeOptionsFeature());
|
||||
}
|
||||
|
||||
internal static void AddDesignTimeDefaults(IRazorEngineBuilder builder)
|
||||
|
|
|
|||
|
|
@ -0,0 +1,33 @@
|
|||
// 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 System;
|
||||
|
||||
namespace Microsoft.AspNetCore.Razor.Language
|
||||
{
|
||||
internal class RuntimeOptionsFeature : RazorEngineFeatureBase, IRazorParserOptionsFeature, IRazorCodeGenerationOptionsFeature
|
||||
{
|
||||
public int Order { get; set; }
|
||||
|
||||
public void Configure(RazorParserOptionsBuilder options)
|
||||
{
|
||||
if (options == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(options));
|
||||
}
|
||||
|
||||
options.DesignTime = false;
|
||||
}
|
||||
|
||||
public void Configure(RazorCodeGenerationOptionsBuilder options)
|
||||
{
|
||||
if (options == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(options));
|
||||
}
|
||||
|
||||
options.DesignTime = false;
|
||||
options.GenerateChecksum = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -50,8 +50,7 @@ namespace RazorPageGenerator
|
|||
@class.AccessModifier = "internal";
|
||||
});
|
||||
|
||||
builder.Features.Add(new RemovePragmaChecksumFeature());
|
||||
|
||||
builder.Features.Add(new DisableChecksumOptionsFeature());
|
||||
});
|
||||
|
||||
var viewDirectories = Directory.EnumerateDirectories(targetProjectDirectory, "Views", SearchOption.AllDirectories);
|
||||
|
|
@ -108,6 +107,21 @@ namespace RazorPageGenerator
|
|||
};
|
||||
}
|
||||
|
||||
private class DisableChecksumOptionsFeature : RazorEngineFeatureBase, IRazorCodeGenerationOptionsFeature
|
||||
{
|
||||
public int Order { get; set; }
|
||||
|
||||
public void Configure(RazorCodeGenerationOptionsBuilder options)
|
||||
{
|
||||
if (options == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(options));
|
||||
}
|
||||
|
||||
options.GenerateChecksum = false;
|
||||
}
|
||||
}
|
||||
|
||||
private class FileSystemRazorProjectItemWrapper : RazorProjectItem
|
||||
{
|
||||
private readonly RazorProjectItem _source;
|
||||
|
|
|
|||
|
|
@ -1,29 +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 Microsoft.AspNetCore.Razor.Language;
|
||||
using Microsoft.AspNetCore.Razor.Language.Intermediate;
|
||||
|
||||
namespace RazorPageGenerator
|
||||
{
|
||||
public class RemovePragmaChecksumFeature : RazorIRPassBase, IRazorIROptimizationPass
|
||||
{
|
||||
protected override void ExecuteCore(RazorCodeDocument codeDocument, DocumentIRNode irDocument)
|
||||
{
|
||||
var walker = new Walker();
|
||||
walker.Visit(irDocument);
|
||||
|
||||
walker.Checksum.parent.Children.Remove(walker.Checksum.node);
|
||||
}
|
||||
|
||||
private class Walker : RazorIRNodeWalker
|
||||
{
|
||||
public (ChecksumIRNode node, RazorIRNode parent) Checksum { get; private set; }
|
||||
|
||||
public override void VisitChecksum(ChecksumIRNode node)
|
||||
{
|
||||
Checksum = (node, Parent);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_Basic_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_Basic_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - -
|
||||
UsingStatement - - TModel = global::System.Object
|
||||
UsingStatement - (1:0,1 [12] ) - System
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - -
|
||||
UsingStatement - (1:0,1 [14] ) - System
|
||||
UsingStatement - (16:1,1 [34] ) - System.Collections.Generic
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_InheritsViewModel_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_InheritsViewModel_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.RazorPageAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_InheritsWithViewImports_cshtml), null)]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.RazorPageAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_InheritsWithViewImports_cshtml), null)]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_InjectWithModel_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_InjectWithModel_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_InjectWithSemicolon_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_InjectWithSemicolon_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_Inject_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_Inject_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - -
|
||||
UsingStatement - - TModel = global::System.Object
|
||||
UsingStatement - (1:0,1 [12] ) - System
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - -
|
||||
UsingStatement - (1:0,1 [14] ) - System
|
||||
UsingStatement - (16:1,1 [34] ) - System.Collections.Generic
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.RazorPageAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_MalformedPageDirective_cshtml), null)]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.RazorPageAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_MalformedPageDirective_cshtml), null)]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_ModelExpressionTagHelper_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_ModelExpressionTagHelper_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_Model_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_Model_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_MultipleModels_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.RazorPageAttribute(null, typeof(Test.Namespace.PageWithNamespace_Page), null)]
|
||||
NamespaceDeclaration - - Test.Namespace
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.RazorPageAttribute(null, typeof(Test.Namespace.PageWithNamespace_Page), null)]
|
||||
NamespaceDeclaration - - Test.Namespace
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.RazorPageAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_RazorPagesWithoutModel_cshtml), null)]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.RazorPageAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_RazorPagesWithoutModel_cshtml), null)]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.RazorPageAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_RazorPages_cshtml), null)]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.RazorPageAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_RazorPages_cshtml), null)]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_ViewComponentTagHelper_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_ViewComponentTagHelper_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(Test.Namespace.ViewWithNamespace_View))]
|
||||
NamespaceDeclaration - - Test.Namespace
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(Test.Namespace.ViewWithNamespace_View))]
|
||||
NamespaceDeclaration - - Test.Namespace
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest__ViewImports_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
CSharpCode -
|
||||
RazorIRToken - - CSharp - [assembly:global::Microsoft.AspNetCore.Mvc.Razor.Compilation.RazorViewAttribute(null, typeof(AspNetCore.TestFiles_IntegrationTests_CodeGenerationIntegrationTest__ViewImports_cshtml))]
|
||||
NamespaceDeclaration - - AspNetCore
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Razor
|
||||
ClassDeclaration - - public - Template - -
|
||||
DeclarePreallocatedTagHelperAttribute - - __tagHelperAttribute_0 - value - Hello - HtmlAttributeValueStyle.DoubleQuotes
|
||||
|
|
|
|||
|
|
@ -9,6 +9,70 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
{
|
||||
public class DefaultDocumentWriterTest
|
||||
{
|
||||
[Fact]
|
||||
public void WriteDocument_Empty_WritesChecksumByDefault()
|
||||
{
|
||||
// Arrange
|
||||
var codeDocument = TestRazorCodeDocument.CreateEmpty();
|
||||
var options = RazorCodeGenerationOptions.CreateDefault();
|
||||
|
||||
var target = CodeTarget.CreateDefault(codeDocument, options);
|
||||
var context = new CSharpRenderingContext()
|
||||
{
|
||||
Options = options,
|
||||
Writer = new Legacy.CSharpCodeWriter(),
|
||||
CodeDocument = codeDocument
|
||||
};
|
||||
|
||||
var writer = new DefaultDocumentWriter(target, context);
|
||||
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
|
||||
// Act
|
||||
writer.WriteDocument(document);
|
||||
|
||||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Equal(
|
||||
@"#pragma checksum ""test.cshtml"" ""{ff1816ec-aa5e-4d10-87f7-6f4963833460}"" ""da39a3ee5e6b4b0d3255bfef95601890afd80709""
|
||||
",
|
||||
csharp,
|
||||
ignoreLineEndingDifferences: true);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void WriteDocument_Empty_GenerateChecksumFalse_WritesNothing()
|
||||
{
|
||||
// Arrange
|
||||
var codeDocument = TestRazorCodeDocument.CreateEmpty();
|
||||
var optionsBuilder = new DefaultRazorCodeGenerationOptionsBuilder()
|
||||
{
|
||||
GenerateChecksum = false
|
||||
};
|
||||
var options = optionsBuilder.Build();
|
||||
|
||||
var target = CodeTarget.CreateDefault(codeDocument, options);
|
||||
var context = new CSharpRenderingContext()
|
||||
{
|
||||
Options = options,
|
||||
Writer = new Legacy.CSharpCodeWriter(),
|
||||
CodeDocument = codeDocument
|
||||
};
|
||||
|
||||
var writer = new DefaultDocumentWriter(target, context);
|
||||
|
||||
var document = new DocumentIRNode();
|
||||
var builder = RazorIRBuilder.Create(document);
|
||||
|
||||
// Act
|
||||
writer.WriteDocument(document);
|
||||
|
||||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Empty(csharp);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void WriteDocument_WritesNamespace()
|
||||
{
|
||||
|
|
@ -21,6 +85,7 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
{
|
||||
Options = options,
|
||||
Writer = new Legacy.CSharpCodeWriter(),
|
||||
CodeDocument = codeDocument
|
||||
};
|
||||
|
||||
var writer = new DefaultDocumentWriter(target, context);
|
||||
|
|
@ -38,7 +103,8 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Equal(
|
||||
@"namespace TestNamespace
|
||||
@"#pragma checksum ""test.cshtml"" ""{ff1816ec-aa5e-4d10-87f7-6f4963833460}"" ""da39a3ee5e6b4b0d3255bfef95601890afd80709""
|
||||
namespace TestNamespace
|
||||
{
|
||||
#line hidden
|
||||
}
|
||||
|
|
@ -59,6 +125,7 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
{
|
||||
Options = options,
|
||||
Writer = new Legacy.CSharpCodeWriter(),
|
||||
CodeDocument = codeDocument
|
||||
};
|
||||
var writer = new DefaultDocumentWriter(target, context);
|
||||
|
||||
|
|
@ -78,7 +145,8 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Equal(
|
||||
@"internal class TestClass : TestBase, IFoo, IBar
|
||||
@"#pragma checksum ""test.cshtml"" ""{ff1816ec-aa5e-4d10-87f7-6f4963833460}"" ""da39a3ee5e6b4b0d3255bfef95601890afd80709""
|
||||
internal class TestClass : TestBase, IFoo, IBar
|
||||
{
|
||||
}
|
||||
",
|
||||
|
|
@ -98,6 +166,7 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
{
|
||||
Options = options,
|
||||
Writer = new Legacy.CSharpCodeWriter(),
|
||||
CodeDocument = codeDocument
|
||||
};
|
||||
var writer = new DefaultDocumentWriter(target, context);
|
||||
|
||||
|
|
@ -117,7 +186,8 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Equal(
|
||||
@"#pragma warning disable 1998
|
||||
@"#pragma checksum ""test.cshtml"" ""{ff1816ec-aa5e-4d10-87f7-6f4963833460}"" ""da39a3ee5e6b4b0d3255bfef95601890afd80709""
|
||||
#pragma warning disable 1998
|
||||
internal virtual async string TestMethod()
|
||||
{
|
||||
}
|
||||
|
|
@ -139,6 +209,7 @@ internal virtual async string TestMethod()
|
|||
{
|
||||
Options = options,
|
||||
Writer = new Legacy.CSharpCodeWriter(),
|
||||
CodeDocument = codeDocument
|
||||
};
|
||||
var writer = new DefaultDocumentWriter(target, context);
|
||||
|
||||
|
|
@ -158,7 +229,8 @@ internal virtual async string TestMethod()
|
|||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Equal(
|
||||
@"internal readonly string _foo;
|
||||
@"#pragma checksum ""test.cshtml"" ""{ff1816ec-aa5e-4d10-87f7-6f4963833460}"" ""da39a3ee5e6b4b0d3255bfef95601890afd80709""
|
||||
internal readonly string _foo;
|
||||
",
|
||||
csharp,
|
||||
ignoreLineEndingDifferences: true);
|
||||
|
|
@ -176,6 +248,7 @@ internal virtual async string TestMethod()
|
|||
{
|
||||
Options = options,
|
||||
Writer = new Legacy.CSharpCodeWriter(),
|
||||
CodeDocument = codeDocument
|
||||
};
|
||||
var writer = new DefaultDocumentWriter(target, context);
|
||||
|
||||
|
|
@ -195,7 +268,8 @@ internal virtual async string TestMethod()
|
|||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Equal(
|
||||
@"internal virtual string Foo { get; set; }
|
||||
@"#pragma checksum ""test.cshtml"" ""{ff1816ec-aa5e-4d10-87f7-6f4963833460}"" ""da39a3ee5e6b4b0d3255bfef95601890afd80709""
|
||||
internal virtual string Foo { get; set; }
|
||||
",
|
||||
csharp,
|
||||
ignoreLineEndingDifferences: true);
|
||||
|
|
|
|||
|
|
@ -11,60 +11,6 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
{
|
||||
public class RuntimeBasicWriterTest
|
||||
{
|
||||
[Fact]
|
||||
public void WriteChecksum_WritesPragmaChecksum()
|
||||
{
|
||||
// Arrange
|
||||
var writer = new RuntimeBasicWriter();
|
||||
var context = new CSharpRenderingContext()
|
||||
{
|
||||
Writer = new Legacy.CSharpCodeWriter()
|
||||
};
|
||||
|
||||
var node = new ChecksumIRNode()
|
||||
{
|
||||
FilePath = "test.cshtml",
|
||||
Guid = "SomeGuid",
|
||||
Bytes = "SomeFileHash"
|
||||
};
|
||||
|
||||
// Act
|
||||
writer.WriteChecksum(context, node);
|
||||
|
||||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Equal(
|
||||
@"#pragma checksum ""test.cshtml"" ""SomeGuid"" ""SomeFileHash""
|
||||
",
|
||||
csharp,
|
||||
ignoreLineEndingDifferences: true);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void WriteChecksum_EmptyBytes_WritesNothing()
|
||||
{
|
||||
// Arrange
|
||||
var writer = new RuntimeBasicWriter();
|
||||
var context = new CSharpRenderingContext()
|
||||
{
|
||||
Writer = new Legacy.CSharpCodeWriter()
|
||||
};
|
||||
|
||||
var node = new ChecksumIRNode()
|
||||
{
|
||||
FilePath = "test.cshtml",
|
||||
Guid = "SomeGuid",
|
||||
Bytes = string.Empty
|
||||
};
|
||||
|
||||
// Act
|
||||
writer.WriteChecksum(context, node);
|
||||
|
||||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Empty(csharp);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void WriteUsingStatement_NoSource_WritesContent()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -14,19 +14,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
{
|
||||
public class DefaultRazorIRLoweringPhaseIntegrationTest
|
||||
{
|
||||
[Fact]
|
||||
public void Lower_EmptyDocument_AddsChecksum()
|
||||
{
|
||||
// Arrange
|
||||
var codeDocument = TestRazorCodeDocument.CreateEmpty();
|
||||
|
||||
// Act
|
||||
var irDocument = Lower(codeDocument);
|
||||
|
||||
// Assert
|
||||
Children(irDocument, n => Checksum(n));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Lower_SetsOptions_Defaults()
|
||||
{
|
||||
|
|
@ -57,6 +44,7 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
o.DesignTime = true;
|
||||
o.IndentSize = 17;
|
||||
o.IndentWithTabs = true;
|
||||
o.GenerateChecksum = true;
|
||||
});
|
||||
|
||||
// Act
|
||||
|
|
@ -70,6 +58,7 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
Assert.True(irDocument.Options.DesignTime);
|
||||
Assert.Equal(17, irDocument.Options.IndentSize);
|
||||
Assert.True(irDocument.Options.IndentWithTabs);
|
||||
Assert.True(irDocument.Options.GenerateChecksum);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
|
|
@ -83,7 +72,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
// Assert
|
||||
Children(irDocument,
|
||||
n => Checksum(n),
|
||||
n => Html("Hello, World!", n));
|
||||
}
|
||||
|
||||
|
|
@ -103,7 +91,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
// Assert
|
||||
Children(irDocument,
|
||||
n => Checksum(n),
|
||||
n => Html(
|
||||
@"
|
||||
<html>
|
||||
|
|
@ -131,7 +118,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
// Assert
|
||||
Children(irDocument,
|
||||
n => Checksum(n),
|
||||
n => Html(
|
||||
@"
|
||||
<html>
|
||||
|
|
@ -164,7 +150,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
// Assert
|
||||
Children(irDocument,
|
||||
n => Checksum(n),
|
||||
n => Directive(
|
||||
"functions",
|
||||
n,
|
||||
|
|
@ -183,7 +168,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
// Assert
|
||||
Children(irDocument,
|
||||
n => Checksum(n),
|
||||
n =>
|
||||
{
|
||||
Using("System", n);
|
||||
|
|
@ -210,7 +194,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
// Assert
|
||||
Children(irDocument,
|
||||
n => Checksum(n),
|
||||
n => Directive(
|
||||
SyntaxConstants.CSharp.AddTagHelperKeyword,
|
||||
n,
|
||||
|
|
@ -250,7 +233,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
// Assert
|
||||
Children(irDocument,
|
||||
n => Checksum(n),
|
||||
n => Directive(
|
||||
SyntaxConstants.CSharp.AddTagHelperKeyword,
|
||||
n,
|
||||
|
|
@ -296,7 +278,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
n => Checksum(n),
|
||||
n => Directive(
|
||||
SyntaxConstants.CSharp.AddTagHelperKeyword,
|
||||
n,
|
||||
|
|
@ -349,7 +330,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
n => Checksum(n),
|
||||
n => Directive(
|
||||
SyntaxConstants.CSharp.AddTagHelperKeyword,
|
||||
n,
|
||||
|
|
@ -389,7 +369,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
n => Checksum(n),
|
||||
n => Using("System.Globalization", n),
|
||||
n => Using("System.Text", n),
|
||||
n => Using("System.Threading.Tasks", n),
|
||||
|
|
@ -418,7 +397,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
n => Checksum(n),
|
||||
n => Directive("test", n, c => DirectiveToken(DirectiveTokenKind.Member, "value1", c)),
|
||||
n => Directive("test", n, c => DirectiveToken(DirectiveTokenKind.Member, "value2", c)),
|
||||
n => Html("<p>Hi!</p>", n));
|
||||
|
|
@ -445,7 +423,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
n => Checksum(n),
|
||||
n => Html("<p>Hi!</p>", n));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -32,9 +32,8 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
// Assert
|
||||
Children(irDocument,
|
||||
node => Assert.IsType<ChecksumIRNode>(node),
|
||||
node => Assert.IsType<NamespaceDeclarationIRNode>(node));
|
||||
var @namespace = irDocument.Children[1];
|
||||
var @namespace = irDocument.Children[0];
|
||||
Children(@namespace,
|
||||
node => Assert.IsType<ClassDeclarationIRNode>(node));
|
||||
var @class = @namespace.Children[0];
|
||||
|
|
@ -64,9 +63,8 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
// Assert
|
||||
Children(irDocument,
|
||||
node => Assert.IsType<ChecksumIRNode>(node),
|
||||
node => Assert.IsType<NamespaceDeclarationIRNode>(node));
|
||||
var @namespace = irDocument.Children[1];
|
||||
var @namespace = irDocument.Children[0];
|
||||
Children(@namespace,
|
||||
node => Assert.IsType<ClassDeclarationIRNode>(node));
|
||||
var @class = @namespace.Children[0];
|
||||
|
|
|
|||
|
|
@ -117,31 +117,6 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
NoChildren(method);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Execute_AddsCheckumFirstToDocument()
|
||||
{
|
||||
// Arrange
|
||||
var irDocument = new DocumentIRNode()
|
||||
{
|
||||
Options = RazorCodeGenerationOptions.CreateDefault(),
|
||||
};
|
||||
|
||||
var builder = RazorIRBuilder.Create(irDocument);
|
||||
builder.Add(new ChecksumIRNode());
|
||||
|
||||
var pass = new TestDocumentClassifierPass();
|
||||
pass.Engine = RazorEngine.CreateEmpty(b => { });
|
||||
|
||||
// Act
|
||||
pass.Execute(TestRazorCodeDocument.CreateEmpty(), irDocument);
|
||||
|
||||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
n => Assert.IsType<ChecksumIRNode>(n),
|
||||
n => Assert.IsType<NamespaceDeclarationIRNode>(n));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Execute_AddsUsingsToNamespace()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -55,10 +55,9 @@ namespace Microsoft.AspNetCore.Razor.Language.Extensions
|
|||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
node => Assert.IsType<ChecksumIRNode>(node),
|
||||
node => Assert.IsType<NamespaceDeclarationIRNode>(node));
|
||||
|
||||
var @namespace = irDocument.Children[1];
|
||||
var @namespace = irDocument.Children[0];
|
||||
Children(
|
||||
@namespace,
|
||||
node => Assert.IsType<ClassDeclarationIRNode>(node));
|
||||
|
|
|
|||
|
|
@ -56,10 +56,9 @@ namespace Microsoft.AspNetCore.Razor.Language.Extensions
|
|||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
node => Assert.IsType<ChecksumIRNode>(node),
|
||||
node => Assert.IsType<NamespaceDeclarationIRNode>(node));
|
||||
|
||||
var @namespace = irDocument.Children[1];
|
||||
var @namespace = irDocument.Children[0];
|
||||
Children(
|
||||
@namespace,
|
||||
node => Assert.IsType<ClassDeclarationIRNode>(node));
|
||||
|
|
|
|||
|
|
@ -56,10 +56,9 @@ namespace Microsoft.AspNetCore.Razor.Language.Extensions
|
|||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
node => Assert.IsType<ChecksumIRNode>(node),
|
||||
node => Assert.IsType<NamespaceDeclarationIRNode>(node));
|
||||
|
||||
var @namespace = irDocument.Children[1];
|
||||
var @namespace = irDocument.Children[0];
|
||||
Children(
|
||||
@namespace,
|
||||
node => Assert.IsType<ClassDeclarationIRNode>(node));
|
||||
|
|
@ -95,10 +94,9 @@ namespace Microsoft.AspNetCore.Razor.Language.Extensions
|
|||
// Assert
|
||||
Children(
|
||||
irDocument,
|
||||
node => Assert.IsType<ChecksumIRNode>(node),
|
||||
node => Assert.IsType<NamespaceDeclarationIRNode>(node));
|
||||
|
||||
var @namespace = irDocument.Children[1];
|
||||
var @namespace = irDocument.Children[0];
|
||||
Children(
|
||||
@namespace,
|
||||
node => Assert.IsType<ClassDeclarationIRNode>(node));
|
||||
|
|
|
|||
|
|
@ -152,7 +152,8 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
feature => Assert.IsType<DefaultDocumentClassifierPass>(feature),
|
||||
feature => Assert.IsType<DirectiveRemovalIROptimizationPass>(feature),
|
||||
feature => Assert.IsType<DefaultDocumentClassifierPassFeature>(feature),
|
||||
feature => Assert.IsType<RazorPreallocatedTagHelperAttributeOptimizationPass>(feature));
|
||||
feature => Assert.IsType<RazorPreallocatedTagHelperAttributeOptimizationPass>(feature),
|
||||
feature => Assert.IsType<RuntimeOptionsFeature>(feature));
|
||||
}
|
||||
|
||||
private static void AssertDefaultRuntimePhases(IReadOnlyList<IRazorEnginePhase> phases)
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Razor
|
||||
ClassDeclaration - - public - Template - -
|
||||
MethodDeclaration - - public - async, override - global::System.Threading.Tasks.Task - ExecuteAsync
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Razor
|
||||
ClassDeclaration - - public - Template - -
|
||||
MethodDeclaration - - public - async, override - global::System.Threading.Tasks.Task - ExecuteAsync
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Razor
|
||||
ClassDeclaration - - public - Template - -
|
||||
MethodDeclaration - - public - async, override - global::System.Threading.Tasks.Task - ExecuteAsync
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_AddTagHelperDirective_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_AttributeTargetingTagHelpers_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_AttributeTargetingTagHelpers_Runtime - -
|
||||
DeclarePreallocatedTagHelperHtmlAttribute - - __tagHelperAttribute_0 - catchAll - hi - HtmlAttributeValueStyle.DoubleQuotes
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_Await_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_Await_Runtime - -
|
||||
MethodDeclaration - - public - async - System.Threading.Tasks.Task - ExecuteAsync
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
UsingStatement - (31:1,1 [26] BasicImports_Imports0.cshtml) - System.Globalization
|
||||
UsingStatement - (80:3,1 [27] BasicImports_Imports0.cshtml) - System.ComponentModel
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
UsingStatement - (31:1,1 [28] BasicImports_Imports0.cshtml) - System.Globalization
|
||||
UsingStatement - (80:3,1 [29] BasicImports_Imports0.cshtml) - System.ComponentModel
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_BasicTagHelpers_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_BasicTagHelpers_Prefixed_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_BasicTagHelpers_Prefixed_Runtime - -
|
||||
DeclarePreallocatedTagHelperAttribute - - __tagHelperAttribute_0 - type - checkbox - HtmlAttributeValueStyle.DoubleQuotes
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_BasicTagHelpers_RemoveTagHelper_Runtime - -
|
||||
DeclarePreallocatedTagHelperAttribute - - __tagHelperAttribute_0 - type - text - HtmlAttributeValueStyle.DoubleQuotes
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_BasicTagHelpers_Runtime - -
|
||||
DeclarePreallocatedTagHelperHtmlAttribute - - __tagHelperAttribute_0 - data - -delay1000 - HtmlAttributeValueStyle.DoubleQuotes
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_Blocks_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_Blocks_Runtime - -
|
||||
MethodDeclaration - - public - async - System.Threading.Tasks.Task - ExecuteAsync
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_CSharp7_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_CSharp7_Runtime - -
|
||||
MethodDeclaration - - public - async - System.Threading.Tasks.Task - ExecuteAsync
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_CodeBlockAtEOF_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_CodeBlockAtEOF_Runtime - -
|
||||
MethodDeclaration - - public - async - System.Threading.Tasks.Task - ExecuteAsync
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_CodeBlockWithTextElement_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_CodeBlockWithTextElement_Runtime - -
|
||||
MethodDeclaration - - public - async - System.Threading.Tasks.Task - ExecuteAsync
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_CodeBlock_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_CodeBlock_Runtime - -
|
||||
MethodDeclaration - - public - async - System.Threading.Tasks.Task - ExecuteAsync
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_ComplexTagHelpers_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_ComplexTagHelpers_Runtime - -
|
||||
DeclarePreallocatedTagHelperAttribute - - __tagHelperAttribute_0 - type - text - HtmlAttributeValueStyle.DoubleQuotes
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_ConditionalAttributes_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_ConditionalAttributes_Runtime - -
|
||||
MethodDeclaration - - public - async - System.Threading.Tasks.Task - ExecuteAsync
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_CssSelectorTagHelperAttributes_Runtime - -
|
||||
DeclarePreallocatedTagHelperHtmlAttribute - - __tagHelperAttribute_0 - href - ~/ - HtmlAttributeValueStyle.DoubleQuotes
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_DesignTime_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_DuplicateAttributeTagHelpers_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_DuplicateAttributeTagHelpers_Runtime - -
|
||||
DeclarePreallocatedTagHelperAttribute - - __tagHelperAttribute_0 - type - button - HtmlAttributeValueStyle.DoubleQuotes
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_DuplicateTargetTagHelper_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_DuplicateTargetTagHelper_Runtime - -
|
||||
DeclarePreallocatedTagHelperAttribute - - __tagHelperAttribute_0 - type - checkbox - HtmlAttributeValueStyle.DoubleQuotes
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_DynamicAttributeTagHelpers_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_DynamicAttributeTagHelpers_Runtime - -
|
||||
DeclareTagHelperFields - - TestNamespace.InputTagHelper
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_EmptyAttributeTagHelpers_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue