Skip to content

Commit 531308c

Browse files
committed
Added failing test for jsonmodel#333
1 parent f482981 commit 531308c

File tree

2 files changed

+47
-0
lines changed

2 files changed

+47
-0
lines changed

Examples/Examples.xcodeproj/project.pbxproj

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,9 @@
213213
1AB943571D86AA3F0031E315 /* ConcurrentTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 008077B71D81B91C006A0187 /* ConcurrentTests.m */; };
214214
1AB943581D86AA540031E315 /* ConcurrentReposModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 008077BC1D81C035006A0187 /* ConcurrentReposModel.m */; };
215215
1AB943591D86AA540031E315 /* ConcurrentReposModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 008077BC1D81C035006A0187 /* ConcurrentReposModel.m */; };
216+
1AB9435D1D86ACAB0031E315 /* TransformerExceptionTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AB9435B1D86AB260031E315 /* TransformerExceptionTests.m */; };
217+
1AB9435E1D86ACAC0031E315 /* TransformerExceptionTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AB9435B1D86AB260031E315 /* TransformerExceptionTests.m */; };
218+
1AB9435F1D86ACAC0031E315 /* TransformerExceptionTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AB9435B1D86AB260031E315 /* TransformerExceptionTests.m */; };
216219
1AF8B9171D423D5500A1AAD3 /* NullTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AF8B9151D423B9300A1AAD3 /* NullTests.m */; };
217220
1AF8B9181D423D5500A1AAD3 /* NullTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AF8B9151D423B9300A1AAD3 /* NullTests.m */; };
218221
1AF8B9191D423D5700A1AAD3 /* NullTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AF8B9151D423B9300A1AAD3 /* NullTests.m */; };
@@ -401,6 +404,7 @@
401404
1A84BC441D1C0359005234F4 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
402405
1A84BC461D1C0359005234F4 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
403406
1A84BC481D1C0359005234F4 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
407+
1AB9435B1D86AB260031E315 /* TransformerExceptionTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TransformerExceptionTests.m; sourceTree = "<group>"; };
404408
1AF8B9151D423B9300A1AAD3 /* NullTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NullTests.m; sourceTree = "<group>"; };
405409
21CE3B1BB8B2A3D33C54BE59 /* Pods-macOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-macOSTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-macOSTests/Pods-macOSTests.debug.xcconfig"; sourceTree = "<group>"; };
406410
38F03B2DA2344C07E5EF16B1 /* Pods-tvOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-tvOSTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-tvOSTests/Pods-tvOSTests.debug.xcconfig"; sourceTree = "<group>"; };
@@ -519,6 +523,7 @@
519523
1A4BAA381D1C79260069D735 /* SpecialValuesTests.m */,
520524
1A4BAA391D1C79260069D735 /* ValidationTests.m */,
521525
008077B71D81B91C006A0187 /* ConcurrentTests.m */,
526+
1AB9435B1D86AB260031E315 /* TransformerExceptionTests.m */,
522527
);
523528
path = Tests;
524529
sourceTree = "<group>";
@@ -1498,6 +1503,7 @@
14981503
1A4BAA931D1C79480069D735 /* OptionalPropertiesTests.m in Sources */,
14991504
008077B81D81B91C006A0187 /* ConcurrentTests.m in Sources */,
15001505
1A4BAA901D1C79480069D735 /* JSONTypesReadTests.m in Sources */,
1506+
1AB9435D1D86ACAB0031E315 /* TransformerExceptionTests.m in Sources */,
15011507
1A4BAB101D1C7DA80069D735 /* InteractionModel.m in Sources */,
15021508
1A4BAB071D1C7DA80069D735 /* CustomPropertyModel.m in Sources */,
15031509
1A4BAB111D1C7DA80069D735 /* JSONTypesModel.m in Sources */,
@@ -1552,6 +1558,7 @@
15521558
1A4BAA7F1D1C79460069D735 /* OptionalPropertiesTests.m in Sources */,
15531559
1AB943571D86AA3F0031E315 /* ConcurrentTests.m in Sources */,
15541560
1A4BAA7C1D1C79460069D735 /* JSONTypesReadTests.m in Sources */,
1561+
1AB9435E1D86ACAC0031E315 /* TransformerExceptionTests.m in Sources */,
15551562
1A4BAB2A1D1C7DA80069D735 /* InteractionModel.m in Sources */,
15561563
1A4BAB211D1C7DA80069D735 /* CustomPropertyModel.m in Sources */,
15571564
1A4BAB2B1D1C7DA80069D735 /* JSONTypesModel.m in Sources */,
@@ -1606,6 +1613,7 @@
16061613
1A4BAA6B1D1C79460069D735 /* OptionalPropertiesTests.m in Sources */,
16071614
1AB943561D86AA3E0031E315 /* ConcurrentTests.m in Sources */,
16081615
1A4BAA681D1C79460069D735 /* JSONTypesReadTests.m in Sources */,
1616+
1AB9435F1D86ACAC0031E315 /* TransformerExceptionTests.m in Sources */,
16091617
1A4BAB441D1C7DA90069D735 /* InteractionModel.m in Sources */,
16101618
1A4BAB3B1D1C7DA90069D735 /* CustomPropertyModel.m in Sources */,
16111619
1A4BAB451D1C7DA90069D735 /* JSONTypesModel.m in Sources */,
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
//
2+
// TransformerExceptionTests.m
3+
// Examples
4+
//
5+
// Created by James Billingham on 12/09/2016.
6+
// Copyright © 2016 JSONModel. All rights reserved.
7+
//
8+
9+
@import JSONModel;
10+
@import XCTest;
11+
12+
@interface User : JSONModel
13+
@property (nonatomic, strong) NSDate *birthday;
14+
@end
15+
16+
@implementation User
17+
@end
18+
19+
@interface TransformerExceptionTests : XCTestCase
20+
@end
21+
22+
@implementation TransformerExceptionTests
23+
24+
- (void)testTransformerExceptions
25+
{
26+
NSDictionary *goodJSON = @{@"birthday":@"1992-03-15 00:00:00.000000"};
27+
NSDictionary *badJSON = @{@"birthday":@{@"date":@"1992-03-15 00:00:00.000000", @"time":@123}};
28+
NSError *error = nil;
29+
30+
User *goodObj = [[User alloc] initWithDictionary:goodJSON error:&error];
31+
XCTAssertNotNil(goodObj);
32+
XCTAssertNil(error);
33+
34+
User *badObj = [[User alloc] initWithDictionary:badJSON error:&error];
35+
XCTAssertNil(badObj);
36+
XCTAssertNotNil(error);
37+
}
38+
39+
@end

0 commit comments

Comments
 (0)