@@ -66,13 +66,12 @@ class DocumentsTests: XCTestCase {
6666 }
6767
6868 func testAddAndGetDocuments( ) {
69- let documents : Data = try ! JSONEncoder ( ) . encode ( movies)
7069
7170 let expectation = XCTestExpectation ( description: " Add or replace Movies document " )
7271
7372 self . client. addDocuments (
7473 UID: self . uid,
75- documents: documents ,
74+ documents: movies ,
7675 primaryKey: nil
7776 ) { result in
7877
@@ -112,6 +111,53 @@ class DocumentsTests: XCTestCase {
112111
113112 }
114113
114+ func testAddDataAndGetDocuments( ) {
115+ let documents : Data = try ! JSONEncoder ( ) . encode ( movies)
116+
117+ let expectation = XCTestExpectation ( description: " Add or replace Movies document " )
118+
119+ self . client. addDocuments (
120+ UID: self . uid,
121+ documents: documents,
122+ primaryKey: nil
123+ ) { result in
124+
125+ switch result {
126+ case . success( let update) :
127+
128+ XCTAssertEqual ( Update ( updateId: 0 ) , update)
129+
130+ Thread . sleep ( forTimeInterval: 1.0 )
131+
132+ self . client. getDocuments (
133+ UID: self . uid,
134+ limit: 20
135+ ) { ( result: Result < [ Movie ] , Swift . Error > ) in
136+
137+ switch result {
138+ case . success( let returnedMovies) :
139+
140+ movies. forEach { ( movie: Movie ) in
141+ XCTAssertTrue ( returnedMovies. contains ( movie) )
142+ }
143+
144+ case . failure( let error) :
145+ print ( error)
146+ XCTFail ( )
147+ }
148+
149+ expectation. fulfill ( )
150+ }
151+
152+ case . failure( let error) :
153+ print ( error)
154+ XCTFail ( )
155+ }
156+ }
157+ self . wait ( for: [ expectation] , timeout: 5.0 )
158+
159+ }
160+
115161 func testGetOneDocumentAndFail( ) {
116162
117163 let getExpectation = XCTestExpectation ( description: " Get one document and fail " )
@@ -146,25 +192,26 @@ class DocumentsTests: XCTestCase {
146192
147193 case . success( let update) :
148194
195+
149196 XCTAssertEqual ( Update ( updateId: 0 ) , update)
150197
151198 Thread . sleep ( forTimeInterval: 1.0 )
152199
153- self . client. getDocument (
154- UID: self . uid,
155- identifier: " 10 "
156- ) { ( result: Result < Movie , Swift . Error > ) in
200+ self . client. getDocument (
201+ UID: self . uid,
202+ identifier: " 10 "
203+ ) { ( result: Result < Movie , Swift . Error > ) in
157204
158- switch result {
159- case . success( let returnedMovie) :
160- XCTAssertEqual ( movie, returnedMovie)
161- case . failure( let error) :
162- print ( error)
163- XCTFail ( )
164- }
165- expectation. fulfill ( )
205+ switch result {
206+ case . success( let returnedMovie) :
207+ XCTAssertEqual ( movie, returnedMovie)
208+ case . failure( let error) :
209+ print ( error)
210+ XCTFail ( )
211+ }
212+ expectation. fulfill ( )
166213
167- }
214+ }
168215
169216 case . failure( let error) :
170217 print ( error)
@@ -391,6 +438,7 @@ class DocumentsTests: XCTestCase {
391438
392439 static var allTests = [
393440 ( " testAddAndGetDocuments " , testAddAndGetDocuments) ,
441+ ( " testAddDataAndGetDocuments " , testAddDataAndGetDocuments) ,
394442 ( " testGetOneDocumentAndFail " , testGetOneDocumentAndFail) ,
395443 ( " testAddAndGetOneDocuments " , testAddAndGetOneDocuments) ,
396444 ( " testUpdateAndGetDocuments " , testUpdateAndGetDocuments) ,
0 commit comments