public void Unify_TwoSubtypes_DoesNotUnify() { var tags2double = new Curry(Typs.Tags, Typs.Double); var tags2pdouble = new Curry(Typs.Tags, Typs.PDouble); var unifA = tags2double.Unify(tags2pdouble, true); Assert.Null(unifA); var unifB = tags2pdouble.Unify(tags2double, true); Assert.NotNull(unifB); var unifC = tags2double.Unify(tags2pdouble, false); Assert.NotNull(unifC); var unifD = tags2pdouble.Unify(tags2double, false); Assert.Null(unifD); }