diff options
author | dmaclach <dmaclach@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3> | 2011-07-14 20:40:57 +0000 |
---|---|---|
committer | dmaclach <dmaclach@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3> | 2011-07-14 20:40:57 +0000 |
commit | d05ec13c0115d364e69b237839cd874689921458 (patch) | |
tree | 3df8ae6c4b4c420d8f07c0e431fd83830f7c0e2f /AppKit/GTMKeyValueAnimationTest.m | |
parent | 2f3ffbf853bee2e02d440d801f64064d61f80080 (diff) |
Added by hand due to perforce problems. GTMKeyValueAnimation is a simple key path animation class based on NSAnimation
Diffstat (limited to 'AppKit/GTMKeyValueAnimationTest.m')
-rw-r--r-- | AppKit/GTMKeyValueAnimationTest.m | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/AppKit/GTMKeyValueAnimationTest.m b/AppKit/GTMKeyValueAnimationTest.m new file mode 100644 index 0000000..665a9f9 --- /dev/null +++ b/AppKit/GTMKeyValueAnimationTest.m @@ -0,0 +1,55 @@ +// +// GTMKeyValueAnimationTest.m +// +// Copyright 2011 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 "GTMKeyValueAnimation.h" +#import "GTMFoundationUnitTestingUtilities.h" + +@interface GTMKeyValueAnimationTest : GTMTestCase { + @private + GTMUnitTestingBooleanRunLoopContext *context_; + BOOL shouldStartHit_; +} +@end + +@implementation GTMKeyValueAnimationTest + +- (void)testAnimation { + shouldStartHit_ = NO; + GTMKeyValueAnimation *anim = + [[[GTMKeyValueAnimation alloc] initWithTarget:self + keyPath:@"oggle"] autorelease]; + [anim setDelegate:self]; + [anim startAnimation]; + context_ = [GTMUnitTestingBooleanRunLoopContext context]; + [[NSRunLoop currentRunLoop] gtm_runUpToSixtySecondsWithContext:context_]; + [anim stopAnimation]; + STAssertTrue([context_ shouldStop], @"Animation value never got set"); + STAssertTrue(shouldStartHit_, @"animationShouldStart not called"); +} + +- (BOOL)animationShouldStart:(NSAnimation*)animation { + shouldStartHit_ = YES; + return YES; +} + +- (void)setOggle:(CGFloat)oggle { + [context_ setShouldStop:YES]; +} + +@end |