aboutsummaryrefslogtreecommitdiff
path: root/DebugUtils/GTMMethodCheckTest.m
diff options
context:
space:
mode:
authorGravatar thomasvl <thomasvl@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3>2008-04-14 17:21:02 +0000
committerGravatar thomasvl <thomasvl@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3>2008-04-14 17:21:02 +0000
commitcdf070c8d76ffc4eaa24e8671756cbbe9ceb2890 (patch)
treefaa9ae3a72a6591d6a6add7ceed7f91e92ade11f /DebugUtils/GTMMethodCheckTest.m
parent0aaecac6ff2bc89e58a0c8c6d6ad62e02fb2b011 (diff)
See the ReleaseNotes for the full details, highlights:
- bug fixes - code coverage support - more complete unittests - full support for unittesting UIs - support for the iphone sdk (include ui unittesting)
Diffstat (limited to 'DebugUtils/GTMMethodCheckTest.m')
-rw-r--r--DebugUtils/GTMMethodCheckTest.m69
1 files changed, 69 insertions, 0 deletions
diff --git a/DebugUtils/GTMMethodCheckTest.m b/DebugUtils/GTMMethodCheckTest.m
new file mode 100644
index 0000000..b5e7e6b
--- /dev/null
+++ b/DebugUtils/GTMMethodCheckTest.m
@@ -0,0 +1,69 @@
+//
+// GTMMethodCheckTest.m
+// Copyright 2006-2008 Google Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License"); you may not
+// use this file except in compliance with the License. You may obtain a copy
+// of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+// License for the specific language governing permissions and limitations under
+// the License.
+//
+
+#import "GTMSenTestCase.h"
+#import "GTMMethodCheck.h"
+
+static BOOL gTestCheckVar = NO;
+
+// This is a contrived class that doesn't inherit from NSObject, but does
+// implement some of it's functionality to force test a case in
+// GTMMethodCheck.
+@interface GTMClassThatDoesntInheritFromNSObject
++ (BOOL)instancesRespondToSelector:(SEL)selector;
++ (BOOL)respondsToSelector:(SEL)selector;
+@end
+
+@implementation GTMClassThatDoesntInheritFromNSObject
+GTM_METHOD_CHECK(GTMClassThatDoesntInheritFromNSObject, GTMMethodCheckTestMethod);
+- (void)GTMMethodCheckTestMethod {
+}
++ (BOOL)instancesRespondToSelector:(SEL)selector {
+ return YES;
+}
+
++ (BOOL)respondsToSelector:(SEL)selector {
+ return YES;
+}
+@end
+
+@interface GTMMethodCheckTest : SenTestCase
+@end
+
+@implementation GTMMethodCheckTest
+GTM_METHOD_CHECK(GTMMethodCheckTest, GTMMethodCheckTestMethod);
+GTM_METHOD_CHECK(GTMMethodCheckTest, GTMMethodCheckTestClassMethod);
+
+- (void)GTMMethodCheckTestMethod {
+}
+
++ (void)GTMMethodCheckTestClassMethod {
+}
+
++ (void)xxGTMMethodCheckMethodTestCheck {
+ // This gets called because of its special name by GMMethodCheck
+ // Look at the Macros in GMMethodCheck.h for details.
+ gTestCheckVar = YES;
+}
+
+- (void)testGTMMethodCheck {
+#ifdef DEBUG
+ // GTMMethodCheck only runs in debug
+ STAssertTrue(gTestCheckVar, @"Should be true");
+#endif
+}
+@end