public void GetHashCodeUsesGroups() { QueryGroupConstraints group1 = new QueryGroupConstraints(); QueryGroupConstraints group2 = new QueryGroupConstraints(); QueryGroupConstraints group3 = new QueryGroupConstraints(); group1.Add(new Constraint(new VariableExpression(new Variable("foo")))); group2.Add(new Constraint(new VariableExpression(new Variable("foo")))); group3.Add(new Constraint(new VariableExpression(new Variable("bar")))); Assert.IsTrue(group1.GetHashCode() == group2.GetHashCode(), "group1 should have same hash code as group2"); Assert.IsTrue(group1.GetHashCode() != group3.GetHashCode(), "group1 should not have same hash code as query2"); }
public void EqualsComparesGroups() { QueryGroupConstraints group1 = new QueryGroupConstraints(); QueryGroupConstraints group2 = new QueryGroupConstraints(); QueryGroupConstraints group3 = new QueryGroupConstraints(); group1.Add(new Constraint(new VariableExpression(new Variable("foo")))); group2.Add(new Constraint(new VariableExpression(new Variable("foo")))); group3.Add(new Constraint(new VariableExpression(new Variable("bar")))); Assert.IsTrue(group1.Equals(group2), "group1 should equal group2"); Assert.IsTrue(!group1.Equals(group3), "group1 should not equal query3"); }
public void AddConstraint(Constraint constraint) { itsGroupConstraints.Add(constraint); }