| 123456789101112131415161718192021222324252627282930313233343536373839 |
- MODULE test_rect ;
- (* m2SDL3 unit test: pure-Modula-2 SDL3Rect helpers, no SDL needed. *)
- FROM SDL3Rect IMPORT SDLRect, SDLFRect,
- MakePoint, MakeFPoint, MakeRect, MakeFRect,
- PointEquals, FPointEquals, RectEquals, FRectEquals,
- RectEmpty, FRectEmpty;
- FROM libc IMPORT printf;
- VAR r: SDLRect; fr: SDLFRect;
- BEGIN
- 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;
- r := MakeRect(0, 0, 10, 20);
- IF RectEmpty(r) THEN
- printf("FAIL test_rect: RectEmpty false positive\n"); HALT(1) END;
- r := MakeRect(0, 0, 0, 20);
- IF NOT RectEmpty(r) THEN
- printf("FAIL test_rect: RectEmpty zero width\n"); HALT(1) END;
- IF NOT FPointEquals(MakeFPoint(VAL(SHORTREAL, 1.5), VAL(SHORTREAL, 2.5)),
- MakeFPoint(VAL(SHORTREAL, 1.5), VAL(SHORTREAL, 2.5))) THEN
- printf("FAIL test_rect: FPointEquals\n"); HALT(1) END;
- IF NOT FRectEquals(MakeFRect(VAL(SHORTREAL, 0.0), VAL(SHORTREAL, 0.0),
- VAL(SHORTREAL, 10.0), VAL(SHORTREAL, 20.0)),
- MakeFRect(VAL(SHORTREAL, 0.0), VAL(SHORTREAL, 0.0),
- VAL(SHORTREAL, 10.0), VAL(SHORTREAL, 20.0))) THEN
- printf("FAIL test_rect: FRectEquals\n"); HALT(1) END;
- fr := MakeFRect(VAL(SHORTREAL, 0.0), VAL(SHORTREAL, 0.0),
- VAL(SHORTREAL, 0.0), VAL(SHORTREAL, 5.0));
- IF NOT FRectEmpty(fr) THEN
- printf("FAIL test_rect: FRectEmpty zero width\n"); HALT(1) END;
- printf("PASS test_rect\n")
- END test_rect.
|