Skip to content

Commit c4268dc

Browse files
committed
update: mfa.default_reqs tests use core apps
- Each test runs independently - Cleans up test hooks
1 parent c2c450d commit c4268dc

File tree

1 file changed

+27
-52
lines changed

1 file changed

+27
-52
lines changed

test/end-to-end/mfa.default_reqs.test.js

Lines changed: 27 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -16,46 +16,29 @@
1616
/*
1717
* Imports
1818
*/
19-
2019
import assert from "assert";
21-
import puppeteer from "puppeteer";
2220
import {
2321
clearBrowserCookiesWithoutAffectingConsole,
24-
setInputValues,
25-
submitForm,
26-
waitForSTElement,
2722
screenshotOnFailure,
28-
backendBeforeEach,
23+
backendHook,
2924
getTestEmail,
30-
getPasswordlessDevice,
31-
waitFor,
3225
getFactorChooserOptions,
33-
setAccountLinkingConfig,
3426
isMFASupported,
3527
setupBrowser,
28+
createCoreApp,
3629
} from "../helpers";
37-
import fetch from "isomorphic-fetch";
38-
import { CREATE_CODE_API, CREATE_TOTP_DEVICE_API, MFA_INFO_API, TEST_APPLICATION_SERVER_BASE_URL } from "../constants";
39-
40-
import { TEST_CLIENT_BASE_URL, TEST_SERVER_BASE_URL } from "../constants";
30+
import { TEST_CLIENT_BASE_URL } from "../constants";
4131
import { getTestPhoneNumber } from "../exampleTestHelpers";
4232
import {
43-
setMFAInfo,
4433
tryEmailPasswordSignUp,
4534
waitForDashboard,
4635
completeOTP,
4736
setupOTP,
4837
logout,
4938
tryEmailPasswordSignIn,
50-
chooseFactor,
51-
tryPasswordlessSignInUp,
5239
setupTOTP,
5340
completeTOTP,
54-
setupUserWithAllFactors,
5541
goToFactorChooser,
56-
waitForAccessDenied,
57-
waitForLoadingScreen,
58-
waitForBlockedScreen,
5942
addToRequiredSecondaryFactorsForUser,
6043
} from "./mfa.helpers";
6144

@@ -66,46 +49,26 @@ describe("SuperTokens SignIn w/ MFA", function () {
6649
let browser;
6750
let page;
6851
let consoleLogs = [];
69-
let skipped = false;
52+
53+
const appConfig = {
54+
accountLinkingConfig: {
55+
enabled: true,
56+
shouldAutoLink: {
57+
shouldAutomaticallyLink: true,
58+
shouldRequireVerification: false,
59+
},
60+
},
61+
};
7062

7163
before(async function () {
7264
if (!(await isMFASupported())) {
73-
skipped = true;
7465
this.skip();
75-
return;
7666
}
77-
await backendBeforeEach();
7867

79-
await fetch(`${TEST_SERVER_BASE_URL}/startst`, {
80-
method: "POST",
81-
}).catch(console.error);
82-
83-
await setAccountLinkingConfig(true, true, false);
68+
await backendHook("before");
8469
browser = await setupBrowser();
8570
});
8671

87-
after(async function () {
88-
if (skipped) {
89-
return;
90-
}
91-
await browser.close();
92-
93-
await fetch(`${TEST_SERVER_BASE_URL}/after`, {
94-
method: "POST",
95-
}).catch(console.error);
96-
97-
await fetch(`${TEST_SERVER_BASE_URL}/stopst`, {
98-
method: "POST",
99-
}).catch(console.error);
100-
});
101-
102-
afterEach(async function () {
103-
await screenshotOnFailure(this, browser);
104-
if (page) {
105-
await page.close();
106-
}
107-
});
108-
10972
beforeEach(async function () {
11073
page = await browser.newPage();
11174
page.on("console", (consoleObj) => {
@@ -123,10 +86,22 @@ describe("SuperTokens SignIn w/ MFA", function () {
12386
await page.evaluate(() => window.localStorage.setItem("enableAllRecipes", "true"));
12487
});
12588

89+
afterEach(async function () {
90+
await screenshotOnFailure(this, browser);
91+
await page?.close();
92+
await backendHook("afterEach");
93+
});
94+
95+
after(async function () {
96+
await browser?.close();
97+
await backendHook("after");
98+
});
99+
126100
describe("default requirements", () => {
127101
let email, phoneNumber;
102+
128103
beforeEach(async () => {
129-
await setMFAInfo({});
104+
await createCoreApp(appConfig);
130105
const setupPage = await browser.newPage();
131106

132107
email = await getTestEmail();

0 commit comments

Comments
 (0)