diff --git a/README.md b/README.md
index ba0fa11..5117824 100644
--- a/README.md
+++ b/README.md
@@ -1,18 +1,18 @@
-
Fireboost
+ FireBoost
-
-
+[](https://www.npmjs.com/package/fireboost)
+[](https://travis-ci.com/github/39ro/fireboost)

[](https://github.com/google/gts)
-Helpers used for common admin tasks on Firebase (Authentication, Firestore).
+A library including methods to `boost` your development with Firebase (Authentication, Firestore).
-### Installation:
+## Installation:
- To install fireboost using npm, open a terminal/console window and enter the following command:
```
@@ -28,13 +28,12 @@ const fireBoost = new FireBoost();
-### Documentation:
+## Documentation:
### Authentication
Initializate fireboost with a Firebase App
```javascript
import * as admin from 'firebase-admin';
-import {FireBoost} from 'fireboost';
const serviceAccount = require('./service-account.json');
@@ -43,18 +42,17 @@ const app = admin.initializeApp({
databaseURL: "__YOUR__DATABASE_URL__"
});
-const appAuthRef = new FireBoost().auth(app);
+const appAuthRef = fireBoost.auth(app);
```
###### API
- **deleteAllUsers**
-_Delete all userRecors found in your Firebase App_
+_Delete all userRecords found in your Firebase App_
```javascript
appAuthRef.deleteAllUsers()
- // teardown
- .then(() => app.delete())
- .catch(console.log);
+// teardown
+.then(() => app.delete())
```
@@ -111,7 +109,7 @@ utilDocRef.renameField({oldFieldKey: 'newFieldKey'})
### Just a reminder
-This in a unofficial library for Firestore (https://firebase.google.com/docs/firestore) we recommend replicating the operation, where it's possible, in a test project to check if the output is what expected before to run any operation in a production environment.
+This in a unofficial library for Firebase (Authentication, Firestore) we recommend replicating the operation, where it's possible, in a test project to check if the output is what expected before to run any operation in a production environment.
Thanks for using and testing this library!
### Contributing
diff --git a/src/auth.ts b/src/auth.ts
index 503f9f0..dd1cafa 100644
--- a/src/auth.ts
+++ b/src/auth.ts
@@ -7,6 +7,12 @@ export class FireBoostAuth {
this.auth = app.auth();
}
+ /*
+ * Delete all existing users found in initialized Firebase app
+ * appAuthRef.deleteAllUsers()
+ * // teardown
+ * .then(() => app.delete())
+ */
async deleteAllUsers(nextPageToken?: string): Promise {
const listUsersResult = await this.auth.listUsers(10, nextPageToken);
const usersID: string[] = listUsersResult.users.map(
@@ -18,7 +24,7 @@ export class FireBoostAuth {
for (const uid of listUsers.usersID) {
await this.auth.deleteUser(uid);
- console.log('Deleted Auth User: ', uid);
+ console.log('Deleted user: ', uid);
}
if (listUsers.token) {
diff --git a/src/fireboost.ts b/src/fireboost.ts
index 6035e34..e3db7d5 100644
--- a/src/fireboost.ts
+++ b/src/fireboost.ts
@@ -1,4 +1,4 @@
-import { FirestoreAdminUtils } from './firestore';
+import { FireBoostFirestore } from './firestore';
import { FireBoostAuth } from './auth';
import * as admin from 'firebase-admin';
@@ -7,7 +7,7 @@ export class FireBoost {
return new FireBoostAuth(app);
}
- firestore(): FirestoreAdminUtils {
- return new FirestoreAdminUtils();
+ firestore(): FireBoostFirestore {
+ return new FireBoostFirestore();
}
}
diff --git a/src/firestore.ts b/src/firestore.ts
index 4a54a16..057bdc4 100644
--- a/src/firestore.ts
+++ b/src/firestore.ts
@@ -137,7 +137,7 @@ export class CollectionReferenceHelper extends ReferenceHelper<
}
}
-export class FirestoreAdminUtils {
+export class FireBoostFirestore {
ref(r: DocumentReference): DocumentReferenceHelper;
ref(r: CollectionReference): CollectionReferenceHelper;
ref(r: T) {
diff --git a/test/integration/auth.test.ts b/test/integration/auth.test.ts
deleted file mode 100644
index 426bc9a..0000000
--- a/test/integration/auth.test.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import * as admin from 'firebase-admin';
-import { FireBoost } from '../../src/fireboost';
-import { FireBoostAuth } from '../../src/auth';
-
-
-test('FireBoost().firestore()', () => {
- const app = admin.initializeApp()
- expect(new FireBoost().auth(app)).toBeInstanceOf(FireBoostAuth);
- app.delete();
-});
diff --git a/test/integration/fireboost.test.ts b/test/integration/fireboost.test.ts
index 7441ce4..14a2bbd 100644
--- a/test/integration/fireboost.test.ts
+++ b/test/integration/fireboost.test.ts
@@ -1,6 +1,36 @@
+import * as admin from 'firebase-admin';
import { FireBoost } from '../../src/fireboost';
-import { FirestoreAdminUtils } from '../../src/firestore';
+
+import { CollectionReferenceHelper, DocumentReferenceHelper, FireBoostFirestore } from '../../src/firestore';
+import { FireBoostAuth } from '../../src/auth';
+
+let db: admin.firestore.Firestore;
+let app: admin.app.App;
+
+beforeAll(async () => {
+ // Init application
+ app = admin.initializeApp();
+ db = app.firestore();
+});
+
+afterAll(async () => {
+ await admin.app().delete();
+});
test('FireBoost().firestore()', () => {
- expect(new FireBoost().firestore()).toBeInstanceOf(FirestoreAdminUtils);
+ expect(new FireBoost().firestore()).toBeInstanceOf(FireBoostFirestore);
+});
+
+test('FireBoost().auth()', () => {
+ expect(new FireBoost().auth(app)).toBeInstanceOf(FireBoostAuth);
+});
+
+test('FireBoost().firestore().ref() as Collection', () => {
+ const colRef = db.collection('test');
+ expect(new FireBoost().firestore().ref(colRef)).toBeInstanceOf(CollectionReferenceHelper);
+});
+
+test('FireBoost().firestore().ref() as Document', () => {
+ const docRef = db.collection('test').doc('123');
+ expect(new FireBoost().firestore().ref(docRef)).toBeInstanceOf(DocumentReferenceHelper);
});
diff --git a/test/integration/firestore.test.ts b/test/integration/firestore.test.ts
deleted file mode 100644
index e544d67..0000000
--- a/test/integration/firestore.test.ts
+++ /dev/null
@@ -1,27 +0,0 @@
-import { firestore } from 'firebase-admin';
-import { FireBoost } from '../../src/fireboost';
-
-import { CollectionReferenceHelper } from '../../src/firestore';
-import * as admin from 'firebase-admin';
-
-let db: firestore.Firestore;
-
-beforeAll(async () => {
- // Init application
- const app = admin.initializeApp()
- db = app.firestore();
-});
-
-afterAll(async () => {
- await admin.app().delete();
-});
-
-test('FireBoost().firestore().ref() as Collection', () => {
- const colRef = db.collection('test');
- expect(new FireBoost().firestore().ref(colRef)).toBeInstanceOf(CollectionReferenceHelper);
-});
-
-test('FireBoost().firestore().ref() as Document', () => {
- const colRef = db.collection('test');
- expect(new FireBoost().firestore().ref(colRef)).toBeInstanceOf(CollectionReferenceHelper);
-});
diff --git a/test/unit/firestore/collection.test.ts b/test/unit/firestore/collection.test.ts
index fca7941..4d4d226 100644
--- a/test/unit/firestore/collection.test.ts
+++ b/test/unit/firestore/collection.test.ts
@@ -1,7 +1,7 @@
import * as firebaseTesting from '@firebase/testing';
-import { TestFirestoreAdminUtils } from '../../utils/firestore-test';
+import { TestFireBoostFirestore } from '../../utils/firestore-test';
-const adminUtilsFirestore = new TestFirestoreAdminUtils();
+const adminUtilsFirestore = new TestFireBoostFirestore();
jest.mock('firebase-admin', () => {
return {
@@ -13,7 +13,7 @@ jest.mock('firebase-admin', () => {
const PROJECT_ID = `firestore-utils-project-${new Date().getTime()}`;
-let app;
+let app: firebase.app.App;
let db: firebaseTesting.firestore.Firestore;
beforeAll(async () => {
diff --git a/test/unit/firestore/document.test.ts b/test/unit/firestore/document.test.ts
index afca755..f4b390b 100644
--- a/test/unit/firestore/document.test.ts
+++ b/test/unit/firestore/document.test.ts
@@ -1,7 +1,7 @@
import * as firebaseTesting from '@firebase/testing';
-import { TestFirestoreAdminUtils } from '../../utils/firestore-test';
+import { TestFireBoostFirestore } from '../../utils/firestore-test';
-const adminUtilsFirestore = new TestFirestoreAdminUtils();
+const adminUtilsFirestore = new TestFireBoostFirestore();
jest.mock('firebase-admin', () => {
return {
@@ -13,7 +13,7 @@ jest.mock('firebase-admin', () => {
const PROJECT_ID = `firestore-utils-project-${new Date().getTime()}`;
-let app;
+let app: firebase.app.App;
let db: firebaseTesting.firestore.Firestore;
beforeAll(async () => {
diff --git a/test/utils/firestore-test.ts b/test/utils/firestore-test.ts
index e90bd91..be6b78c 100644
--- a/test/utils/firestore-test.ts
+++ b/test/utils/firestore-test.ts
@@ -8,9 +8,9 @@ import {
import TestCollectionReference = firebaseTesting.firestore.CollectionReference;
import TestDocumentReference = firebaseTesting.firestore.DocumentReference;
-import { CollectionReferenceHelper, DocumentReferenceHelper, FirestoreAdminUtils } from '../../src/firestore';
+import { CollectionReferenceHelper, DocumentReferenceHelper, FireBoostFirestore } from '../../src/firestore';
-export class TestFirestoreAdminUtils implements FirestoreAdminUtils {
+export class TestFireBoostFirestore implements FireBoostFirestore {
ref(r: TestDocumentReference): DocumentReferenceHelper;
ref(r: TestCollectionReference): CollectionReferenceHelper;
ref(r: DocumentReference): DocumentReferenceHelper;