1818 */
1919
2020import assert from "assert" ;
21- import puppeteer from "puppeteer" ;
22- import fetch from "isomorphic-fetch" ;
2321import {
2422 waitForSTElement ,
2523 screenshotOnFailure ,
@@ -31,14 +29,12 @@ import {
3129 getSignInOrSignUpSwitchLink ,
3230 setInputValues ,
3331 submitForm ,
34- loginWithGoogle ,
3532 clearBrowserCookiesWithoutAffectingConsole ,
3633 clickOnProviderButton ,
3734 loginWithMockProvider ,
3835 isMultitenancySupported ,
3936 isMultitenancyManagementEndpointsSupported ,
4037 setupTenant ,
41- backendBeforeEach ,
4238 getTextByDataSupertokens ,
4339 loginWithAuth0 ,
4440 setupCoreApp ,
@@ -49,38 +45,35 @@ import {
4945import {
5046 TEST_CLIENT_BASE_URL ,
5147 DEFAULT_WEBSITE_BASE_PATH ,
52- ST_ROOT_SELECTOR ,
53- TEST_SERVER_BASE_URL ,
5448 SIGN_IN_UP_API ,
5549 SOMETHING_WENT_WRONG_ERROR ,
5650 LOGIN_METHODS_API ,
5751} from "../constants" ;
5852
59- let connectionURI ;
6053/*
6154 * Tests.
6255 */
6356describe ( "SuperTokens Multitenancy dynamic login methods" , function ( ) {
6457 let browser ;
6558 let page ;
6659 let pageCrashed ;
60+ let appId ;
6761
6862 before ( async function ( ) {
63+ await backendHook ( "before" ) ;
6964 const isSupported = ( await isMultitenancySupported ( ) ) && ( await isMultitenancyManagementEndpointsSupported ( ) ) ;
7065 if ( ! isSupported ) {
7166 this . skip ( ) ;
7267 }
68+
69+ browser = await setupBrowser ( ) ;
7370 } ) ;
7471
7572 beforeEach ( async function ( ) {
76- await backendBeforeEach ( ) ;
77-
78- const startSTResp = await fetch ( `${ TEST_SERVER_BASE_URL } /startst` , {
79- method : "POST" ,
80- } ) . catch ( console . error ) ;
73+ await backendHook ( "beforeEach" ) ;
8174
82- assert . strictEqual ( startSTResp . status , 200 ) ;
83- connectionURI = await startSTResp . text ( ) ;
75+ const coreUrl = await setupCoreApp ( ) ;
76+ await setupST ( { coreUrl } ) ;
8477
8578 page = await browser . newPage ( ) ;
8679 pageCrashed = false ;
@@ -98,30 +91,14 @@ describe("SuperTokens Multitenancy dynamic login methods", function () {
9891 } ) ;
9992
10093 afterEach ( async function ( ) {
101- await fetch ( `${ TEST_SERVER_BASE_URL } /after` , {
102- method : "POST" ,
103- } ) . catch ( console . error ) ;
104-
105- await fetch ( `${ TEST_SERVER_BASE_URL } /stopst` , {
106- method : "POST" ,
107- } ) . catch ( console . error ) ;
10894 await screenshotOnFailure ( this , browser ) ;
109- if ( page ) {
110- await page . close ( ) ;
111- }
112- } ) ;
113-
114- before ( async ( ) => {
115- browser = await puppeteer . launch ( {
116- args : [ "--no-sandbox" , "--disable-setuid-sandbox" , "--disable-web-security" ] ,
117- headless : true ,
118- } ) ;
95+ await page ?. close ( ) ;
96+ await backendHook ( "afterEach" ) ;
11997 } ) ;
12098
12199 after ( async function ( ) {
122- if ( browser !== undefined ) {
123- await browser . close ( ) ;
124- }
100+ await browser ?. close ( ) ;
101+ await backendHook ( "after" ) ;
125102 } ) ;
126103
127104 it ( "Renders correct signup form with emailpassword when core list of providers is empty" , async function ( ) {
@@ -920,6 +897,9 @@ describe("SuperTokens Multitenancy dynamic login methods", function () {
920897 } ) ;
921898
922899 it ( "should be able to log in with dynamically added tp providers" , async function ( ) {
900+ // This test is particularly slow, overriding the timeout to be slightly longer than default
901+ this . timeout ( 40000 ) ;
902+
923903 await setEnabledRecipes ( page , [ "thirdparty" ] ) ;
924904 await enableDynamicLoginMethods ( page , {
925905 emailPassword : { enabled : false } ,
0 commit comments