[tests][ios] misc firestore transactions

This commit is contained in:
Salakar
2018-10-16 18:15:18 +01:00
parent 4b8d840648
commit f7b0acdada
2 changed files with 8 additions and 7 deletions

View File

@@ -125,7 +125,6 @@ RCT_EXPORT_METHOD(transactionBegin:(NSString *)appDisplayName
eventMap[@"appName"] = appDisplayName;
[RNFirebaseUtil sendJSEvent:self name:FIRESTORE_TRANSACTION_EVENT body:eventMap];
});
}
// wait for the js event handler to call transactionApplyBuffer
@@ -136,6 +135,10 @@ RCT_EXPORT_METHOD(transactionBegin:(NSString *)appDisplayName
@synchronized (transactionState) {
aborted = [transactionState valueForKey:@"abort"];
if (transactionState[@"semaphore"] != semaphore) {
return nil;
}
if (aborted == YES) {
*errorPointer = [NSError errorWithDomain:FIRFirestoreErrorDomain code:FIRFirestoreErrorCodeAborted userInfo:@{}];
@@ -150,10 +153,6 @@ RCT_EXPORT_METHOD(transactionBegin:(NSString *)appDisplayName
if (completed == YES) {
return nil;
}
if (transactionState[@"semaphore"] != semaphore) {
return nil;
}
NSArray *commandBuffer = [transactionState valueForKey:@"commandBuffer"];
@@ -182,6 +181,7 @@ RCT_EXPORT_METHOD(transactionBegin:(NSString *)appDisplayName
}
} completion:^(id result, NSError *error) {
if (completed == YES) return;
completed = YES;
@synchronized (transactionState) {
if (aborted == NO) {
@@ -202,7 +202,6 @@ RCT_EXPORT_METHOD(transactionBegin:(NSString *)appDisplayName
[self->_transactions removeObjectForKey:[transactionId stringValue]];
}
completed = YES;
}];
}

View File

@@ -7,7 +7,9 @@ describe('firestore()', () => {
const docRef = testDocRef('tSet');
const updateFunction = async transaction => {
const doc = await transaction.get(docRef);
let doc;
// TODO test multiple gets
doc = await transaction.get(docRef);
if (!doc.exists) {
transaction.set(docRef, { value: 1, somethingElse: 'set' });
return 1;