60 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
	
	
| //
 | |
| //  MonsterTests.m
 | |
| //  MonsterCardsTests
 | |
| //
 | |
| //  Created by Tom Hicks on 9/5/20.
 | |
| //  Copyright © 2020 Tom Hicks. All rights reserved.
 | |
| //
 | |
| 
 | |
| #import <XCTest/XCTest.h>
 | |
| @import OCHamcrest;
 | |
| @import OCMockito;
 | |
| #import "Monster.h"
 | |
| 
 | |
| @interface MonsterTests : XCTestCase
 | |
| 
 | |
| @end
 | |
| 
 | |
| @implementation MonsterTests {
 | |
|     Monster *_monster;
 | |
|     NSString *_jsonString;
 | |
|     NSData *_jsonData;
 | |
| }
 | |
| 
 | |
| - (void)setUp {
 | |
|     _monster = [[Monster alloc] init];
 | |
|     _jsonString = @"{\"name\":\"Acolyte\"}";
 | |
|     _jsonData = [_jsonString dataUsingEncoding:NSUTF8StringEncoding];
 | |
| }
 | |
| 
 | |
| - (void)tearDown {
 | |
|     // Put teardown code here. This method is called after the invocation of each test method in the class.
 | |
| }
 | |
| 
 | |
| - (void)testDefaultInitializer {
 | |
|     XCTAssertNotNil(_monster);
 | |
|     XCTAssertEqualObjects(@"", _monster.name);
 | |
| }
 | |
| 
 | |
| - (void)testInitWithJSONString {
 | |
|     _monster = [[Monster alloc] initWithJSONString:_jsonString];
 | |
|     
 | |
|     XCTAssertNotNil(_monster);
 | |
|     XCTAssertEqualObjects(@"Acolyte", _monster.name);
 | |
| }
 | |
| 
 | |
| - (void)testInitWithJSONData {
 | |
|     _monster = [[Monster alloc] initWithJSONData:_jsonData];
 | |
|     
 | |
|     XCTAssertNotNil(_monster);
 | |
|     XCTAssertEqualObjects(@"Acolyte", _monster.name);
 | |
| }
 | |
| 
 | |
| - (void)testNameGetterAndSetter {
 | |
|     NSString *name = @"Pixie";
 | |
|     _monster.name = name;
 | |
|     XCTAssertEqualObjects(name, _monster.name);
 | |
| }
 | |
| 
 | |
| @end
 |