コード例 #1
0
        public void Number_Of_Properties_And_Navigations_Is_Correct()
        {
            //Arrange
            var metadata = new CodeModelMetadata(typeof(Product));

            //Act && Assert
            Assert.Equal(8, metadata.Properties.Length);
            Assert.Null(metadata.PrimaryKeys);
            Assert.Null(metadata.Navigations);

            //Arrange
            metadata = new CodeModelMetadata(typeof(Category));

            //Act && Assert
            Assert.Equal(2, metadata.Properties.Length);
            Assert.Null(metadata.PrimaryKeys);
            Assert.Null(metadata.Navigations);

            //Arrange
            metadata = new CodeModelMetadata(typeof(Customer));

            //Act && Assert
            Assert.Equal(2, metadata.Properties.Length);
            Assert.Null(metadata.PrimaryKeys);
            Assert.Null(metadata.Navigations);
        }
コード例 #2
0
        public void PropertyMetadata_From_PropertyInfo()
        {
            //Arrange
            var modelMetadata = new CodeModelMetadata(typeof(Product));

            //Act
            var propertyMetadata = modelMetadata.Properties.FirstOrDefault(p => p.PropertyName == nameof(Product.ProductName));

            //Assert
            Assert.Equal(nameof(Product.ProductName), propertyMetadata.PropertyName);
            Assert.False(propertyMetadata.IsPrimaryKey);
            Assert.False(propertyMetadata.IsEnum);
            Assert.False(propertyMetadata.IsEnumFlags);
            Assert.False(propertyMetadata.IsForeignKey);
            Assert.False(propertyMetadata.IsAutoGenerated);
            Assert.Equal(typeof(string).FullName, propertyMetadata.TypeName);

            //Act
            propertyMetadata = modelMetadata.Properties.FirstOrDefault(p => p.PropertyName == nameof(Product.ProductId));

            //Assert
            Assert.Equal(nameof(Product.ProductId), propertyMetadata.PropertyName);
            Assert.False(propertyMetadata.IsPrimaryKey);
            Assert.False(propertyMetadata.IsEnum);
            Assert.False(propertyMetadata.IsEnumFlags);
            Assert.False(propertyMetadata.IsForeignKey);
            Assert.False(propertyMetadata.IsAutoGenerated);
            Assert.Equal(typeof(int).FullName, propertyMetadata.TypeName);

            //Act
            propertyMetadata = modelMetadata.Properties.FirstOrDefault(p => p.PropertyName == nameof(Product.CategoryId));

            //Assert
            Assert.Equal(nameof(Product.CategoryId), propertyMetadata.PropertyName);
            Assert.False(propertyMetadata.IsPrimaryKey);
            Assert.False(propertyMetadata.IsEnum);
            Assert.False(propertyMetadata.IsEnumFlags);
            Assert.False(propertyMetadata.IsForeignKey);
            Assert.False(propertyMetadata.IsAutoGenerated);
            Assert.Equal(typeof(int).FullName, propertyMetadata.TypeName);
        }