예제 #1
0
        public void DefinitionIsNotAnEnum_ReturnsFalse()
        {
            // Arrange
            var definition = Substitute.For <IStruct>();
            var type       = new UserTypeBuilder()
                             .SetDefinition(definition)
                             .Build();

            // Act
            var isEnum = type.IsEnum;

            // Assert
            Assert.False(isEnum);
        }
예제 #2
0
        public void DefinitionIsAStruct_ReturnsTrue()
        {
            // Arrange
            var definition = Substitute.For <IStruct>();
            var type       = new UserTypeBuilder()
                             .SetDefinition(definition)
                             .Build();

            // Act
            var isStruct = type.IsStruct;

            // Assert
            Assert.True(isStruct);
        }
예제 #3
0
        public void DefinitionIsUnresolvedType_ReturnsFalse()
        {
            // Arrange
            var definition = Substitute.For <IUnresolvedType>();
            var type       = new UserTypeBuilder()
                             .SetDefinition(definition)
                             .Build();

            // Act
            var isResolved = type.IsResolved;

            // Assert
            Assert.False(isResolved);
        }
예제 #4
0
        public void ReturnsDefinitionName()
        {
            // Arrange
            var definition = Substitute.For <IEnum>();

            definition.Name.Returns("UserType");
            var type = new UserTypeBuilder()
                       .SetDefinition(definition)
                       .Build();

            // Act
            var name = type.Name;

            // Assert
            Assert.Equal("UserType", name);
        }
        public void IsStruct_ReturnsTypeName()
        {
            // Arrange
            var definition = Substitute.For <IStruct>();

            definition.Name.Returns("User");
            var type = new UserTypeBuilder()
                       .SetDefinition(definition)
                       .Build();

            // Act
            var name = type.CSharpOptionalTypeName;

            // Assert
            Assert.Equal("User", name);
        }
        public void IsEnum_ReturnsNullableTypeName()
        {
            // Arrange
            var definition = Substitute.For <IEnum>();

            definition.Name.Returns("UserType");
            var type = new UserTypeBuilder()
                       .SetDefinition(definition)
                       .Build();

            // Act
            var name = type.CSharpOptionalTypeName;

            // Assert
            Assert.Equal("UserType?", name);
        }
        public void DocumentHasNamespace_IncludesNamespaceInName()
        {
            // Arrange
            var definition = Substitute.For <IEnum>();

            definition.Name.Returns("UserType");
            definition.Document.CSharpNamespace.Returns("Thrift.Net.Tests");

            var type = new UserTypeBuilder()
                       .SetDefinition(definition)
                       .Build();

            // Act
            var name = type.CSharpOptionalTypeName;

            // Assert
            Assert.Equal("Thrift.Net.Tests.UserType?", name);
        }