Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ public void MvcViewDocumentClassifierPass_SetsClass()
Assert.NotNull(baseNode.ModelType);
Assert.Equal("TModel", baseNode.ModelType.Content);
Assert.Equal<string>(["public"], classNode.Modifiers);
Assert.Equal("Test", classNode.Name);
Assert.Equal("Test", classNode.Name.Content);
}

[Fact]
Expand All @@ -109,7 +109,7 @@ public void MvcViewDocumentClassifierPass_NullFilePath_SetsClass()
Assert.NotNull(baseNode.ModelType);
Assert.Equal("TModel", baseNode.ModelType.Content);
Assert.Equal<string>(["public"], classNode.Modifiers);
Assert.Equal("AspNetCore_ec563e63d931b806184cb02f79875e4f3b21d1ca043ad06699424459128b58c0", classNode.Name);
Assert.Equal("AspNetCore_ec563e63d931b806184cb02f79875e4f3b21d1ca043ad06699424459128b58c0", classNode.Name.Content);
}

[Theory]
Expand All @@ -129,7 +129,7 @@ public void MvcViewDocumentClassifierPass_UsesRelativePathToGenerateTypeName(str
var documentNode = processor.GetDocumentNode();
var classNode = documentNode.GetClassNode();

Assert.Equal(expected, classNode.Name);
Assert.Equal(expected, classNode.Name.Content);
}

[Fact]
Expand All @@ -147,7 +147,7 @@ public void MvcViewDocumentClassifierPass_UsesAbsolutePath_IfRelativePathIsNotSe
var documentNode = processor.GetDocumentNode();
var classNode = documentNode.GetClassNode();

Assert.Equal("x___application_Views_Home_Index", classNode.Name);
Assert.Equal("x___application_Views_Home_Index", classNode.Name.Content);
}

[Fact]
Expand All @@ -165,7 +165,7 @@ public void MvcViewDocumentClassifierPass_SanitizesClassName()
var documentNode = processor.GetDocumentNode();
var classNode = documentNode.GetClassNode();

Assert.Equal("path_with_invalid_chars", classNode.Name);
Assert.Equal("path_with_invalid_chars", classNode.Name.Content);
}

[Fact]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,36 +68,6 @@ public void Execute_NoOps_IfClassNameNodeIsMissing()
Assert.Same(@namespace, node);
}

[Fact]
public void Execute_NoOps_IfClassNameIsEmpty()
{
// Arrange
var codeDocument = ProjectEngine.CreateEmptyCodeDocument();
var documentNode = new DocumentIntermediateNode() { Options = codeDocument.CodeGenerationOptions };

var builder = IntermediateNodeBuilder.Create(documentNode);

var @namespace = new NamespaceDeclarationIntermediateNode()
{
Name = "SomeNamespace",
IsPrimaryNamespace = true,
};

builder.Push(@namespace);

builder.Add(new ClassDeclarationIntermediateNode
{
IsPrimaryClass = true,
});

// Act
ProjectEngine.ExecutePass<AssemblyAttributeInjectionPass>(codeDocument, documentNode);

// Assert
var node = Assert.Single(documentNode.Children);
Assert.Same(@namespace, node);
}

[Fact]
public void Execute_NoOps_IfDocumentIsNotViewOrPage()
{
Expand All @@ -115,7 +85,7 @@ public void Execute_NoOps_IfDocumentIsNotViewOrPage()

var @class = new ClassDeclarationIntermediateNode
{
Name = "SomeName",
Name = IntermediateNodeFactory.CSharpToken("SomeName"),
IsPrimaryClass = true,
};

Expand Down Expand Up @@ -153,7 +123,7 @@ public void Execute_NoOps_ForDesignTime()

var @class = new ClassDeclarationIntermediateNode
{
Name = "SomeName",
Name = IntermediateNodeFactory.CSharpToken("SomeName"),
IsPrimaryClass = true,
};

Expand Down Expand Up @@ -193,7 +163,7 @@ public void Execute_AddsRazorViewAttribute_ToViews()
builder.Push(@namespace);
var @class = new ClassDeclarationIntermediateNode
{
Name = "SomeName",
Name = IntermediateNodeFactory.CSharpToken("SomeName"),
IsPrimaryClass = true,
};

Expand Down Expand Up @@ -240,7 +210,7 @@ public void Execute_EscapesViewPathWhenAddingAttributeToViews()

var @class = new ClassDeclarationIntermediateNode
{
Name = "SomeName",
Name = IntermediateNodeFactory.CSharpToken("SomeName"),
IsPrimaryClass = true,
};

Expand Down Expand Up @@ -294,7 +264,7 @@ public void Execute_AddsRazorPagettribute_ToPage()

var @class = new ClassDeclarationIntermediateNode
{
Name = "SomeName",
Name = IntermediateNodeFactory.CSharpToken("SomeName"),
IsPrimaryClass = true,
};

Expand Down Expand Up @@ -341,7 +311,7 @@ public void Execute_EscapesViewPathAndRouteWhenAddingAttributeToPage()

var @class = new ClassDeclarationIntermediateNode
{
Name = "SomeName",
Name = IntermediateNodeFactory.CSharpToken("SomeName"),
IsPrimaryClass = true,
};

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ public void MvcViewDocumentClassifierPass_SetsClass()
Assert.NotNull(baseNode.ModelType);
Assert.Equal("TModel", baseNode.ModelType.Content);
Assert.Equal<string>(["public"], classNode.Modifiers);
Assert.Equal("Test", classNode.Name);
Assert.Equal("Test", classNode.Name.Content);
}

[Fact]
Expand All @@ -109,7 +109,7 @@ public void MvcViewDocumentClassifierPass_NullFilePath_SetsClass()
Assert.NotNull(baseNode.ModelType);
Assert.Equal("TModel", baseNode.ModelType.Content);
Assert.Equal<string>(["public"], classNode.Modifiers);
Assert.Equal("AspNetCore_ec563e63d931b806184cb02f79875e4f3b21d1ca043ad06699424459128b58c0", classNode.Name);
Assert.Equal("AspNetCore_ec563e63d931b806184cb02f79875e4f3b21d1ca043ad06699424459128b58c0", classNode.Name.Content);
}

[Theory]
Expand All @@ -129,7 +129,7 @@ public void MvcViewDocumentClassifierPass_UsesRelativePathToGenerateTypeName(str
var documentNode = processor.GetDocumentNode();
var classNode = documentNode.GetClassNode();

Assert.Equal(expected, classNode.Name);
Assert.Equal(expected, classNode.Name.Content);
}

[Fact]
Expand All @@ -147,7 +147,7 @@ public void MvcViewDocumentClassifierPass_UsesAbsolutePath_IfRelativePathIsNotSe
var documentNode = processor.GetDocumentNode();
var classNode = documentNode.GetClassNode();

Assert.Equal("x___application_Views_Home_Index", classNode.Name);
Assert.Equal("x___application_Views_Home_Index", classNode.Name.Content);
}

[Fact]
Expand All @@ -165,7 +165,7 @@ public void MvcViewDocumentClassifierPass_SanitizesClassName()
var documentNode = processor.GetDocumentNode();
var classNode = documentNode.GetClassNode();

Assert.Equal("path_with_invalid_chars", classNode.Name);
Assert.Equal("path_with_invalid_chars", classNode.Name.Content);
}

[Fact]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ public void Pass_SetsNamespace_ComputedFromImports()
var @namespace = new NamespaceDeclarationIntermediateNode() { Name = "default" };
builder.Push(@namespace);

var @class = new ClassDeclarationIntermediateNode() { Name = "default" };
var @class = new ClassDeclarationIntermediateNode() { Name = IntermediateNodeFactory.CSharpToken("default") };
builder.Add(@class);

documentNode.DocumentKind = RazorPageDocumentClassifierPass.RazorPageDocumentKind;
Expand All @@ -143,7 +143,7 @@ public void Pass_SetsNamespace_ComputedFromImports()

// Assert
Assert.Equal("WebApplication.Account.Manage", @namespace.Name);
Assert.Equal("default", @class.Name);
Assert.Equal("default", @class.Name.Content);
}

// This is the case where the source file sets the namespace.
Expand Down Expand Up @@ -180,7 +180,7 @@ public void Pass_SetsNamespace_ComputedFromSource()
var @namespace = new NamespaceDeclarationIntermediateNode() { Name = "default" };
builder.Push(@namespace);

var @class = new ClassDeclarationIntermediateNode() { Name = "default" };
var @class = new ClassDeclarationIntermediateNode() { Name = IntermediateNodeFactory.CSharpToken("default") };
builder.Add(@class);

documentNode.DocumentKind = RazorPageDocumentClassifierPass.RazorPageDocumentKind;
Expand All @@ -190,7 +190,7 @@ public void Pass_SetsNamespace_ComputedFromSource()

// Assert
Assert.Equal("WebApplication.Account.Manage", @namespace.Name);
Assert.Equal("default", @class.Name);
Assert.Equal("default", @class.Name.Content);
}

// Handles cases where invalid characters appears in FileNames. Note that we don't sanitize the part of
Expand All @@ -217,7 +217,7 @@ public void Pass_SetsNamespace_SanitizesClassAndNamespace()
var @namespace = new NamespaceDeclarationIntermediateNode() { Name = "default" };
builder.Push(@namespace);

var @class = new ClassDeclarationIntermediateNode() { Name = "default" };
var @class = new ClassDeclarationIntermediateNode() { Name = IntermediateNodeFactory.CSharpToken("default") };
builder.Add(@class);

documentNode.DocumentKind = RazorPageDocumentClassifierPass.RazorPageDocumentKind;
Expand All @@ -227,7 +227,7 @@ public void Pass_SetsNamespace_SanitizesClassAndNamespace()

// Assert
Assert.Equal("WebApplication.Account.Manage_Info", @namespace.Name);
Assert.Equal("default", @class.Name);
Assert.Equal("default", @class.Name.Content);
}

// This is the case where the source file sets the namespace.
Expand Down Expand Up @@ -264,7 +264,7 @@ public void Pass_SetsNamespace_ComputedFromSource_ForView()
var @namespace = new NamespaceDeclarationIntermediateNode() { Name = "default" };
builder.Push(@namespace);

var @class = new ClassDeclarationIntermediateNode() { Name = "default" };
var @class = new ClassDeclarationIntermediateNode() { Name = IntermediateNodeFactory.CSharpToken("default") };
builder.Add(@class);

documentNode.DocumentKind = MvcViewDocumentClassifierPass.MvcViewDocumentKind;
Expand All @@ -274,7 +274,7 @@ public void Pass_SetsNamespace_ComputedFromSource_ForView()

// Assert
Assert.Equal("WebApplication.Account.Manage", @namespace.Name);
Assert.Equal("default", @class.Name);
Assert.Equal("default", @class.Name.Content);
}

// This handles an error case where we can't determine the relationship between the
Expand All @@ -301,7 +301,7 @@ public void Pass_SetsNamespace_VerbatimFromImports()
var @namespace = new NamespaceDeclarationIntermediateNode() { Name = "default" };
builder.Push(@namespace);

var @class = new ClassDeclarationIntermediateNode() { Name = "default" };
var @class = new ClassDeclarationIntermediateNode() { Name = IntermediateNodeFactory.CSharpToken("default") };
builder.Add(@class);

documentNode.DocumentKind = RazorPageDocumentClassifierPass.RazorPageDocumentKind;
Expand All @@ -311,7 +311,7 @@ public void Pass_SetsNamespace_VerbatimFromImports()

// Assert
Assert.Equal("WebApplication.Account", @namespace.Name);
Assert.Equal("default", @class.Name);
Assert.Equal("default", @class.Name.Content);
}

[Fact]
Expand All @@ -336,7 +336,7 @@ public void Pass_DoesNothing_ForUnknownDocumentKind()
var @namespace = new NamespaceDeclarationIntermediateNode() { Name = "default" };
builder.Push(@namespace);

var @class = new ClassDeclarationIntermediateNode() { Name = "default" };
var @class = new ClassDeclarationIntermediateNode() { Name = IntermediateNodeFactory.CSharpToken("default") };
builder.Add(@class);

documentNode.DocumentKind = null;
Expand All @@ -346,6 +346,6 @@ public void Pass_DoesNothing_ForUnknownDocumentKind()

// Assert
Assert.Equal("default", @namespace.Name);
Assert.Equal("default", @class.Name);
Assert.Equal("default", @class.Name.Content);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,7 @@ public void RazorPageDocumentClassifierPass_SetsClass()

Assert.Equal("global::Microsoft.AspNetCore.Mvc.RazorPages.Page", classNode.BaseType?.BaseType.Content);
Assert.Equal<string>(["public"], classNode.Modifiers);
Assert.Equal("Test", classNode.Name);
Assert.Equal("Test", classNode.Name.Content);
}

[Fact]
Expand All @@ -219,7 +219,7 @@ public void RazorPageDocumentClassifierPass_NullFilePath_SetsClass()

Assert.Equal("global::Microsoft.AspNetCore.Mvc.RazorPages.Page", classNode.BaseType?.BaseType.Content);
Assert.Equal<string>(["public"], classNode.Modifiers);
Assert.Equal("AspNetCore_c3b458108610c1a2aa6eede0a5685ede853e036732db515609b2a23ca15359e1", classNode.Name);
Assert.Equal("AspNetCore_c3b458108610c1a2aa6eede0a5685ede853e036732db515609b2a23ca15359e1", classNode.Name.Content);
}

[Theory]
Expand All @@ -239,7 +239,7 @@ public void RazorPageDocumentClassifierPass_UsesRelativePathToGenerateTypeName(s
var documentNode = processor.GetDocumentNode();
var classNode = documentNode.GetClassNode();

Assert.Equal(expected, classNode.Name);
Assert.Equal(expected, classNode.Name.Content);
}

[Fact]
Expand All @@ -257,7 +257,7 @@ public void RazorPageDocumentClassifierPass_UsesAbsolutePath_IfRelativePathIsNot
var documentNode = processor.GetDocumentNode();
var classNode = documentNode.GetClassNode();

Assert.Equal("x___application_Views_Home_Index", classNode.Name);
Assert.Equal("x___application_Views_Home_Index", classNode.Name.Content);
}

[Fact]
Expand All @@ -275,7 +275,7 @@ public void RazorPageDocumentClassifierPass_SanitizesClassName()
var documentNode = processor.GetDocumentNode();
var classNode = documentNode.GetClassNode();

Assert.Equal("path_with_invalid_chars", classNode.Name);
Assert.Equal("path_with_invalid_chars", classNode.Name!.Content);
}

[Fact]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ public void ConsolidatedMvcViewDocumentClassifierPass_SetsClass()
Assert.NotNull(baseNode.ModelType);
Assert.Equal("TModel", baseNode.ModelType.Content);
Assert.Equal<string>(["internal", "sealed"], classNode.Modifiers);
Assert.Equal("Test", classNode.Name);
Assert.Equal("Test", classNode.Name.Content);
}

[Fact]
Expand All @@ -77,7 +77,7 @@ public void MvcViewDocumentClassifierPass_NullFilePath_SetsClass()
Assert.NotNull(baseNode.ModelType);
Assert.Equal("TModel", baseNode.ModelType.Content);
Assert.Equal<string>(["internal", "sealed"], classNode.Modifiers);
AssertEx.Equal("AspNetCore_ec563e63d931b806184cb02f79875e4f3b21d1ca043ad06699424459128b58c0", classNode.Name);
AssertEx.Equal("AspNetCore_ec563e63d931b806184cb02f79875e4f3b21d1ca043ad06699424459128b58c0", classNode.Name.Content);
}

[Theory]
Expand All @@ -97,7 +97,7 @@ public void ConsolidatedMvcViewDocumentClassifierPass_UsesRelativePathToGenerate
var documentNode = processor.GetDocumentNode();
var classNode = documentNode.GetClassNode();

Assert.Equal(expected, classNode.Name);
Assert.Equal(expected, classNode.Name.Content);
Assert.Equal<string>(["internal", "sealed"], classNode.Modifiers);
}

Expand Down
Loading
Loading