From f2608998f92990eebd00a20cc1584add0aafa6fe Mon Sep 17 00:00:00 2001 From: Ross Boucher Date: Tue, 24 Nov 2009 18:30:31 -0500 Subject: [PATCH] Fixes a typo in CPRectContainsRect by simply calling out to CGRectContainsRect. We should explore simply removing this method entirely. Includes test cases. Closes #345. --- AppKit/CPGeometry.j | 4 ++-- Tests/AppKit/CPGeometryTest.j | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 Tests/AppKit/CPGeometryTest.j diff --git a/AppKit/CPGeometry.j b/AppKit/CPGeometry.j index c7d190afb..8eec4f8d9 100644 --- a/AppKit/CPGeometry.j +++ b/AppKit/CPGeometry.j @@ -234,9 +234,9 @@ function CPRectContainsPoint(aRect, aPoint) @param possibleInner the CGRect to test if it fits inside \c possibleOuter. @return BOOL \c YES if \c possibleInner fits inside \c possibleOuter. */ -function CPRectContainsRect(lhsRect, rhsRect) +function CPRectContainsRect(possibleOuter, possibleInner) { - return CPRectEqualToRect(CPUnionRect(lhsRect, rhsRect), rhsRect); + return CGRectContainsRect(possibleOuter, possibleInner); } /*! diff --git a/Tests/AppKit/CPGeometryTest.j b/Tests/AppKit/CPGeometryTest.j new file mode 100644 index 000000000..50f91828e --- /dev/null +++ b/Tests/AppKit/CPGeometryTest.j @@ -0,0 +1,17 @@ +@import + +@implementation CPGeometryTest : OJTestCase +{ +} + +- (void)testCPRectContainsRect +{ + [self assertTrue:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(0, 0, 50, 50))]; + [self assertTrue:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(50, 50, 50, 50))]; + [self assertTrue:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(450, 450, 50, 50))]; + [self assertTrue:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(500, 500, 0, 0))]; + [self assertFalse:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(50, 50, 500, 500))]; + [self assertFalse:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(500, 500, 1, 1))]; +} + +@end