Skip to content

Commit 92d492f

Browse files
committed
[stdlib] Add a test for string-to-integer parsing for opaque strings.
1 parent c40c904 commit 92d492f

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

test/stdlib/NSSlowString.swift

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,23 @@ tests.test("Iterator") {
5757
expectEqualSequence(opaque.utf8.reversed(), native.utf8.reversed())
5858
}
5959

60+
tests.test("String-to-integer parsing") {
61+
let native = "1234"
62+
let opaque = NSSlowString(string: "1234") as String
63+
64+
expectEqual(Int(opaque, radix: 16)!, Int(native, radix: 16)!)
65+
expectEqual(Int(opaque, radix: 15)!, Int(native, radix: 15)!)
66+
expectEqual(Int(opaque, radix: 10)!, Int(native, radix: 10)!)
67+
expectEqual(Int(opaque, radix: 8)!, Int(native, radix: 8)!)
68+
expectEqual(Int(opaque, radix: 5)!, Int(native, radix: 5)!)
69+
70+
expectEqual(UInt16(opaque, radix: 16)!, UInt16(native, radix: 16)!)
71+
expectEqual(UInt16(opaque, radix: 15)!, UInt16(native, radix: 15)!)
72+
expectEqual(UInt16(opaque, radix: 10)!, UInt16(native, radix: 10)!)
73+
expectEqual(UInt16(opaque, radix: 8)!, UInt16(native, radix: 8)!)
74+
expectEqual(UInt16(opaque, radix: 5)!, UInt16(native, radix: 5)!)
75+
}
76+
6077
tests.test("Unicode 9 grapheme breaking")
6178
.xfail(.osxMinor(10, 9, reason: "Mac OS X 10.9 has an old version of ICU"))
6279
.xfail(.iOSMajor(7, reason: "iOS 7 has an old version of ICU"))

0 commit comments

Comments
 (0)