aboutsummaryrefslogtreecommitdiff
path: root/Foundation/GTMGeometryUtilsTest.m
diff options
context:
space:
mode:
Diffstat (limited to 'Foundation/GTMGeometryUtilsTest.m')
-rw-r--r--Foundation/GTMGeometryUtilsTest.m25
1 files changed, 25 insertions, 0 deletions
diff --git a/Foundation/GTMGeometryUtilsTest.m b/Foundation/GTMGeometryUtilsTest.m
index 5a59c8b..38b86fb 100644
--- a/Foundation/GTMGeometryUtilsTest.m
+++ b/Foundation/GTMGeometryUtilsTest.m
@@ -164,6 +164,31 @@
STAssertEquals(result, rect, nil);
}
+
+- (void)testGTMNSScaleRectToRect {
+ typedef struct {
+ NSRect expectedRect;
+ GTMScaling scaling;
+ GTMRectAlignment alignment;
+ } TestData;
+
+ NSRect rect1 = NSMakeRect(0, 0, 4, 4);
+ NSRect rect2 = NSMakeRect(0, 0, 2, 1);
+
+ TestData data[] = {
+ { NSMakeRect(2, 3, 2, 1), GTMScaleToFillProportionally, GTMRectAlignTopRight },
+ { NSMakeRect(0, 0, 4, 4), GTMScaleToFit, GTMRectAlignCenter },
+ { NSMakeRect(1, 1.5, 2, 1), GTMScaleNone, GTMRectAlignCenter },
+ { NSMakeRect(1, 0, 2, 1), GTMScaleProportionally, GTMRectAlignBottom },
+ };
+
+ for (size_t i = 0; i < sizeof(data) / sizeof(TestData); i++) {
+ NSRect outRect = GTMNSScaleRectToRect(rect2, rect1, data[i].scaling, data[i].alignment);
+ STAssertEquals(outRect, data[i].expectedRect, nil);
+ }
+}
+
+
- (void)testGTMNSDistanceBetweenPoints {
NSPoint pt1 = NSMakePoint(0, 0);
NSPoint pt2 = NSMakePoint(3, 4);