Skip to content

Commit 587028e

Browse files
committed
Merge pull request #1129 from geekerzp/objc-test
[Objc] Add test cases for sanitizeForSerialization method in objc client
2 parents af8d61c + 1b2f491 commit 587028e

File tree

1 file changed

+66
-0
lines changed

1 file changed

+66
-0
lines changed

samples/client/petstore/objc/SwaggerClientTests/Tests/SWGApiClientTest.m

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,12 @@
11
#import <UIKit/UIKit.h>
22
#import <XCTest/XCTest.h>
3+
#import <ISO8601/ISO8601.h>
34
#import <SwaggerClient/SWGApiClient.h>
45
#import <SwaggerClient/SWGConfiguration.h>
6+
#import <SwaggerClient/SWGQueryParamCollection.h>
7+
#import <SwaggerClient/SWGPet.h>
8+
#import <SwaggerClient/SWGTag.h>
9+
#import <SwaggerClient/SWGCategory.h>
510

611
@interface SWGApiClientTest : XCTestCase
712

@@ -98,4 +103,65 @@ - (void)testGetBasicAuthToken {
98103
XCTAssertEqualObjects(basicAuthCredentials, [config getBasicAuthToken]);
99104
}
100105

106+
- (void)testSanitizeForSerialization {
107+
id result;
108+
id data;
109+
110+
// nil
111+
data = nil;
112+
result = [self.apiClient sanitizeForSerialization:data];
113+
XCTAssertEqualObjects(result, data);
114+
115+
// NSString
116+
data = @"test string";
117+
result = [self.apiClient sanitizeForSerialization:data];
118+
XCTAssertEqualObjects(result, data);
119+
120+
// NSNumber
121+
data = @1;
122+
result = [self.apiClient sanitizeForSerialization:data];
123+
XCTAssertEqualObjects(result, data);
124+
125+
// SWGQueryParamCollection
126+
data = [[SWGQueryParamCollection alloc] init];
127+
result = [self.apiClient sanitizeForSerialization:data];
128+
XCTAssertEqualObjects(result, data);
129+
130+
// NSDate
131+
data = [NSDate dateWithISO8601String:@"1997-07-16T19:20:30.45+01:00"];
132+
result = [self.apiClient sanitizeForSerialization:data];
133+
XCTAssertEqualObjects(result, [data ISO8601String]);
134+
135+
data = [NSDate dateWithISO8601String:@"1997-07-16"];
136+
result = [self.apiClient sanitizeForSerialization:data];
137+
XCTAssertEqualObjects(result, [data ISO8601String]);
138+
139+
// model
140+
NSDictionary *petDict = @{@"id": @1, @"name": @"monkey",
141+
@"category": @{@"id": @1, @"name": @"test category"},
142+
@"tags": @[@{@"id": @1, @"name": @"test tag1"},
143+
@{@"id": @2, @"name": @"test tag2"}],
144+
@"status": @"available",
145+
@"photoUrls": @[@"http://foo.bar.com/3", @"http://foo.bar.com/4"]};
146+
data = [[SWGPet alloc] initWithDictionary:petDict error:nil];
147+
result = [self.apiClient sanitizeForSerialization:data];
148+
XCTAssertEqualObjects(result, petDict);
149+
150+
// NSArray
151+
data = @[@1];
152+
result = [self.apiClient sanitizeForSerialization:data];
153+
XCTAssertEqualObjects(result, data);
154+
155+
// NSArray of models
156+
NSArray *arrayOfPetDict = @[petDict];
157+
data = [NSArray arrayWithObject:[[SWGPet alloc] initWithDictionary:petDict error:nil]];
158+
result = [self.apiClient sanitizeForSerialization:data];
159+
XCTAssertEqualObjects(result, arrayOfPetDict);
160+
161+
// NSDictionary
162+
data = @{@"test key": @"test value"};
163+
result = [self.apiClient sanitizeForSerialization:data];
164+
XCTAssertEqualObjects(result, data);
165+
}
166+
101167
@end

0 commit comments

Comments
 (0)