public void equivalency_positive_column_name_case_insensitive() { var users = DocumentSchemaObjects.For <User>(); var table1 = users.StorageTable(); var table2 = users.StorageTable(); table2.Column("username").ShouldBeSameAs(table1.Column("UserName")); table2.ShouldBe(table1); }
public void equivalency_negative_different_numbers_of_columns() { var users = DocumentSchemaObjects.For <User>(); var table1 = users.StorageTable(); var table2 = users.StorageTable(); table2.Columns.Add(new TableColumn("user_name", "character varying")); table2.ShouldNotBe(table1); }
public void equivalency_negative_column_type_changed() { var users = DocumentSchemaObjects.For <User>(); var table1 = users.StorageTable(); var table2 = users.StorageTable(); table2.ReplaceOrAddColumn(table2.PrimaryKey.Name, "int", table2.PrimaryKey.Directive); table2.ShouldNotBe(table1); }
public void equivalency_positive() { var users = DocumentSchemaObjects.For <User>(); var table1 = users.StorageTable(); var table2 = users.StorageTable(); table2.ShouldBe(table1); table1.ShouldBe(table2); table1.ShouldNotBeSameAs(table2); }
public void perfect_match() { var users = DocumentSchemaObjects.For <User>(); var actual = users.StorageTable(); var expected = users.StorageTable(); var diff = new TableDiff(expected, actual); diff.Matches.ShouldBeTrue(); }
public void can_match_up_on_columns() { var users = DocumentSchemaObjects.For <User>(); var actual = users.StorageTable(); var expected = users.StorageTable(); var diff = new TableDiff(expected, actual); diff.Matched.OrderBy(x => x.Name).Select(x => x.Name) .ShouldHaveTheSameElementsAs("data", "id", DocumentMapping.DotNetTypeColumn, DocumentMapping.LastModifiedColumn, DocumentMapping.VersionColumn); }
public void not_matching_with_columns_of_same_name_that_are_different() { var users = DocumentSchemaObjects.For <User>(); var actual = users.StorageTable(); actual.ReplaceOrAddColumn("id", "int"); var expected = users.StorageTable(); var diff = new TableDiff(expected, actual); diff.Matches.ShouldBeFalse(); diff.Different.Single().Name.ShouldBe("id"); }
public void not_matching_with_extra_columns() { var users = DocumentSchemaObjects.For <User>(); var actual = users.StorageTable(); var tableColumn = new TableColumn("new", "varchar"); actual.Columns.Add(tableColumn); var expected = users.StorageTable(); var diff = new TableDiff(expected, actual); diff.Matches.ShouldBeFalse(); diff.Extras.Single().ShouldBe(tableColumn); }