@@ -30,6 +30,10 @@ class TestUserDefaults : XCTestCase {
30
30
( " test_setValue_BoolFromString " , test_setValue_BoolFromString ) ,
31
31
( " test_setValue_IntFromString " , test_setValue_IntFromString ) ,
32
32
( " test_setValue_DoubleFromString " , test_setValue_DoubleFromString ) ,
33
+ ( " test_setValue_StringFromBool " , test_setValue_StringFromBool ) ,
34
+ ( " test_setValue_StringFromInt " , test_setValue_StringFromInt ) ,
35
+ ( " test_setValue_StringFromFloat " , test_setValue_StringFromFloat ) ,
36
+ ( " test_setValue_StringFromDouble " , test_setValue_StringFromDouble ) ,
33
37
( " test_volatileDomains " , test_volatileDomains) ,
34
38
( " test_persistentDomain " , test_persistentDomain ) ,
35
39
]
@@ -245,6 +249,42 @@ class TestUserDefaults : XCTestCase {
245
249
XCTAssertEqual ( defaults. double ( forKey: " key1 " ) , 12.34 )
246
250
}
247
251
252
+ func test_setValue_StringFromBool( ) {
253
+ let defaults = UserDefaults . standard
254
+
255
+ // Register a bool default value. UserDefaults.string(forKey:) is supposed to return the converted String value
256
+ defaults. set ( true , forKey: " key1 " )
257
+
258
+ XCTAssertEqual ( defaults. string ( forKey: " key1 " ) , " 1 " )
259
+ }
260
+
261
+ func test_setValue_StringFromInt( ) {
262
+ let defaults = UserDefaults . standard
263
+
264
+ // Register a int default value. UserDefaults.string(forKey:) is supposed to return the converted String value
265
+ defaults. set ( 42 , forKey: " key1 " )
266
+
267
+ XCTAssertEqual ( defaults. string ( forKey: " key1 " ) , " 42 " )
268
+ }
269
+
270
+ func test_setValue_StringFromFloat( ) {
271
+ let defaults = UserDefaults . standard
272
+
273
+ // Register a float default value. UserDefaults.string(forKey:) is supposed to return the converted String value
274
+ defaults. set ( 12.34 as Float , forKey: " key1 " )
275
+
276
+ XCTAssertEqual ( defaults. string ( forKey: " key1 " ) , " 12.34 " )
277
+ }
278
+
279
+ func test_setValue_StringFromDouble( ) {
280
+ let defaults = UserDefaults . standard
281
+
282
+ // Register a double default value. UserDefaults.string(forKey:) is supposed to return the converted String value
283
+ defaults. set ( 12.34 , forKey: " key1 " )
284
+
285
+ XCTAssertEqual ( defaults. string ( forKey: " key1 " ) , " 12.34 " )
286
+ }
287
+
248
288
func test_volatileDomains( ) {
249
289
let dateKey = " A Date " ,
250
290
stringKey = " A String " ,
0 commit comments