Skip to content
This repository was archived by the owner on Aug 16, 2023. It is now read-only.

Commit 535f217

Browse files
author
Oliver Mason
committed
adds NSNumber handling
1 parent 9d6cd7e commit 535f217

2 files changed

Lines changed: 22 additions & 0 deletions

File tree

CMDQueryStringSerialization/CMDQueryStringSerialization.m

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,12 @@ - (void)cmd_addObject:(id)object forKey:(NSString *)key;
2222

2323
@end
2424

25+
@interface NSNumber (CMDQueryStringSerialization)
26+
27+
-(NSString*) cmd_stringByAddingEscapes;
28+
29+
@end
30+
2531
@implementation CMDQueryStringSerialization
2632

2733
+ (NSDictionary *)dictionaryWithQueryString:(NSString *)string {
@@ -120,3 +126,12 @@ - (void)cmd_addObject:(id)object forKey:(NSString *)key {
120126
}
121127

122128
@end
129+
130+
@implementation NSNumber (CMDQueryStringSerialization)
131+
132+
-(NSString*) cmd_stringByAddingEscapes {
133+
NSString *tmp = [NSString stringWithFormat:@"%@",self];
134+
return [tmp cmd_stringByAddingEscapes];
135+
}
136+
137+
@end

CMDQueryStringSerializationTests/CMDQueryStringSerializationTests.m

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,4 +143,11 @@ - (void)testDictionaryWithUnserializableValue {
143143
XCTAssertThrowsSpecificNamed([CMDQueryStringSerialization queryStringWithDictionary:desiredDictionary], NSException, NSInvalidArgumentException);
144144
}
145145

146+
-(void)testDictionaryWithNumber {
147+
NSDictionary *desiredDictionary = @{ @"key": @(13)};
148+
NSString *desiredString = @"key=13";
149+
150+
NSString *actualString = [CMDQueryStringSerialization queryStringWithDictionary:desiredDictionary];
151+
XCTAssertEqualObjects(actualString, desiredString, @"Query parameters are incorrect.");
152+
}
146153
@end

0 commit comments

Comments
 (0)