Skip to content

Commit 860576f

Browse files
Added a test for various literals
1 parent ce5fdde commit 860576f

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed

Tests/DynamicCodableTests/DynamicCodableTests.swift

+44
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,50 @@ final class DynamicCodableTests: XCTestCase {
3636
XCTAssertEqual(test[.int(2)], .int(2))
3737
}
3838

39+
func testLiterals() {
40+
let test: DynamicCodable = nil
41+
XCTAssertEqual(test, .nil) // Make sure XCTAssertEqual doesn't mis-interpret nil
42+
43+
XCTAssertEqual(DynamicCodable.int(5), 5)
44+
XCTAssertEqual(DynamicCodable.float64(5.5), 5.5)
45+
XCTAssertEqual(DynamicCodable.bool(true), true)
46+
XCTAssertEqual(DynamicCodable.bool(false), false)
47+
XCTAssertEqual(DynamicCodable.string("A"), "A")
48+
XCTAssertEqual(DynamicCodable.string("1"), "\(1)")
49+
XCTAssertEqual(
50+
DynamicCodable.unkeyed(
51+
[
52+
.empty,
53+
.nil,
54+
.bool(true),
55+
.int(5),
56+
.float64(5.5),
57+
.string("A")
58+
]
59+
), [
60+
.empty,
61+
nil,
62+
true,
63+
5,
64+
5.5,
65+
"A"
66+
]
67+
)
68+
XCTAssertEqual(
69+
DynamicCodable.keyed(
70+
[
71+
.string("A"): .string("A"),
72+
.int(1): .int(1),
73+
.string("1"): .string("2")
74+
]
75+
), [
76+
"A": "A",
77+
1: 1,
78+
"1": "2"
79+
]
80+
)
81+
}
82+
3983
func testPrimitiveDecoding() {
4084
do {
4185
let data = """

0 commit comments

Comments
 (0)