Skip to content

Commit 0dd7b01

Browse files
Merge 982b2c4 into 1d7f06c
2 parents 1d7f06c + 982b2c4 commit 0dd7b01

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+379
-1022
lines changed

packages/firestore/src/api/credentials.ts

Lines changed: 9 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -116,17 +116,14 @@ export class EmptyCredentialsProvider implements CredentialsProvider {
116116
invalidateToken(): void {}
117117

118118
setChangeListener(changeListener: CredentialChangeListener): void {
119-
assert(!this.changeListener, 'Can only call setChangeListener() once.');
119+
assert(!this.changeListener);
120120
this.changeListener = changeListener;
121121
// Fire with initial user.
122122
changeListener(User.UNAUTHENTICATED);
123123
}
124124

125125
removeChangeListener(): void {
126-
assert(
127-
this.changeListener !== null,
128-
'removeChangeListener() when no listener registered'
129-
);
126+
assert(this.changeListener !== null);
130127
this.changeListener = null;
131128
}
132129
}
@@ -190,10 +187,7 @@ export class FirebaseCredentialsProvider implements CredentialsProvider {
190187
}
191188

192189
getToken(): Promise<Token | null> {
193-
assert(
194-
this.tokenListener != null,
195-
'getToken cannot be called after listener removed.'
196-
);
190+
assert(this.tokenListener != null);
197191

198192
// Take note of the current value of the tokenCounter so that this method
199193
// can fail (with an ABORTED error) if there is a token change while the
@@ -217,10 +211,7 @@ export class FirebaseCredentialsProvider implements CredentialsProvider {
217211
);
218212
} else {
219213
if (tokenData) {
220-
assert(
221-
typeof tokenData.accessToken === 'string',
222-
'Invalid tokenData returned from getToken():' + tokenData
223-
);
214+
assert(typeof tokenData.accessToken === 'string');
224215
return new OAuthToken(tokenData.accessToken, this.currentUser);
225216
} else {
226217
return null;
@@ -234,7 +225,7 @@ export class FirebaseCredentialsProvider implements CredentialsProvider {
234225
}
235226

236227
setChangeListener(changeListener: CredentialChangeListener): void {
237-
assert(!this.changeListener, 'Can only call setChangeListener() once.');
228+
assert(!this.changeListener);
238229
this.changeListener = changeListener;
239230

240231
// Fire the initial event
@@ -244,11 +235,8 @@ export class FirebaseCredentialsProvider implements CredentialsProvider {
244235
}
245236

246237
removeChangeListener(): void {
247-
assert(this.tokenListener != null, 'removeChangeListener() called twice');
248-
assert(
249-
this.changeListener !== null,
250-
'removeChangeListener() called when no listener registered'
251-
);
238+
assert(this.tokenListener != null);
239+
assert(this.changeListener !== null);
252240

253241
if (this.auth) {
254242
this.auth.removeAuthTokenListener(this.tokenListener!);
@@ -263,10 +251,7 @@ export class FirebaseCredentialsProvider implements CredentialsProvider {
263251
// to guarantee to get the actual user.
264252
private getUser(): User {
265253
const currentUid = this.auth && this.auth.getUid();
266-
assert(
267-
currentUid === null || typeof currentUid === 'string',
268-
'Received invalid UID: ' + currentUid
269-
);
254+
assert(currentUid === null || typeof currentUid === 'string');
270255
return new User(currentUid);
271256
}
272257
}
@@ -348,8 +333,7 @@ export function makeCredentialsProvider(
348333
client !== null &&
349334
client['auth'] &&
350335
client['auth']['getAuthHeaderValueForFirstParty']
351-
),
352-
'unexpected gapi interface'
336+
)
353337
);
354338
return new FirstPartyCredentialsProvider(
355339
client,

packages/firestore/src/api/database.ts

Lines changed: 11 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -472,7 +472,7 @@ export class Firestore implements firestore.FirebaseFirestore, FirebaseService {
472472
observer: PartialObserver<void>
473473
): Unsubscribe {
474474
const errHandler = (err: Error): void => {
475-
throw fail('Uncaught Error in onSnapshotsInSync');
475+
throw fail();
476476
};
477477
const asyncObserver = new AsyncObserver<void>({
478478
next: () => {
@@ -514,9 +514,9 @@ export class Firestore implements firestore.FirebaseFirestore, FirebaseService {
514514
persistenceProvider: PersistenceProvider,
515515
persistenceSettings: PersistenceSettings
516516
): Promise<void> {
517-
assert(!!this._settings.host, 'FirestoreSettings.host is not set');
517+
assert(!!this._settings.host);
518518

519-
assert(!this._firestoreClient, 'configureClient() called multiple times');
519+
assert(!this._firestoreClient);
520520

521521
const databaseInfo = this.makeDatabaseInfo();
522522

@@ -712,7 +712,7 @@ export class Transaction implements firestore.Transaction {
712712
.lookup([ref._key])
713713
.then((docs: MaybeDocument[]) => {
714714
if (!docs || docs.length !== 1) {
715-
return fail('Mismatch in docs returned from document lookup.');
715+
return fail();
716716
}
717717
const doc = docs[0];
718718
if (doc instanceof NoDocument) {
@@ -734,9 +734,7 @@ export class Transaction implements firestore.Transaction {
734734
ref._converter
735735
);
736736
} else {
737-
throw fail(
738-
`BatchGetDocumentsRequest returned unexpected document type: ${doc.constructor.name}`
739-
);
737+
throw fail();
740738
}
741739
});
742740
}
@@ -1212,10 +1210,7 @@ export class DocumentReference<T = firestore.DocumentData>
12121210
const asyncObserver = new AsyncObserver<ViewSnapshot>({
12131211
next: snapshot => {
12141212
if (observer.next) {
1215-
assert(
1216-
snapshot.docs.size <= 1,
1217-
'Too many documents returned on a document query'
1218-
);
1213+
assert(snapshot.docs.size <= 1);
12191214
const doc = snapshot.docs.get(this._key);
12201215

12211216
observer.next(
@@ -1457,10 +1452,7 @@ export class QueryDocumentSnapshot<T = firestore.DocumentData>
14571452
implements firestore.QueryDocumentSnapshot<T> {
14581453
data(options?: SnapshotOptions): T {
14591454
const data = super.data(options);
1460-
assert(
1461-
data !== undefined,
1462-
'Document in a QueryDocumentSnapshot should exist'
1463-
);
1455+
assert(data !== undefined);
14641456
return data;
14651457
}
14661458
}
@@ -2539,14 +2531,8 @@ export function changesFromSnapshot<T>(
25392531
snapshot.mutatedKeys.has(change.doc.key),
25402532
converter
25412533
);
2542-
assert(
2543-
change.type === ChangeType.Added,
2544-
'Invalid event type for first snapshot'
2545-
);
2546-
assert(
2547-
!lastDoc || snapshot.query.docComparator(lastDoc, change.doc) < 0,
2548-
'Got added events in wrong order'
2549-
);
2534+
assert(change.type === ChangeType.Added);
2535+
assert(!lastDoc || snapshot.query.docComparator(lastDoc, change.doc) < 0);
25502536
lastDoc = change.doc;
25512537
return {
25522538
type: 'added' as firestore.DocumentChangeType,
@@ -2576,7 +2562,7 @@ export function changesFromSnapshot<T>(
25762562
let newIndex = -1;
25772563
if (change.type !== ChangeType.Added) {
25782564
oldIndex = indexTracker.indexOf(change.doc.key);
2579-
assert(oldIndex >= 0, 'Index for document not found');
2565+
assert(oldIndex >= 0);
25802566
indexTracker = indexTracker.delete(change.doc.key);
25812567
}
25822568
if (change.type !== ChangeType.Removed) {
@@ -2598,7 +2584,7 @@ function resultChangeType(type: ChangeType): firestore.DocumentChangeType {
25982584
case ChangeType.Removed:
25992585
return 'removed';
26002586
default:
2601-
return fail('Unknown change type: ' + type);
2587+
return fail();
26022588
}
26032589
}
26042590

packages/firestore/src/api/user_data_reader.ts

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ function isWrite(dataSource: UserDataSource): boolean {
136136
case UserDataSource.ArrayArgument:
137137
return false;
138138
default:
139-
throw fail(`Unexpected case for UserDataSource: ${dataSource}`);
139+
throw fail();
140140
}
141141
}
142142

@@ -353,9 +353,7 @@ export class UserDataReader {
353353
stringOrFieldPath
354354
);
355355
} else {
356-
throw fail(
357-
'Expected stringOrFieldPath to be a string or a FieldPath'
358-
);
356+
throw fail();
359357
}
360358

361359
if (!context.contains(fieldPath)) {
@@ -494,11 +492,8 @@ export class UserDataReader {
494492
FieldPath.EMPTY_PATH
495493
);
496494
const parsed = this.parseData(input, context);
497-
assert(parsed != null, 'Parsed data should not be null.');
498-
assert(
499-
context.fieldTransforms.length === 0,
500-
'Field transforms should have been disallowed.'
501-
);
495+
assert(parsed != null);
496+
assert(context.fieldTransforms.length === 0);
502497
return parsed;
503498
}
504499

@@ -633,11 +628,7 @@ export class UserDataReader {
633628
// fieldMask so it gets deleted.
634629
context.fieldMask.push(context.path);
635630
} else if (context.dataSource === UserDataSource.Update) {
636-
assert(
637-
context.path.length > 0,
638-
'FieldValue.delete() at the top level should have already' +
639-
' been handled.'
640-
);
631+
assert(context.path.length > 0);
641632
throw context.createError(
642633
'FieldValue.delete() can only appear at the top level ' +
643634
'of your update data'
@@ -684,7 +675,7 @@ export class UserDataReader {
684675
new FieldTransform(context.path, numericIncrement)
685676
);
686677
} else {
687-
fail('Unknown FieldValue type: ' + value);
678+
fail();
688679
}
689680
}
690681

packages/firestore/src/api/user_data_writer.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ export class UserDataWriter<T = firestore.DocumentData> {
8484
case TypeOrder.ObjectValue:
8585
return this.convertObject(value.mapValue!);
8686
default:
87-
throw fail('Invalid value type: ' + JSON.stringify(value));
87+
throw fail();
8888
}
8989
}
9090

@@ -130,10 +130,7 @@ export class UserDataWriter<T = firestore.DocumentData> {
130130

131131
private convertReference(name: string): DocumentReference<T> {
132132
const resourcePath = ResourcePath.fromString(name);
133-
assert(
134-
isValidResourceName(resourcePath),
135-
'ReferenceValue is not valid ' + name
136-
);
133+
assert(isValidResourceName(resourcePath));
137134
const databaseId = new DatabaseId(resourcePath.get(1), resourcePath.get(3));
138135
const key = new DocumentKey(resourcePath.popFirst(5));
139136

packages/firestore/src/core/event_manager.ts

Lines changed: 5 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -73,10 +73,7 @@ export class EventManager implements SyncEngineListener {
7373

7474
// Run global snapshot listeners if a consistent snapshot has been emitted.
7575
const raisedEvent = listener.applyOnlineStateChange(this.onlineState);
76-
assert(
77-
!raisedEvent,
78-
"applyOnlineStateChange() shouldn't raise an event for brand-new listeners."
79-
);
76+
assert(!raisedEvent);
8077

8178
if (queryInfo.viewSnap) {
8279
const raisedEvent = listener.onViewSnapshot(queryInfo.viewSnap);
@@ -226,10 +223,7 @@ export class QueryListener {
226223
* indeed raised.
227224
*/
228225
onViewSnapshot(snap: ViewSnapshot): boolean {
229-
assert(
230-
snap.docChanges.length > 0 || snap.syncStateChanged,
231-
'We got a new snapshot with no changes?'
232-
);
226+
assert(snap.docChanges.length > 0 || snap.syncStateChanged);
233227

234228
if (!this.options.includeMetadataChanges) {
235229
// Remove the metadata only changes.
@@ -288,10 +282,7 @@ export class QueryListener {
288282
snap: ViewSnapshot,
289283
onlineState: OnlineState
290284
): boolean {
291-
assert(
292-
!this.raisedInitialEvent,
293-
'Determining whether to raise first event but already had first event'
294-
);
285+
assert(!this.raisedInitialEvent);
295286

296287
// Always raise the first event when we're synced
297288
if (!snap.fromCache) {
@@ -304,10 +295,7 @@ export class QueryListener {
304295
// Don't raise the event if we're online, aren't synced yet (checked
305296
// above) and are waiting for a sync.
306297
if (this.options.waitForSyncWhenOnline && maybeOnline) {
307-
assert(
308-
snap.fromCache,
309-
'Waiting for sync, but snapshot is not from cache'
310-
);
298+
assert(snap.fromCache);
311299
return false;
312300
}
313301

@@ -337,10 +325,7 @@ export class QueryListener {
337325
}
338326

339327
private raiseInitialEvent(snap: ViewSnapshot): void {
340-
assert(
341-
!this.raisedInitialEvent,
342-
'Trying to raise initial events for second time'
343-
);
328+
assert(!this.raisedInitialEvent);
344329
snap = ViewSnapshot.fromInitialDocuments(
345330
snap.query,
346331
snap.docs,

0 commit comments

Comments
 (0)