From 1406fd88bf5c520adc409c74bfdfab3629574481 Mon Sep 17 00:00:00 2001 From: KingDarBoja Date: Mon, 17 May 2021 11:35:45 -0500 Subject: [PATCH 1/2] fix: auth settings setter instead of ovewriting readonly object --- src/auth/auth.spec.ts | 10 +++++++++- src/auth/auth.ts | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/auth/auth.spec.ts b/src/auth/auth.spec.ts index 3d7be7849..285b0091a 100644 --- a/src/auth/auth.spec.ts +++ b/src/auth/auth.spec.ts @@ -2,7 +2,7 @@ import firebase from 'firebase/app'; import { Observable, Subject } from 'rxjs'; import { TestBed } from '@angular/core/testing'; import { AngularFireModule, FIREBASE_APP_NAME, FIREBASE_OPTIONS, FirebaseApp } from '@angular/fire'; -import { AngularFireAuth, AngularFireAuthModule } from '@angular/fire/auth'; +import { AngularFireAuth, AngularFireAuthModule, SETTINGS } from '@angular/fire/auth'; import { COMMON_CONFIG } from '../test-config'; import 'firebase/auth'; import { rando } from '../firestore/utils.spec'; @@ -22,6 +22,9 @@ describe('AngularFireAuth', () => { imports: [ AngularFireModule.initializeApp(COMMON_CONFIG, rando()), AngularFireAuthModule + ], + providers: [ + { provide: SETTINGS, useValue: { appVerificationDisabledForTesting: true } } ] }); @@ -72,6 +75,11 @@ describe('AngularFireAuth', () => { expect(afAuth.app).toBeDefined(); }); + it('should have disabled app verification for testing', async () => { + const app = await afAuth.app; + expect(app.auth().settings.appVerificationDisabledForTesting).toBe(true); + }); + it('should emit auth updates through authState', (done: any) => { let count = 0; diff --git a/src/auth/auth.ts b/src/auth/auth.ts index e8f5d524b..975456946 100644 --- a/src/auth/auth.ts +++ b/src/auth/auth.ts @@ -99,7 +99,7 @@ export class AngularFireAuth { auth.useDeviceLanguage(); } if (settings) { - auth.settings = settings; + auth.settings.appVerificationDisabledForTesting = settings.appVerificationDisabledForTesting; } if (persistence) { auth.setPersistence(persistence); From c7539aad74ec2fc8f27feff326780666557349fa Mon Sep 17 00:00:00 2001 From: KingDarBoja Date: Mon, 17 May 2021 18:43:08 -0500 Subject: [PATCH 2/2] misc: loop over each auth setting for future options --- src/auth/auth.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/auth/auth.ts b/src/auth/auth.ts index 975456946..b30b0e0c9 100644 --- a/src/auth/auth.ts +++ b/src/auth/auth.ts @@ -99,7 +99,9 @@ export class AngularFireAuth { auth.useDeviceLanguage(); } if (settings) { - auth.settings.appVerificationDisabledForTesting = settings.appVerificationDisabledForTesting; + for (const [k, v] of Object.entries(settings)) { + auth.settings[k] = v; + } } if (persistence) { auth.setPersistence(persistence);