mirror of https://github.com/nocodb/nocodb
Pranav C
11 months ago
1 changed files with 46 additions and 0 deletions
@ -0,0 +1,46 @@
|
||||
import { Page } from '@playwright/test'; |
||||
import BasePage from '../Base'; |
||||
import { ProjectsPage } from '../ProjectsPage'; |
||||
|
||||
export class OpenIDLoginPage extends BasePage { |
||||
readonly projectsPage: ProjectsPage; |
||||
|
||||
constructor(rootPage: Page) { |
||||
super(rootPage); |
||||
this.projectsPage = new ProjectsPage(rootPage); |
||||
} |
||||
|
||||
async goto(title = 'test') { |
||||
// reload page to get latest app info
|
||||
await this.rootPage.reload(); |
||||
await this.rootPage.goto('/#/signin/'); |
||||
// click sign in with SAML
|
||||
await this.rootPage.locator(`button:has-text("Sign in with ${title}")`).click(); |
||||
} |
||||
|
||||
get() { |
||||
return this.rootPage.locator('html'); |
||||
} |
||||
|
||||
async signIn({ email }: { email: string }) { |
||||
const signIn = this.get(); |
||||
await signIn.locator('[name="login"]').waitFor(); |
||||
|
||||
await signIn.locator(`[name="login"]`).fill(email); |
||||
await signIn.locator(`[name="password"]`).fill('dummy-password'); |
||||
|
||||
await signIn.locator(`[type="submit"]`).click(); |
||||
const authorize = this.get(); |
||||
|
||||
await Promise.all([ |
||||
this.rootPage.waitForNavigation({ url: /localhost:8080/ }), |
||||
authorize.locator(`[type="submit"]`).click(), |
||||
]); |
||||
|
||||
await this.rootPage.goto(`http://localhost:3000?` + this.rootPage.url().split('?')[1]); |
||||
|
||||
await this.projectsPage.waitToBeRendered(); |
||||
|
||||
console.log('111'); |
||||
} |
||||
} |
Loading…
Reference in new issue