CommandLineToolkit
25 строк · 907.0 Байт
1import Foundation
2import JSONStream
3import XCTest
4
5class JSONReaderStringEdgeCaseTests: XCTestCase {
6let eventStream = FakeEventStream()
7
8func testInputWithEscapedSymbols() throws {
9let jsonStream = FakeJSONStream(string: "{ \"key\": \"__\\\"hello world\\\"__\" }")
10let reader = JSONReader(inputStream: jsonStream, eventStream: eventStream)
11try reader.start()
12
13XCTAssertEqual(eventStream.all.count, 1)
14XCTAssertEqual(eventStream.allObjects[0], ["key": "__\\\"hello world\\\"__"])
15}
16
17func testEmoji() throws {
18let jsonStream = FakeJSONStream(string: "{\"key\": \"💅🏻\"}")
19let reader = JSONReader(inputStream: jsonStream, eventStream: eventStream)
20try reader.start()
21
22XCTAssertEqual(eventStream.all.count, 1)
23XCTAssertEqual(eventStream.allObjects[0], ["key": "💅🏻"])
24}
25}
26