@@ -17,23 +17,29 @@ class CategoryTests: XCTestCase {
1717 }
1818
1919 func test_decodeCategory_success( ) throws {
20- let result = try ? JSONDecoder ( ) . decode ( EmojiPicker . Category. self, from: category1)
20+ category = try ? JSONDecoder ( ) . decode ( EmojiPicker . Category. self, from: category1)
2121
22- XCTAssertNotNil ( result)
23- XCTAssertEqual ( result? . emojis, [ " grinning " , " smiley " , " smile " ] )
22+ XCTAssertNotNil ( category, " The result of decoding should be successful " )
23+ XCTAssertEqual ( category. type, CategoryType . people)
24+ XCTAssertEqual ( category? . identifiers, [ " grinning " , " smiley " , " smile " ] )
2425 }
2526
26- func test_decodeCategory_arraySuccess ( ) throws {
27- let result = try ? JSONDecoder ( ) . decode ( [ EmojiPicker . Category ] . self, from: category3 )
27+ func test_decodeCategory_wrongCodingKeys1 ( ) throws {
28+ category = try ? JSONDecoder ( ) . decode ( EmojiPicker . Category. self, from: category2 )
2829
29- XCTAssertNotNil ( result)
30- XCTAssertEqual ( result? . count, 2 )
30+ XCTAssertNil ( category)
3131 }
3232
33- func test_decodeCategory_wrongCodingKeys ( ) throws {
34- let result = try ? JSONDecoder ( ) . decode ( EmojiPicker . Category. self, from: category2 )
33+ func test_decodeCategory_wrongCodingKeys2 ( ) throws {
34+ category = try ? JSONDecoder ( ) . decode ( EmojiPicker . Category. self, from: category3 )
3535
36- XCTAssertNil ( result)
36+ XCTAssertNil ( category)
37+ }
38+
39+ func test_decodeCategory_wrongCodingKeys3( ) throws {
40+ category = try ? JSONDecoder ( ) . decode ( EmojiPicker . Category. self, from: category4)
41+
42+ XCTAssertNil ( category)
3743 }
3844}
3945
@@ -51,7 +57,7 @@ fileprivate let category1 = Data("""
5157fileprivate let category2 = Data ( """
5258{
5359 " type " : " people " ,
54- " emojis " : [
60+ " identifiers " : [
5561 " grinning " ,
5662 " smiley " ,
5763 " smile " ,
@@ -60,22 +66,23 @@ fileprivate let category2 = Data("""
6066""" . utf8)
6167
6268fileprivate let category3 = Data ( """
63- [
64- {
65- " id " : " people " ,
66- " emojis " : [
69+ {
70+ " id " : " people " ,
71+ " identifiers " : [
6772 " grinning " ,
73+ " smiley " ,
6874 " smile " ,
69- " zzz "
70- ]
71- },
72- {
73- " id " : " nature " ,
74- " emojis " : [
75- " monkey " ,
76- " leaves " ,
77- " dog "
78- ]
79- }
80- ]
75+ ]
76+ }
77+ """ . utf8)
78+
79+ fileprivate let category4 = Data ( """
80+ {
81+ " type " : " people " ,
82+ " emojis " : [
83+ " grinning " ,
84+ " smiley " ,
85+ " smile " ,
86+ ]
87+ }
8188""" . utf8)
0 commit comments