public void BuildContentTypeClass_WhenContentTypeHasNamespace_ShouldCombineNamespaces()
        {
            var contentType = new ContentType { Name = "MyBlock", Namespace = "MyBlocks" };
            var options = new OptionsFake { Namespace = "MyCompany" };
            var subject = CreateSubject(options);
            var result = subject.BuildContentTypeClass(contentType);

            Assert.AreEqual("MyCompany.MyBlocks", result.Namespaces[ContentTypeCodeBuilder.ClassNamespaceIndex].Name);
        }
        public void CreateContentTypeIdentifier_WhenNameEndsWithSuffix_ShouldNotModifyName()
        {
            var options = new OptionsFake { PageSuffix = "Pageskij" };
            var typeName = "NamePageskij";
            var subject = CreateSubject(options);

            var result = subject.CreateContentTypeIdentifier(typeName, ContentTypeCategory.Page);

            Assert.AreEqual(typeName, result);
        }
        public void CreateContentTypeIdentifier_WhenNameEndsWithDifferentlyCasedSuffix_ShouldNotDoubleUpSuffix()
        {
            var options = new OptionsFake { PageSuffix = "Pageskij" };
            var typeName = "Name pageskij";
            var subject = CreateSubject(options);

            var result = subject.CreateContentTypeIdentifier(typeName, ContentTypeCategory.Page);

            Assert.AreEqual("NamePageskij", result);
        }
        public void CreateContentTypeIdentifier_WhenCategoryIsBlock_ShouldAlwaysEndWithProvidedBlockSuffix()
        {
            var options = new OptionsFake { BlockSuffix = "Blockskij" };
            var typeName = "Name";
            var subject = CreateSubject(options);

            var result = subject.CreateContentTypeIdentifier(typeName, ContentTypeCategory.Block);

            Assert.IsTrue(result.EndsWith(options.BlockSuffix));
        }
        public void BuildContentTypeClass_WhenContentTypeIsBlock_ShouldAddBlockBaseType()
        {
            var contentType = new ContentType { Name = "MyBlock", ContentTypeCategory = ContentTypeCategory.Block };
            var options = new OptionsFake { BlockBaseClass = "BlockBase" };
            var subject = CreateSubject(options);

            var result = subject.BuildContentTypeClass(contentType);

            Assert.IsTrue(result.Namespaces[1].Types[0].BaseTypes.Count > 0);
        }
        public void CreateContentTypeIdentifier_WhenNameEndsWithDifferentlyCasedSuffix_ShouldNotDoubleUpSuffix()
        {
            var options = new OptionsFake {
                PageSuffix = "Pageskij"
            };
            var typeName = "Name pageskij";
            var subject  = CreateSubject(options);

            var result = subject.CreateContentTypeIdentifier(typeName, ContentTypeCategory.Page);

            Assert.AreEqual("NamePageskij", result);
        }
        public void CreateContentTypeIdentifier_WhenNameEndsWithSuffix_ShouldNotModifyName()
        {
            var options = new OptionsFake {
                PageSuffix = "Pageskij"
            };
            var typeName = "NamePageskij";
            var subject  = CreateSubject(options);

            var result = subject.CreateContentTypeIdentifier(typeName, ContentTypeCategory.Page);

            Assert.AreEqual(typeName, result);
        }
        public void EnsureValidNaming_WhenCategoryIsPage_ShouldAlwaysEndWithProvidedPageSuffix()
        {
            var options = new OptionsFake {
                PageSuffix = "Pageskij"
            };
            var typeName = "Name";
            var subject  = CreateSubject(options);

            var result = subject.CreateContentTypeIdentifier(typeName, ContentTypeCategory.Page);

            Assert.IsTrue(result.EndsWith(options.PageSuffix));
        }
        public void CreateContentTypeIdentifier_WhenCategoryIsBlock_ShouldAlwaysEndWithProvidedBlockSuffix()
        {
            var options = new OptionsFake {
                BlockSuffix = "Blockskij"
            };
            var typeName = "Name";
            var subject  = CreateSubject(options);

            var result = subject.CreateContentTypeIdentifier(typeName, ContentTypeCategory.Block);

            Assert.IsTrue(result.EndsWith(options.BlockSuffix));
        }
Example #10
0
        public void BuildContentTypeClass_WhenContentTypeHasNamespace_ShouldCombineNamespaces()
        {
            var contentType = new ContentType {
                Name = "MyBlock", Namespace = "MyBlocks"
            };
            var options = new OptionsFake {
                Namespace = "MyCompany"
            };
            var subject = CreateSubject(options);
            var result  = subject.BuildContentTypeClass(contentType);

            Assert.AreEqual("MyCompany.MyBlocks", result.Namespaces[ContentTypeCodeBuilder.ClassNamespaceIndex].Name);
        }
Example #11
0
        public void BuildContentTypeClass_WhenContentTypeIsBlock_ShouldAddBlockBaseType()
        {
            var contentType = new ContentType {
                Name = "MyBlock", ContentTypeCategory = ContentTypeCategory.Block
            };
            var options = new OptionsFake {
                BlockBaseClass = "BlockBase"
            };
            var subject = CreateSubject(options);

            var result = subject.BuildContentTypeClass(contentType);

            Assert.IsTrue(result.Namespaces[1].Types[0].BaseTypes.Count > 0);
        }
        public void BuildContentTypeClass_ShouldAddImportsFromOptionsToGlobalNamespace()
        {
            var options = new OptionsFake
            {
                Imports = new[] { "Some.Namespace", "Another.Namespace" }
            };
            var subject = CreateSubject(options);
            var contentType = new ContentType { Name = "MyBlock" };

            var result = subject.BuildContentTypeClass(contentType);

            var resultImports = result.Namespaces[ContentTypeCodeBuilder.GlobalNamespaceIndex].Imports.Cast<CodeNamespaceImport>();

            Assert.AreEqual(options.Imports.Count(), resultImports.Where(x => options.Imports.Contains(x.Namespace)).Count());
        }
Example #13
0
        public void BuildContentTypeClass_ShouldAddImportsFromOptionsToGlobalNamespace()
        {
            var options = new OptionsFake
            {
                Imports = new[] { "Some.Namespace", "Another.Namespace" }
            };
            var subject     = CreateSubject(options);
            var contentType = new ContentType {
                Name = "MyBlock"
            };

            var result = subject.BuildContentTypeClass(contentType);

            var resultImports = result.Namespaces[ContentTypeCodeBuilder.GlobalNamespaceIndex].Imports.Cast <CodeNamespaceImport>();

            Assert.AreEqual(options.Imports.Count(), resultImports.Where(x => options.Imports.Contains(x.Namespace)).Count());
        }
        public void EnsureValidNaming_WhenCategoryIsPage_ShouldAlwaysEndWithProvidedPageSuffix()
        {
            var options = new OptionsFake { PageSuffix = "Pageskij" };
            var typeName = "Name";
            var subject = CreateSubject(options);

            var result = subject.CreateContentTypeIdentifier(typeName, ContentTypeCategory.Page);

            Assert.IsTrue(result.EndsWith(options.PageSuffix));
        }