Skip to content

Commit

Permalink
tests: add playwright to test js
Browse files Browse the repository at this point in the history
  • Loading branch information
PapePathe committed Nov 5, 2023
1 parent 044a682 commit 85fbbbd
Show file tree
Hide file tree
Showing 2 changed files with 57 additions and 0 deletions.
28 changes: 28 additions & 0 deletions .github/workflows/playwright.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Playwright Tests
on:
push:
branches: [ main, master ]
pull_request:
branches: [ main, master ]
jobs:
test:
timeout-minutes: 60
runs-on: ubuntu-latest
working-directory: baloot
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
- name: Install dependencies
run: npm ci
- name: Install Playwright Browsers
run: npx playwright install --with-deps
- name: Run Playwright tests
run: npx playwright test
- uses: actions/upload-artifact@v3
if: always()
with:
name: playwright-report
path: playwright-report/
retention-days: 30
29 changes: 29 additions & 0 deletions baloot/tests/app.spec.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
// @ts-check
const { test, expect } = require('@playwright/test');

test('game play', async ({ page }) => {
await page.goto('http://localhost:3000');

const passe = await page.getByRole('button', { name: 'Passe' });
const trefle = await page.getByRole('button', { name: 'Trefle' });
const carreau = await page.getByRole('button', { name: 'Carreau' });
const coeur = await page.getByRole('button', { name: 'Coeur' });
const pique = await page.getByRole('button', { name: 'Pique' });
const cent = await page.getByRole('button', { name: 'Cent' });
const tout = await page.getByRole('button', { name: 'Tout' });

await expect(passe).toHaveText(/Passe/);
await expect(trefle).toHaveText(/Trefle/);
await expect(carreau).toHaveText(/Carreau/);
await expect(coeur).toHaveText(/Coeur/);
await expect(pique).toHaveText(/Pique/);
await expect(cent).toHaveText(/Cent/);
await expect(tout).toHaveText(/Tout/);

const takingCards = await page.locator('#takingCards > div');
await expect(takingCards).toHaveCount(5)

await tout.click()
const playingCards = await page.locator('#playingCards > div');
await expect(playingCards).toHaveCount(8)
});

0 comments on commit 85fbbbd

Please sign in to comment.