public void OverlapLen_Test() { var a = new IntInterval(3, 10); var bInA = new IntInterval(3, 5); var bIntersectARight = new IntInterval(5, 15); var bIntersectALeft = new IntInterval(-1, 5); var bBoundARight = new IntInterval(10, 15); var bBoundALeft = new IntInterval(-5, 3); var bContainsA = new IntInterval(-1, 15); var bApart = new IntInterval(-1, 2); Assert.AreEqual(2, a.OverlapLen(bInA)); Assert.AreEqual(5, a.OverlapLen(bIntersectARight)); Assert.AreEqual(2, a.OverlapLen(bIntersectALeft)); Assert.AreEqual(0, a.OverlapLen(bBoundARight)); Assert.AreEqual(0, a.OverlapLen(bBoundALeft)); Assert.AreEqual(7, a.OverlapLen(bContainsA)); Assert.AreEqual(0, a.OverlapLen(bApart)); }