private PrimitivePropertyConfiguration Cloning_a_primitive_property_configuration_clones_its_property_information_implementation( PrimitivePropertyConfiguration configuration) { configuration.IsNullable = true; configuration.ConcurrencyMode = ConcurrencyMode.Fixed; configuration.DatabaseGeneratedOption = DatabaseGeneratedOption.Identity; configuration.ColumnType = "ColumnType"; configuration.ColumnName = "ColumnName"; configuration.ColumnOrder = 1; configuration.OverridableConfigurationParts = OverridableConfigurationParts.OverridableInCSpace; configuration.SetAnnotation("A1", "V1"); configuration.SetAnnotation("A2", "V2"); configuration.SetAnnotation("A3", "V3"); configuration.SetAnnotation("A1", "V4"); configuration.SetAnnotation("A2", null); var clone = configuration.Clone(); Assert.True(clone.IsNullable.Value); Assert.Equal(ConcurrencyMode.Fixed, clone.ConcurrencyMode); Assert.Equal(DatabaseGeneratedOption.Identity, clone.DatabaseGeneratedOption); Assert.Equal("ColumnType", clone.ColumnType); Assert.Equal("ColumnName", clone.ColumnName); Assert.Equal(1, clone.ColumnOrder); Assert.Equal(OverridableConfigurationParts.OverridableInCSpace, clone.OverridableConfigurationParts); Assert.Equal("V4", clone.Annotations["A1"]); Assert.Null(clone.Annotations["A2"]); Assert.Equal("V3", clone.Annotations["A3"]); return(clone); }
public void HasAnnotation_configures_only_annotations_that_have_not_already_been_set() { var innerConfig = new Properties.Primitive.PrimitivePropertyConfiguration(); innerConfig.SetAnnotation("A1", "V1"); var config = new ConventionPrimitivePropertyConfiguration(new MockPropertyInfo(), () => innerConfig); var result = config.HasColumnAnnotation("A1", "V1B").HasColumnAnnotation("A2", "V2"); Assert.Equal("V1", innerConfig.Annotations["A1"]); Assert.Equal("V2", innerConfig.Annotations["A2"]); Assert.Same(config, result); }