public void CanonValueFilter() { var canon = new FilterCanonicalizer(); var valueFilter1 = new ValueFilter(Symbol("A.B"), true); var valueFilter2 = new ValueFilter(Symbol("A.B"), true); var valueFilter3 = new ValueFilter(Symbol("A.B")); var valueFilter4 = new ValueFilter(Symbol("B.C")); var canonValueFilter1 = valueFilter1.Canonicalize(canon); var canonValueFilter2 = valueFilter2.Canonicalize(canon); var canonValueFilter3 = valueFilter3.Canonicalize(canon); var canonValueFilter4 = valueFilter4.Canonicalize(canon); Assert.Same(canonValueFilter1, canonValueFilter2); Assert.NotSame(canonValueFilter1, canonValueFilter3); Assert.NotSame(canonValueFilter1, canonValueFilter4); }