Skip to content

Commit

Permalink
Merge pull request #216 from skip-mev/seperated-tests
Browse files Browse the repository at this point in the history
seperated tests
  • Loading branch information
codingki authored Mar 21, 2024
2 parents 39891fb + ba48afa commit 1689f20
Show file tree
Hide file tree
Showing 6 changed files with 166 additions and 5 deletions.
82 changes: 80 additions & 2 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
NEXT_PUBLIC_API_URL: ${{ secrets.NEXT_PUBLIC_API_URL }}
run: npm test

"e2e-tests":
"e2e-test-noble-usdc-injective-inj":
timeout-minutes: 20
runs-on: ubuntu-latest
container:
Expand Down Expand Up @@ -58,7 +58,85 @@ jobs:
POLKACHU_PASSWORD: ${{ secrets.POLKACHU_PASSWORD }}
NEXT_PUBLIC_EDGE_CONFIG: ${{ secrets.NEXT_PUBLIC_EDGE_CONFIG }}
PLAYWRIGHT_TEST_BASE_URL: ${{ steps.waitFor200.outputs.url }}
run: xvfb-run --auto-servernum --server-args='-screen 0, 1920x1080x24' npm run test:e2e
run: xvfb-run --auto-servernum --server-args='-screen 0, 1920x1080x24' npm run test:e2e-1
- uses: actions/upload-artifact@v3
if: always()
with:
name: playwright-report
path: playwright-report/
retention-days: 30
"e2e-test-injective-inj-cosmoshub-atom":
timeout-minutes: 20
runs-on: ubuntu-latest
container:
image: mcr.microsoft.com/playwright:v1.38.0-jammy
steps:
- name: Waiting for 200 from the Vercel Preview
uses: patrickedqvist/[email protected]
id: waitFor200
with:
token: ${{ secrets.GITHUB_TOKEN }}
check_interval: 15
max_timeout: 1200
- name: Checkout
uses: actions/checkout@v3
with:
submodules: true
- run: git config --system --add safe.directory /__w/ibc-dot-fun/ibc-dot-fun
- 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
env:
WORD_PHRASE_KEY: ${{ secrets.WORD_PHRASE_KEY }}
POLKACHU_USER: ${{ secrets.WORD_PHRASE_KEY }}
POLKACHU_PASSWORD: ${{ secrets.POLKACHU_PASSWORD }}
NEXT_PUBLIC_EDGE_CONFIG: ${{ secrets.NEXT_PUBLIC_EDGE_CONFIG }}
PLAYWRIGHT_TEST_BASE_URL: ${{ steps.waitFor200.outputs.url }}
run: xvfb-run --auto-servernum --server-args='-screen 0, 1920x1080x24' npm run test:e2e-2
- uses: actions/upload-artifact@v3
if: always()
with:
name: playwright-report
path: playwright-report/
retention-days: 30
"e2e-test-cosmoshub-atom-noble-usdc":
timeout-minutes: 20
runs-on: ubuntu-latest
container:
image: mcr.microsoft.com/playwright:v1.38.0-jammy
steps:
- name: Waiting for 200 from the Vercel Preview
uses: patrickedqvist/[email protected]
id: waitFor200
with:
token: ${{ secrets.GITHUB_TOKEN }}
check_interval: 15
max_timeout: 1200
- name: Checkout
uses: actions/checkout@v3
with:
submodules: true
- run: git config --system --add safe.directory /__w/ibc-dot-fun/ibc-dot-fun
- 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
env:
WORD_PHRASE_KEY: ${{ secrets.WORD_PHRASE_KEY }}
POLKACHU_USER: ${{ secrets.WORD_PHRASE_KEY }}
POLKACHU_PASSWORD: ${{ secrets.POLKACHU_PASSWORD }}
NEXT_PUBLIC_EDGE_CONFIG: ${{ secrets.NEXT_PUBLIC_EDGE_CONFIG }}
PLAYWRIGHT_TEST_BASE_URL: ${{ steps.waitFor200.outputs.url }}
run: xvfb-run --auto-servernum --server-args='-screen 0, 1920x1080x24' npm run test:e2e-3
- uses: actions/upload-artifact@v3
if: always()
with:
Expand Down
5 changes: 4 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,10 @@
"postinstall": "patch-package && run-s chains:*",
"start": "next start",
"test": "node --experimental-vm-modules --no-warnings ./node_modules/.bin/jest",
"test:e2e": "playwright test --project=chromium",
"test:e2e": "playwright test transactions.spec.ts --project=chromium",
"test:e2e-1": "playwright test 1nobleUSDCToInjectiveINJ.spec.ts --project=chromium",
"test:e2e-2": "playwright test 2injectiveINJToCosmoshubATOM.spec.ts --project=chromium",
"test:e2e-3": "playwright test 3cosmoshubAtomToNobleUSDC.spec.ts --project=chromium",
"visdeps": "bash ./src/scripts/visdeps.sh"
},
"overrides": {
Expand Down
27 changes: 27 additions & 0 deletions tests/1nobleUSDCToInjectiveINJ.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import { test } from "./lib/fixtures";
import {
connectDestination,
connectSource,
e2eTest,
expectPageLoaded,
fillAmount,
initKeplr,
selectDestination,
selectSource,
} from "./utils";

test("Noble USDC -> Injective INJ", async ({ page }) => {
await initKeplr();
await expectPageLoaded(page);

await selectSource(page, "noble", "usdc");
await selectDestination(page, "injective", "inj");

await connectSource(page);

await fillAmount(page, "5");

await connectDestination(page);

await e2eTest(page);
});
27 changes: 27 additions & 0 deletions tests/2injectiveINJToCosmoshubATOM.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import { test } from "./lib/fixtures";
import {
connectDestination,
connectSource,
e2eTest,
expectPageLoaded,
fillAmount,
initKeplr,
selectDestination,
selectSource,
} from "./utils";

test("Injective INJ -> Cosmoshub ATOM", async ({ page }) => {
await initKeplr();
await expectPageLoaded(page);

await selectSource(page, "injective", "inj");
await selectDestination(page, "cosmos hub", "atom");

await connectSource(page);

await fillAmount(page, "0.13");

await connectDestination(page);

await e2eTest(page);
});
27 changes: 27 additions & 0 deletions tests/3cosmoshubAtomToNobleUSDC.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import { test } from "./lib/fixtures";
import {
connectDestination,
connectSource,
e2eTest,
expectPageLoaded,
fillAmount,
initKeplr,
selectDestination,
selectSource,
} from "./utils";

test("Cosmoshub ATOM -> Noble USDC", async ({ page }) => {
await initKeplr();
await expectPageLoaded(page);

await selectSource(page, "cosmos hub", "atom");
await selectDestination(page, "noble", "usdc");

await connectSource(page);

await fillAmount(page, "0.45");

await connectDestination(page);

await e2eTest(page);
});
3 changes: 1 addition & 2 deletions tests/utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,7 @@ export async function expectPageLoaded(page: Page) {
height: 1080,
width: 1920,
});
// @ts-expect-error - playwright types are not up to date
await page.goto(process.env.PLAYWRIGHT_TEST_BASE_URL);
await page.goto(process.env.PLAYWRIGHT_TEST_BASE_URL || "http://localhost:3000");
await test.expect(page.getByRole("button", { name: "Cosmos Hub" })).toBeVisible({
timeout: 5000,
});
Expand Down

0 comments on commit 1689f20

Please sign in to comment.