|
1 | 1 | #import <UIKit/UIKit.h>
|
2 | 2 | #import <XCTest/XCTest.h>
|
| 3 | +#import <ISO8601/ISO8601.h> |
3 | 4 | #import <SwaggerClient/SWGApiClient.h>
|
4 | 5 | #import <SwaggerClient/SWGConfiguration.h>
|
| 6 | +#import <SwaggerClient/SWGQueryParamCollection.h> |
| 7 | +#import <SwaggerClient/SWGPet.h> |
| 8 | +#import <SwaggerClient/SWGTag.h> |
| 9 | +#import <SwaggerClient/SWGCategory.h> |
5 | 10 |
|
6 | 11 | @interface SWGApiClientTest : XCTestCase
|
7 | 12 |
|
@@ -98,4 +103,65 @@ - (void)testGetBasicAuthToken {
|
98 | 103 | XCTAssertEqualObjects(basicAuthCredentials, [config getBasicAuthToken]);
|
99 | 104 | }
|
100 | 105 |
|
| 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 | + |
101 | 167 | @end
|
0 commit comments