1
1
// @ts -check
2
2
import { test , expect } from '@playwright/test' ;
3
3
4
- test ( 'Load Homepage' , async ( { page} ) => {
4
+ test ( 'Load Homepage' , async ( { page} , workerInfo ) => {
5
5
const response = await page . goto ( '/' ) ;
6
- await expect ( response . status ( ) ) . toBe ( 200 ) ; // Status OK
6
+ await expect ( response ? .status ( ) ) . toBe ( 200 ) ; // Status OK
7
7
await expect ( page ) . toHaveTitle ( / ^ G i t e a : G i t w i t h a c u p o f t e a \s * $ / ) ;
8
8
await expect ( page . locator ( '.logo' ) ) . toHaveAttribute ( 'src' , '/assets/img/logo.svg' ) ;
9
- await page . screenshot ( { path : 'screenshot.png' , fullPage : true } ) ;
10
9
} ) ;
10
+
11
+ test ( 'Test Register Form' , async ( { page} , workerInfo ) => {
12
+ const response = await page . goto ( '/user/sign_up' ) ;
13
+ await expect ( response ?. status ( ) ) . toBe ( 200 ) ; // Status OK
14
+ await page . type ( 'input[name=user_name]' , `test-${ workerInfo . workerIndex } ` ) ;
15
+ await page . type ( 'input[name=email]' , `test-${ workerInfo . workerIndex } @test.com` ) ;
16
+ await page . type ( 'input[name=password]' , 'test123' ) ;
17
+ await page . type ( 'input[name=retype]' , 'test123' ) ;
18
+ await page . click ( 'form button.ui.green.button:visible' ) ;
19
+ // Make sure we routed to the home page. Else login failed.
20
+ await expect ( page . url ( ) ) . toBe ( `${ workerInfo . project . use . baseURL } /` ) ;
21
+ // Uncomment to see visual testing
22
+ //await expect(page).toHaveScreenshot({ timeout: 20000, mask: [page.locator('footer div.ui.left')] });
23
+ //await page.screenshot({ path: `tools/e2e/screenshots/${workerInfo.title}-${workerInfo.project.name}.png` });
24
+ } ) ;
0 commit comments