public void when_prefixes_are_equal_and_left_suffix_is_less_should_consider_left_to_be_a_superset(string leftRange, string rightRange) { //arrange var sut = new CidrRange(leftRange); var right = new CidrRange(rightRange); //act var actual = sut.CompareTo(right); var expected = sut.Prefix.Skip(1).SequenceEqual(right.Prefix.Skip(1)) && sut.Suffix < right.Suffix ? RangeIntersectionResult.Superset : RangeIntersectionResult.Disjoint; //assert Assert.AreEqual(expected, actual); }
public void when_prefixes_are_different_should_consider_left_to_be_a_disjoint(string leftRange, string rightRange) { //arrange var sut = new CidrRange(leftRange); var right = new CidrRange(rightRange); //act var actual = sut.CompareTo(right); var expected = !sut.Prefix.SequenceEqual(right.Prefix)//this is not exactly correct specification, but it's OK for the sake of simplicity ? RangeIntersectionResult.Disjoint : RangeIntersectionResult.Subset; //assert Assert.AreEqual(expected, actual); }