コード例 #1
0
        public void VisitControllerTreeNode_AreaExistsWithSameNameAsController_AppendsSuffixToControllerNodeField()
        {
            BuildTestTree();

            mocks.ReplayAll();
            generator.Visit(_root);
            mocks.VerifyAll();

            var type            = CodeDomAssert.AssertHasType(source.Ccu, "RootParentAreaNode");
            var controllerField = (CodeMemberField)type.Members[5];

            Assert.AreEqual("_childController", controllerField.Name);
        }
コード例 #2
0
        public void VisitControllerTreeNode_AreaExistsWithSameNameAsController_AppendsSuffixToAreaNodeField()
        {
            BuildTestTree();

            _mocks.ReplayAll();
            _generator.Visit(_root);
            _mocks.VerifyAll();

            CodeTypeDeclaration type      = CodeDomAssert.AssertHasType(_source.Ccu, "RootParentAreaNode");
            CodeMemberField     areaField = (CodeMemberField)type.Members[3];

            Assert.AreEqual("_childArea", areaField.Name);
        }
コード例 #3
0
        public void VisitControllerTreeNode_Always_CreatesControllerType()
        {
            var node = new ControllerTreeNode("HomeController", "ControllerNamespace");

            _root.AddChild(node);

            mocks.ReplayAll();
            generator.Visit(_root);
            mocks.VerifyAll();

            var type = CodeDomAssert.AssertHasType(source.Ccu, "RootHomeControllerNode");

            CodeDomAssert.AssertNotHasField(type, "_services");
        }
コード例 #4
0
        public void VisitControllerTreeNode_AreaExistsWithSameNameAsController_AppendsSuffixToControllerNodeProperty()
        {
            BuildTestTree();

            _mocks.ReplayAll();
            _generator.Visit(_root);
            _mocks.VerifyAll();

            CodeTypeDeclaration type = CodeDomAssert.AssertHasType(_source.Ccu, "RootParentAreaNode");
            CodeMemberProperty  controllerProperty = (CodeMemberProperty)type.Members[4];

            Assert.AreEqual("ChildController", controllerProperty.Name);
            CodeMethodReturnStatement statement = (CodeMethodReturnStatement)controllerProperty.GetStatements[0];

            Assert.AreEqual("_childController", ((CodeFieldReferenceExpression)statement.Expression).FieldName);
        }
コード例 #5
0
        public void VisitControllerTreeNode_AreaExistsWithSameNameAsController_AppendsSuffixToConstructorFieldReferences()
        {
            BuildTestTree();

            mocks.ReplayAll();
            generator.Visit(_root);
            mocks.VerifyAll();

            var type        = CodeDomAssert.AssertHasType(source.Ccu, "RootParentAreaNode");
            var constructor = (CodeConstructor)type.Members[1];

            Assert.AreEqual(3, constructor.Statements.Count);

            var areaAssignment     = (CodeAssignStatement)constructor.Statements[1];
            var areaFieldReference = (CodeFieldReferenceExpression)areaAssignment.Left;

            Assert.AreEqual("_childArea", areaFieldReference.FieldName);

            var controllerAssignment     = (CodeAssignStatement)constructor.Statements[2];
            var controllerFieldReference = (CodeFieldReferenceExpression)controllerAssignment.Left;

            Assert.AreEqual("_childController", controllerFieldReference.FieldName);
        }