public void path_value_id_is_less_than() { GameObject gameObject = new GameObject(); IHexagon hex1 = Substitute.For <IHexagon>(); Vector3Int coords1 = new Vector3Int(0, -1, -1); hex1.MyHexMap.CoOrds.Returns(coords1); hex1.HexTransform.Returns(gameObject.transform); IHexagon hex2 = Substitute.For <IHexagon>(); Vector3Int coords2 = new Vector3Int(1, 0, -1); hex2.MyHexMap.CoOrds.Returns(coords2); hex2.HexTransform.Returns(gameObject.transform); Vector3 centre = new Vector3(0, 0, 0); PathValue path1 = new PathValue(4, 4, centre, hex1, null); PathValue path2 = new PathValue(4, 4, centre, hex2, null); Assert.AreEqual(path1.CompareTo(path2), -1); }