public void Equals_SameInstance_ReturnsTrue() { // Arrange var span = new ModelSpan(SourceLocation.Zero, " TypeName ", "TypeName"); // Act + Assert Assert.IsTrue(span.Equals(span)); }
public void OnEndSpan_ProcessesModelSpansAndAddsDesignTimeStatement() { // Arrange Mock <RazorEngineHost> mockHost = new Mock <RazorEngineHost>(); mockHost.SetupGet(h => h.NamespaceImports).Returns(new HashSet <string>()); mockHost.SetupGet(h => h.DefaultBaseClass).Returns("System.Web.Mvc.WebViewPage"); var generator = new MvcCSharpRazorCodeGenerator("FooClass", "Root.Namespace", "SomeSourceFile.cshtml", mockHost.Object) { DesignTimeMode = true }; Span modelNameSpan = new ModelSpan(SourceLocation.Zero, "MyFooModel", "MyFooModel"); generator.VisitStartBlock(BlockType.Statement); // Act generator.VisitSpan(modelNameSpan); // Assert Assert.AreEqual(3, generator.HelperVariablesMethod.Statements.Count); var statements = generator.HelperVariablesMethod.Statements.Cast <CodeSnippetStatement>().Select(s => s.Value).ToList(); Assert.AreEqual("#pragma warning disable 219", statements[0]); Assert.AreEqual("MyFooModel __modelHelper = null;\r\n", statements[1]); Assert.AreEqual("#pragma warning restore 219", statements[2]); }
public void Equals_DifferentType_ReturnsFalse() { // Arrange var span = new ModelSpan(SourceLocation.Zero, "A", "A"); // Act + Assert Assert.IsFalse(span.Equals(new object())); }
/// <summary> /// Visits a model span. /// </summary> /// <param name="span">The model span.</param> private void VisitModelSpan(ModelSpan span) { SetModelType(span.ModelTypeName); if (DesignTimeMode) WriteHelperVariable(span.Content, "__modelHelper"); }
public void Equals_NullValue_ReturnsFalse() { // Arrange var span = new ModelSpan(SourceLocation.Zero, "A", "A"); // Act + Assert Assert.IsFalse(span.Equals(null)); }
public void Equals_DifferentType_ReturnsFalse() { // Arrange var span = new ModelSpan(SourceLocation.Zero, "A", "A"); // Act + Assert Assert.IsFalse(span.Equals(new object())); }
public void Equals_NullValue_ReturnsFalse() { // Arrange var span = new ModelSpan(SourceLocation.Zero, "A", "A"); // Act + Assert Assert.IsFalse(span.Equals(null)); }
public void Equals_IdenticalSpan_ReturnsTrue() { // Arrange var span1 = new ModelSpan(SourceLocation.Zero, " TypeName ", "TypeName"); var span2 = new ModelSpan(SourceLocation.Zero, " TypeName ", "TypeName"); // Act + Assert Assert.IsTrue(span1.Equals(span2)); }
public void Equals_SameInstance_ReturnsTrue() { // Arrange var span = new ModelSpan(SourceLocation.Zero, " TypeName ", "TypeName"); // Act + Assert Assert.IsTrue(span.Equals(span)); }
public void Equals_IdenticalSpan_ReturnsTrue() { // Arrange var span1 = new ModelSpan(SourceLocation.Zero, " TypeName ", "TypeName"); var span2 = new ModelSpan(SourceLocation.Zero, " TypeName ", "TypeName"); // Act + Assert Assert.IsTrue(span1.Equals(span2)); }
private void VisitModelSpan(ModelSpan span) { SetBaseType(span.ModelTypeName); if (DesignTimeMode) { WriteHelperVariable(span.Content, "__modelHelper"); } }
public void Constructor() { // Arrange var start = new SourceLocation(1, 2, 3); // Act var result = new ModelSpan(start, "content", "typeName"); // Assert Assert.AreEqual("typeName", result.ModelTypeName); Assert.IsFalse(result.Hidden); Assert.AreEqual(SpanKind.Code, result.Kind); Assert.AreEqual(start, result.Start); Assert.AreEqual("content", result.Content); Assert.IsFalse(result.IsBlock); }
public void Constructor() { // Arrange var start = new SourceLocation(1, 2, 3); // Act var result = new ModelSpan(start, "content", "typeName"); // Assert Assert.AreEqual("typeName", result.ModelTypeName); Assert.IsFalse(result.Hidden); Assert.AreEqual(SpanKind.Code, result.Kind); Assert.AreEqual(start, result.Start); Assert.AreEqual("content", result.Content); Assert.IsFalse(result.IsBlock); }
public void OnEndSpan_ProcessesModelSpans() { // Arrange Mock<RazorEngineHost> mockHost = new Mock<RazorEngineHost>(); mockHost.SetupGet(h => h.NamespaceImports).Returns(new HashSet<string>()); mockHost.SetupGet(h => h.DefaultBaseClass).Returns("System.Web.Mvc.WebViewPage"); var generator = new MvcVBRazorCodeGenerator("FooClass", "Root.Namespace", "SomeSourceFile.vbhtml", mockHost.Object); Span modelSpan = new ModelSpan(SourceLocation.Zero, "MyFooModel", "MyFooModel"); generator.VisitStartBlock(BlockType.Statement); // Act generator.VisitSpan(modelSpan); // Assert Assert.AreEqual(1, generator.GeneratedClass.BaseTypes.Count); var baseType = generator.GeneratedClass.BaseTypes[0]; Assert.AreEqual("System.Web.Mvc.WebViewPage(Of MyFooModel)", baseType.BaseType); Assert.AreEqual(0, generator.GeneratedExecuteMethod.Statements.Count); }
public void OnEndSpan_ProcessesModelSpansAndAddsDesignTimeStatement() { // Arrange Mock<RazorEngineHost> mockHost = new Mock<RazorEngineHost>(); mockHost.SetupGet(h => h.NamespaceImports).Returns(new HashSet<string>()); mockHost.SetupGet(h => h.DefaultBaseClass).Returns("System.Web.Mvc.WebViewPage"); var generator = new MvcVBRazorCodeGenerator("FooClass", "Root.Namespace", "SomeSourceFile.vbhtml", mockHost.Object) { DesignTimeMode = true }; Span modelNameSpan = new ModelSpan(SourceLocation.Zero, "MyFooModel", "MyFooModel"); generator.VisitStartBlock(BlockType.Statement); // Act generator.VisitSpan(modelNameSpan); // Assert Assert.AreEqual(1, generator.HelperVariablesMethod.Statements.Count); var statements = generator.HelperVariablesMethod.Statements.Cast<CodeSnippetStatement>().Select(s => s.Value).ToList(); Assert.AreEqual("Dim __modelHelper As MyFooModel = Nothing\r\n", statements[0]); }
public void OnEndSpan_ProcessesModelSpans() { // Arrange Mock <RazorEngineHost> mockHost = new Mock <RazorEngineHost>(); mockHost.SetupGet(h => h.NamespaceImports).Returns(new HashSet <string>()); mockHost.SetupGet(h => h.DefaultBaseClass).Returns("System.Web.Mvc.WebViewPage"); var generator = new MvcCSharpRazorCodeGenerator("FooClass", "Root.Namespace", "SomeSourceFile.cshtml", mockHost.Object); Span modelSpan = new ModelSpan(SourceLocation.Zero, "MyFooModel", "MyFooModel"); generator.VisitStartBlock(BlockType.Statement); // Act generator.VisitSpan(modelSpan); // Assert Assert.AreEqual(1, generator.GeneratedClass.BaseTypes.Count); var baseType = generator.GeneratedClass.BaseTypes[0]; Assert.AreEqual("System.Web.Mvc.WebViewPage<MyFooModel>", baseType.BaseType); Assert.AreEqual(0, generator.GeneratedExecuteMethod.Statements.Count); }
private void VisitModelSpan(ModelSpan span) { this.SetBaseType(span.ModelTypeName); }
private void VisitModelSpan(ModelSpan span) { this.SetBaseType(span.ModelTypeName); }