Skip to content

Commit b14c90e

Browse files
committed
update: few thirdparty tests use core apps
1 parent 100120f commit b14c90e

File tree

3 files changed

+77
-71
lines changed

3 files changed

+77
-71
lines changed

test/end-to-end/thirdparty.test.js

Lines changed: 16 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -18,25 +18,22 @@
1818
*/
1919

2020
import assert from "assert";
21-
import fetch from "isomorphic-fetch";
22-
import puppeteer from "puppeteer";
2321
import {
2422
clearBrowserCookiesWithoutAffectingConsole,
2523
assertProviders,
26-
assertNoSTComponents,
2724
generateState,
2825
clickOnProviderButton,
2926
loginWithAuth0,
3027
getGeneralError,
31-
waitFor,
3228
screenshotOnFailure,
3329
clickOnProviderButtonWithoutWaiting,
34-
backendBeforeEach,
3530
waitForUrl,
3631
setupBrowser,
32+
backendHook,
33+
setupCoreApp,
34+
setupST,
3735
} from "../helpers";
38-
39-
import { TEST_CLIENT_BASE_URL, TEST_SERVER_BASE_URL, SIGN_IN_UP_API, GET_AUTH_URL_API } from "../constants";
36+
import { TEST_CLIENT_BASE_URL, SIGN_IN_UP_API, GET_AUTH_URL_API } from "../constants";
4037

4138
describe("SuperTokens Third Party", function () {
4239
getThirdPartyTestCases({
@@ -55,11 +52,9 @@ export function getThirdPartyTestCases({ authRecipe, rid, signInUpPageLoadLogs,
5552
const logId = "THIRD_PARTY";
5653

5754
before(async function () {
58-
await backendBeforeEach();
59-
60-
await fetch(`${TEST_SERVER_BASE_URL}/startst`, {
61-
method: "POST",
62-
}).catch(console.error);
55+
await backendHook("before");
56+
const coreUrl = await setupCoreApp();
57+
await setupST({ coreUrl });
6358

6459
browser = await setupBrowser();
6560
page = await browser.newPage();
@@ -72,28 +67,24 @@ export function getThirdPartyTestCases({ authRecipe, rid, signInUpPageLoadLogs,
7267
await page.goto(`${TEST_CLIENT_BASE_URL}/auth?authRecipe=${authRecipe}`);
7368
});
7469

75-
after(async function () {
76-
await browser.close();
77-
await fetch(`${TEST_SERVER_BASE_URL}/after`, {
78-
method: "POST",
79-
}).catch(console.error);
80-
81-
await fetch(`${TEST_SERVER_BASE_URL}/stopst`, {
82-
method: "POST",
83-
}).catch(console.error);
70+
beforeEach(async function () {
71+
await backendHook("beforeEach");
72+
consoleLogs = [];
73+
consoleLogs = await clearBrowserCookiesWithoutAffectingConsole(page, consoleLogs);
8474
});
8575

8676
afterEach(async function () {
8777
await page.evaluate(() => {
8878
localStorage.removeItem("thirdPartyRedirectURL");
8979
localStorage.removeItem("clientType");
9080
});
91-
return screenshotOnFailure(this, browser);
81+
await screenshotOnFailure(this, browser);
82+
await backendHook("afterEach");
9283
});
9384

94-
beforeEach(async function () {
95-
consoleLogs = [];
96-
consoleLogs = await clearBrowserCookiesWithoutAffectingConsole(page, consoleLogs);
85+
after(async function () {
86+
await browser?.close();
87+
await backendHook("after");
9788
});
9889

9990
describe("Third Party test", function () {

test/end-to-end/thirdpartyemailpassword.test.js

Lines changed: 21 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,6 @@
1818
*/
1919

2020
import assert from "assert";
21-
import fetch from "isomorphic-fetch";
22-
import puppeteer from "puppeteer";
2321
import {
2422
clearBrowserCookiesWithoutAffectingConsole,
2523
assertProviders,
@@ -43,23 +41,23 @@ import {
4341
clickOnProviderButtonWithoutWaiting,
4442
getFeatureFlags,
4543
setEnabledRecipes,
46-
backendBeforeEach,
4744
setSelectDropdownValue,
4845
getInputField,
4946
getLabelsText,
5047
isReact16,
5148
waitForUrl,
5249
setupBrowser,
50+
backendHook,
51+
setupCoreApp,
52+
setupST,
5353
} from "../helpers";
5454
import {
5555
TEST_CLIENT_BASE_URL,
56-
TEST_SERVER_BASE_URL,
5756
SIGN_IN_UP_API,
5857
SIGN_UP_API,
5958
SOMETHING_WENT_WRONG_ERROR,
6059
EMAIL_EXISTS_API,
6160
GET_AUTH_URL_API,
62-
TEST_APPLICATION_SERVER_BASE_URL,
6361
SIGN_IN_API,
6462
} from "../constants";
6563

@@ -71,12 +69,13 @@ describe("SuperTokens Third Party Email Password", function () {
7169
let page;
7270
let consoleLogs;
7371

74-
before(async function () {
75-
await backendBeforeEach();
72+
const appConfig = {};
7673

77-
await fetch(`${TEST_SERVER_BASE_URL}/startst`, {
78-
method: "POST",
79-
}).catch(console.error);
74+
before(async function () {
75+
await backendHook("before");
76+
const coreUrl = await setupCoreApp();
77+
appConfig.coreUrl = coreUrl;
78+
await setupST(appConfig);
8079

8180
browser = await setupBrowser();
8281
page = await browser.newPage();
@@ -89,22 +88,18 @@ describe("SuperTokens Third Party Email Password", function () {
8988
});
9089
});
9190

92-
after(async function () {
93-
await browser.close();
94-
await fetch(`${TEST_SERVER_BASE_URL}/after`, {
95-
method: "POST",
96-
}).catch(console.error);
97-
98-
await fetch(`${TEST_SERVER_BASE_URL}/stopst`, {
99-
method: "POST",
100-
}).catch(console.error);
91+
afterEach(async function () {
92+
await screenshotOnFailure(this, browser);
93+
await backendHook("afterEach");
10194
});
10295

103-
afterEach(function () {
104-
return screenshotOnFailure(this, browser);
96+
after(async function () {
97+
await browser?.close();
98+
await backendHook("after");
10599
});
106100

107101
beforeEach(async function () {
102+
await backendHook("beforeEach");
108103
consoleLogs = [];
109104
consoleLogs = await clearBrowserCookiesWithoutAffectingConsole(page, consoleLogs);
110105
await Promise.all([
@@ -376,7 +371,11 @@ describe("SuperTokens Third Party Email Password", function () {
376371
this.skip();
377372
}
378373
await assertProviders(page);
379-
await setEnabledRecipes(["thirdparty"], []);
374+
await setupST({
375+
...appConfig,
376+
enabledRecipes: ["thirdparty"],
377+
enabledProviders: [],
378+
});
380379

381380
await Promise.all([
382381
page.waitForResponse(

test/end-to-end/thirdpartypasswordless.test.js

Lines changed: 40 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
*/
1919

2020
import assert from "assert";
21-
import puppeteer from "puppeteer";
2221
import {
2322
clearBrowserCookiesWithoutAffectingConsole,
2423
clickOnProviderButton,
@@ -29,18 +28,19 @@ import {
2928
submitForm,
3029
waitForSTElement,
3130
getPasswordlessDevice,
32-
setPasswordlessFlowType,
3331
getFeatureFlags,
34-
isReact16,
3532
assertProviders,
3633
setEnabledRecipes,
3734
clickOnProviderButtonWithoutWaiting,
3835
getGeneralError,
39-
backendBeforeEach,
4036
waitForUrl,
4137
setupBrowser,
38+
backendHook,
39+
setupCoreApp,
40+
setupST,
41+
screenshotOnFailure
4242
} from "../helpers";
43-
import { TEST_CLIENT_BASE_URL, TEST_SERVER_BASE_URL, SIGN_IN_UP_API, GET_AUTH_URL_API } from "../constants";
43+
import { TEST_CLIENT_BASE_URL, SIGN_IN_UP_API, GET_AUTH_URL_API } from "../constants";
4444

4545
/*
4646
* Tests.
@@ -57,7 +57,10 @@ describe("SuperTokens Third Party Passwordless", function () {
5757
"ST_LOGS PASSWORDLESS OVERRIDE GET_LOGIN_ATTEMPT_INFO",
5858
];
5959

60+
const appConfig = {};
61+
6062
before(async function () {
63+
backendHook("before");
6164
const features = await getFeatureFlags();
6265
if (!features.includes("passwordless")) {
6366
this.skip();
@@ -66,11 +69,9 @@ describe("SuperTokens Third Party Passwordless", function () {
6669

6770
describe("Recipe combination tests", () => {
6871
before(async function () {
69-
await backendBeforeEach();
70-
71-
await fetch(`${TEST_SERVER_BASE_URL}/startst`, {
72-
method: "POST",
73-
}).catch(console.error);
72+
const coreUrl = await setupCoreApp();
73+
appConfig.coreUrl = coreUrl;
74+
await setupST(appConfig);
7475

7576
browser = await setupBrowser();
7677
page = await browser.newPage();
@@ -82,21 +83,15 @@ describe("SuperTokens Third Party Passwordless", function () {
8283
});
8384
});
8485

85-
after(async function () {
86-
await browser.close();
87-
await fetch(`${TEST_SERVER_BASE_URL}/after`, {
88-
method: "POST",
89-
}).catch(console.error);
90-
91-
await fetch(`${TEST_SERVER_BASE_URL}/stopst`, {
92-
method: "POST",
93-
}).catch(console.error);
94-
});
95-
9686
beforeEach(async function () {
87+
await backendHook("beforeEach");
9788
consoleLogs = [];
9889
consoleLogs = await clearBrowserCookiesWithoutAffectingConsole(page, consoleLogs);
99-
await setPasswordlessFlowType("EMAIL_OR_PHONE", "USER_INPUT_CODE_AND_MAGIC_LINK");
90+
await setupST({
91+
...appConfig,
92+
passwordlessContactMethod: "EMAIL_OR_PHONE",
93+
passwordlessFlowType: "USER_INPUT_CODE_AND_MAGIC_LINK",
94+
});
10095
await Promise.all([
10196
page.goto(
10297
`${TEST_CLIENT_BASE_URL}/auth?authRecipe=thirdpartypasswordless&passwordlessContactMethodType=EMAIL_OR_PHONE`
@@ -107,11 +102,23 @@ describe("SuperTokens Third Party Passwordless", function () {
107102

108103
afterEach(async function () {
109104
await page.evaluate(() => localStorage.removeItem("supertokens-passwordless-loginAttemptInfo"));
105+
await screenshotOnFailure(this, browser);
106+
await backendHook("afterEach");
107+
});
108+
109+
after(async function () {
110+
await page?.close();
111+
await browser?.close();
112+
await backendHook("after");
110113
});
111114

112115
it("No account consolidation", async function () {
113116
// 1. Sign up with credentials
114-
await setPasswordlessFlowType("EMAIL_OR_PHONE", "USER_INPUT_CODE");
117+
await setupST({
118+
...appConfig,
119+
passwordlessContactMethod: "EMAIL_OR_PHONE",
120+
passwordlessFlowType: "USER_INPUT_CODE",
121+
});
115122
await page.evaluate(() => localStorage.removeItem("supertokens-passwordless-loginAttemptInfo"));
116123
await Promise.all([
117124
page.goto(`${TEST_CLIENT_BASE_URL}/auth`),
@@ -153,7 +160,11 @@ describe("SuperTokens Third Party Passwordless", function () {
153160
});
154161

155162
it("Successful signin with passwordless w/ required email verification", async function () {
156-
await setPasswordlessFlowType("EMAIL_OR_PHONE", "USER_INPUT_CODE");
163+
await setupST({
164+
...appConfig,
165+
passwordlessContactMethod: "EMAIL_OR_PHONE",
166+
passwordlessFlowType: "USER_INPUT_CODE",
167+
});
157168
await page.evaluate(() => localStorage.removeItem("supertokens-passwordless-loginAttemptInfo"));
158169

159170
await Promise.all([
@@ -207,6 +218,11 @@ describe("SuperTokens Third Party Passwordless", function () {
207218
this.skip();
208219
}
209220
await assertProviders(page);
221+
await setupST({
222+
...appConfig,
223+
enabledRecipes: ["thirdparty"],
224+
enabledProviders: [],
225+
});
210226
await setEnabledRecipes(["thirdparty"], []);
211227

212228
await Promise.all([

0 commit comments

Comments
 (0)