Merge pull request #32 from phatle/import_photo_test

Import photo test
This commit is contained in:
Ash Furrow
2014-02-24 13:17:42 +01:00
2 changed files with 55 additions and 1 deletions

View File

@@ -7,6 +7,7 @@
objects = {
/* Begin PBXBuildFile section */
17E5A10E18BB43C600AFC028 /* FRPPhotoImporterTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 17E5A10D18BB43C600AFC028 /* FRPPhotoImporterTests.m */; };
17A5BBDB18BB2F6D000E2D24 /* FRPLoginViewModelTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 17A5BBDA18BB2F6D000E2D24 /* FRPLoginViewModelTests.m */; };
2826EB375D254DDD8DE6EAA8 /* libPods-FRP.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 772BE9E4C5824F1C8E5CDC45 /* libPods-FRP.a */; };
5E595111180E065F002F44FA /* FRPFullSizePhotoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 5E595110180E065F002F44FA /* FRPFullSizePhotoViewController.m */; };
@@ -51,6 +52,7 @@
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
17E5A10D18BB43C600AFC028 /* FRPPhotoImporterTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FRPPhotoImporterTests.m; sourceTree = "<group>"; };
17A5BBDA18BB2F6D000E2D24 /* FRPLoginViewModelTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FRPLoginViewModelTests.m; sourceTree = "<group>"; };
5E59510F180E065F002F44FA /* FRPFullSizePhotoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FRPFullSizePhotoViewController.h; sourceTree = "<group>"; };
5E595110180E065F002F44FA /* FRPFullSizePhotoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FRPFullSizePhotoViewController.m; sourceTree = "<group>"; };
@@ -284,6 +286,7 @@
5EBE2B19180B07D0007B6BF3 /* FRPTests */ = {
isa = PBXGroup;
children = (
17E5A10D18BB43C600AFC028 /* FRPPhotoImporterTests.m */,
17A5BBDA18BB2F6D000E2D24 /* FRPLoginViewModelTests.m */,
5E730B0F1815F78B003FCB43 /* FRPGalleryViewModelTests.m */,
5E93AD99186C781000795C9E /* FRPFullSizePhotoViewModelTests.m */,
@@ -488,6 +491,7 @@
buildActionMask = 2147483647;
files = (
5E93AD9A186C781000795C9E /* FRPFullSizePhotoViewModelTests.m in Sources */,
17E5A10E18BB43C600AFC028 /* FRPPhotoImporterTests.m in Sources */,
5E730B101815F78B003FCB43 /* FRPGalleryViewModelTests.m in Sources */,
5E93AD9C186C80DE00795C9E /* FRPPhotoViewModelTests.m in Sources */,
17A5BBDB18BB2F6D000E2D24 /* FRPLoginViewModelTests.m in Sources */,

View File

@@ -6,4 +6,54 @@
// Copyright (c) 2014 Ash Furrow. All rights reserved.
//
#include <stdio.h>
#import "Specta.h"
#define EXP_SHORTHAND
#import <Expecta/Expecta.h>
#import <OCMock/OCMock.h>
#import "FRPPhotoImporter.h"
SpecBegin(FRPPhotoImporter)
describe(@"FRPPhotoImporter", ^{
__block id mock;
beforeEach(^{
mock = [OCMockObject mockForClass:[PXRequest class]];
});
it(@"logins successfully", ^{
__block id success = @0;
void (^theBlock)(NSInvocation *) = ^(NSInvocation *invocation) {
void (^passedBlock)( BOOL );
[invocation getArgument:&passedBlock atIndex:4];
passedBlock(YES);
};
[[[mock stub] andDo:theBlock] authenticateWithUserName:[OCMArg any] password:[OCMArg any] completion:[OCMArg any]];
[[FRPPhotoImporter logInWithUsername:@"username" password:@"password"] subscribeCompleted:^{
success = @1;
}];
expect(success).to.equal(@1);
});
it(@"returns error when login unsuccessfully", ^{
__block id expected_error;
void (^theBlock)(NSInvocation *) = ^(NSInvocation *invocation) {
void (^passedBlock)( BOOL );
[invocation getArgument:&passedBlock atIndex:4];
passedBlock(NO);
};
[[[mock stub] andDo:theBlock] authenticateWithUserName:[OCMArg any] password:[OCMArg any] completion:[OCMArg any]];
[[FRPPhotoImporter logInWithUsername:@"username" password:@"password"] subscribeError:^(NSError *error) {
expected_error = error;
}];
expect([expected_error domain]).to.equal(@"500px API");
});
afterEach(^{
mock = nil;
});
});
SpecEnd