| // |
| // RACSubscriptingAssignmentTrampolineSpec.m |
| // ReactiveCocoa |
| // |
| // Created by Josh Abernathy on 9/24/12. |
| // Copyright (c) 2012 GitHub, Inc. All rights reserved. |
| // |
| |
| #import "RACSubscriptingAssignmentTrampoline.h" |
| #import "RACPropertySignalExamples.h" |
| #import "RACTestObject.h" |
| #import "RACSubject.h" |
| |
| SpecBegin(RACSubscriptingAssignmentTrampoline) |
| |
| id setupBlock = ^(RACTestObject *testObject, NSString *keyPath, id nilValue, RACSignal *signal) { |
| [[RACSubscriptingAssignmentTrampoline alloc] initWithTarget:testObject nilValue:nilValue][keyPath] = signal; |
| }; |
| |
| itShouldBehaveLike(RACPropertySignalExamples, ^{ |
| return @{ RACPropertySignalExamplesSetupBlock: setupBlock }; |
| }); |
| |
| it(@"should expand the RAC macro properly", ^{ |
| RACSubject *subject = [RACSubject subject]; |
| RACTestObject *testObject = [[RACTestObject alloc] init]; |
| RAC(testObject, objectValue) = subject; |
| |
| [subject sendNext:@1]; |
| expect(testObject.objectValue).to.equal(@1); |
| }); |
| |
| SpecEnd |