MODULE test_rect ; (* m2SDL unit test: pure-Modula-2 SDLRect helpers, no SDL needed. *) FROM SDLRect IMPORT MakePoint, MakeRect, PointEquals, RectEquals, RectEmpty; FROM libc IMPORT printf; VAR a, b: CARDINAL; BEGIN a := 0; b := 0; IF NOT PointEquals(MakePoint(1, 2), MakePoint(1, 2)) THEN printf("FAIL test_rect: PointEquals\n"); HALT(1) END; IF PointEquals(MakePoint(1, 2), MakePoint(3, 4)) THEN printf("FAIL test_rect: PointEquals negative\n"); HALT(1) END; IF NOT RectEquals(MakeRect(0, 0, 10, 20), MakeRect(0, 0, 10, 20)) THEN printf("FAIL test_rect: RectEquals\n"); HALT(1) END; IF RectEmpty(MakeRect(0, 0, 10, 20)) THEN printf("FAIL test_rect: RectEmpty false positive\n"); HALT(1) END; IF NOT RectEmpty(MakeRect(0, 0, 0, 20)) THEN printf("FAIL test_rect: RectEmpty zero width\n"); HALT(1) END; printf("PASS test_rect\n") END test_rect.