@@ -75,25 +75,6 @@ class ParsePointerTests: XCTestCase {
7575 XCTAssertEqual ( pointer. objectId, score. objectId)
7676 }
7777
78- func testEncodeEmbeddedPointer( ) throws {
79- var score = GameScore ( score: 10 )
80- let objectId = " yarr "
81- score. objectId = objectId
82-
83- var score2 = GameScore ( score: 50 )
84- score2. other = try score. toPointer ( )
85-
86- let encoded = try score2. getEncoder ( ) . encode ( score2,
87- collectChildren: false ,
88- objectsSavedBeforeThisOne: nil ,
89- filesSavedBeforeThisOne: nil )
90-
91- let decoded = String ( data: encoded. encoded, encoding: . utf8)
92- XCTAssertEqual ( decoded,
93- // swiftlint:disable:next line_length
94- " { \" score \" :50, \" other \" :{ \" __type \" : \" Pointer \" , \" className \" : \" GameScore \" , \" objectId \" : \" yarr \" }} " )
95- }
96-
9778 // swiftlint:disable:next function_body_length
9879 func testFetch( ) throws {
9980 var score = GameScore ( score: 10 )
@@ -219,6 +200,40 @@ class ParsePointerTests: XCTestCase {
219200 }
220201
221202 #if !os(Linux) && !os(Android)
203+ func testEncodeEmbeddedPointer( ) throws {
204+ var score = GameScore ( score: 10 )
205+ let objectId = " yarr "
206+ score. objectId = objectId
207+
208+ var score2 = GameScore ( score: 50 )
209+ score2. other = try score. toPointer ( )
210+
211+ let encoded = try score2. getEncoder ( ) . encode ( score2,
212+ collectChildren: false ,
213+ objectsSavedBeforeThisOne: nil ,
214+ filesSavedBeforeThisOne: nil )
215+
216+ let decoded = String ( data: encoded. encoded, encoding: . utf8)
217+ XCTAssertEqual ( decoded,
218+ // swiftlint:disable:next line_length
219+ " { \" score \" :50, \" other \" :{ \" __type \" : \" Pointer \" , \" className \" : \" GameScore \" , \" objectId \" : \" yarr \" }} " )
220+ XCTAssertEqual ( encoded. unique. count, 0 )
221+ XCTAssertEqual ( encoded. unsavedChildren. count, 0 )
222+ }
223+
224+ func testPointerTypeEncoding( ) throws {
225+ var score = GameScore ( score: 10 )
226+ let objectId = " yarr "
227+ score. objectId = objectId
228+
229+ let pointerType = try PointerType ( score)
230+
231+ let encoded = try ParseCoding . parseEncoder ( ) . encode ( pointerType)
232+ let decoded = String ( data: encoded, encoding: . utf8)
233+ XCTAssertEqual ( decoded,
234+ " { \" __type \" : \" Pointer \" , \" className \" : \" GameScore \" , \" objectId \" : \" yarr \" } " )
235+ }
236+
222237 func testThreadSafeFetchAsync( ) throws {
223238 var score = GameScore ( score: 10 )
224239 let objectId = " yarr "
0 commit comments