public void Given_a_tablePair_and_a_CompareResult_then_First_Second_and_Detail_delegates_on_them() { // Arrange var pair = new Pair<Table>(new Table("irrelevant"), new Table("irrelevant")); var compareResult = new CompareResult(); // Act var conflict = new SpecificationConflict(pair, compareResult); // Assert Assert.That(conflict.Detail, Is.SameAs(compareResult)); Assert.That(conflict.First, Is.EqualTo(pair.First)); Assert.That(conflict.Second, Is.EqualTo(pair.Second)); }
public CompareResult Compare(SchemaSpecification otherSpec) { CompareResult result = new CompareResult(); foreach (var eachTable in _tableList) { Table otherTable = otherSpec.FindTableByName(eachTable.Name); if (otherTable == null) result.AddMissing(eachTable); else { CompareResult compareResult = eachTable.Compare(otherTable); if (compareResult.HaveValues) { var conflict = new SpecificationConflict(new Pair<Table>(eachTable, otherTable), compareResult); result.AddConflict(conflict); } } } return result; }