Skip to content

Commit 39878a8

Browse files
authored
Merge pull request #18381 from mozilla/FXA-11064
task(recovery-phone): Allow some operations when recovery phone config enabled is false
2 parents b81589b + d90cf18 commit 39878a8

2 files changed

Lines changed: 2 additions & 24 deletions

File tree

libs/accounts/recovery-phone/src/lib/recovery-phone.service.spec.ts

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -535,24 +535,13 @@ describe('RecoveryPhoneService', () => {
535535
mockRecoveryPhoneConfig.enabled = true;
536536
});
537537
it('can disable', () => {
538-
expect(service.available(uid, 'US')).rejects.toEqual(
539-
new RecoveryPhoneNotEnabled()
540-
);
538+
expect(service.available(uid, 'US')).resolves.toEqual(false);
541539
expect(service.confirmSetupCode(uid, '000000')).rejects.toEqual(
542540
new RecoveryPhoneNotEnabled()
543541
);
544542
expect(service.confirmSigninCode(uid, '000000')).rejects.toEqual(
545543
new RecoveryPhoneNotEnabled()
546544
);
547-
expect(service.hasConfirmed(uid)).rejects.toEqual(
548-
new RecoveryPhoneNotEnabled()
549-
);
550-
expect(() => service.stripPhoneNumber('+15550005555')).toThrow(
551-
new RecoveryPhoneNotEnabled()
552-
);
553-
expect(service.removePhoneNumber(uid)).rejects.toEqual(
554-
new RecoveryPhoneNotEnabled()
555-
);
556545
expect(service.sendCode(uid)).rejects.toEqual(
557546
new RecoveryPhoneNotEnabled()
558547
);

libs/accounts/recovery-phone/src/lib/recovery-phone.service.ts

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ export class RecoveryPhoneService {
4040
*/
4141
public async available(uid: string, region: string): Promise<boolean> {
4242
if (!this.config.enabled) {
43-
throw new RecoveryPhoneNotEnabled();
43+
return false;
4444
}
4545

4646
if (!this.config.allowedRegions?.includes(region)) {
@@ -241,10 +241,6 @@ export class RecoveryPhoneService {
241241
* @returns True if successful
242242
*/
243243
public async removePhoneNumber(uid: string) {
244-
if (!this.config.enabled) {
245-
throw new RecoveryPhoneNotEnabled();
246-
}
247-
248244
const hasRecoveryCodes = await this.recoveryPhoneManager.hasRecoveryCodes(
249245
uid
250246
);
@@ -279,10 +275,6 @@ export class RecoveryPhoneService {
279275
phoneNumber?: string;
280276
nationalFormat?: string;
281277
}> {
282-
if (!this.config.enabled) {
283-
throw new RecoveryPhoneNotEnabled();
284-
}
285-
286278
try {
287279
const { phoneNumber, nationalFormat } =
288280
await this.recoveryPhoneManager.getConfirmedPhoneNumber(uid);
@@ -316,9 +308,6 @@ export class RecoveryPhoneService {
316308
* @returns The last N number of digits of the phone number
317309
*/
318310
public stripPhoneNumber(phoneNumber: string, lastN?: number) {
319-
if (!this.config.enabled) {
320-
throw new RecoveryPhoneNotEnabled();
321-
}
322311
// No stripping needed, session is verified
323312
if (lastN === undefined) {
324313
return phoneNumber;

0 commit comments

Comments
 (0)