mirror of
https://github.com/AikidoSec/safe-chain.git
synced 2026-05-26 12:10:49 +00:00
Run e2e tests on PR check
This commit is contained in:
parent
c966660a09
commit
af53a8fbb8
5 changed files with 61 additions and 16 deletions
24
.github/workflows/test-on-pr.yml
vendored
24
.github/workflows/test-on-pr.yml
vendored
|
|
@ -48,18 +48,18 @@ jobs:
|
||||||
node-version: "24"
|
node-version: "24"
|
||||||
cache: "npm"
|
cache: "npm"
|
||||||
|
|
||||||
# - name: Install dependencies
|
- name: Install dependencies
|
||||||
# run: npm ci
|
run: npm ci
|
||||||
|
|
||||||
# - name: Run unit tests
|
- name: Run unit tests
|
||||||
# run: npm test
|
run: npm test
|
||||||
|
|
||||||
# - name: Run E2E tests
|
- name: Run E2E tests
|
||||||
# run: npm run test:e2e
|
run: npm run test:e2e
|
||||||
|
|
||||||
# - name: Clean up Docker resources
|
- name: Clean up Docker resources
|
||||||
# if: always()
|
if: always()
|
||||||
# run: |
|
run: |
|
||||||
# # Clean up any remaining containers and images
|
# Clean up any remaining containers and images
|
||||||
# docker ps -aq --filter "name=safe-chain-e2e-test" | xargs -r docker rm -f
|
docker ps -aq --filter "name=safe-chain-e2e-test" | xargs -r docker rm -f
|
||||||
# docker images -q safe-chain-e2e-test | xargs -r docker rmi -f
|
docker images -q safe-chain-e2e-test | xargs -r docker rmi -f
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "node --test --experimental-test-module-mocks **/*.spec.js",
|
"test": "node --test --experimental-test-module-mocks **/*.spec.js",
|
||||||
"test:watch": "node --test --watch --experimental-test-module-mocks **/*.spec.js",
|
"test:watch": "node --test --watch --experimental-test-module-mocks **/*.spec.js",
|
||||||
"test:e2e": "node --test test/e2e/**/*.e2e.spec.js",
|
|
||||||
"lint": "eslint ."
|
"lint": "eslint ."
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
32
test/e2e/package-lock.json
generated
Normal file
32
test/e2e/package-lock.json
generated
Normal file
|
|
@ -0,0 +1,32 @@
|
||||||
|
{
|
||||||
|
"name": "@aikidosec/safe-chain-e2e-tests",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"lockfileVersion": 3,
|
||||||
|
"requires": true,
|
||||||
|
"packages": {
|
||||||
|
"": {
|
||||||
|
"name": "@aikidosec/safe-chain-e2e-tests",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"license": "AGPL-3.0-or-later",
|
||||||
|
"dependencies": {
|
||||||
|
"node-pty": "^1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/nan": {
|
||||||
|
"version": "2.23.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/nan/-/nan-2.23.0.tgz",
|
||||||
|
"integrity": "sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==",
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
|
"node_modules/node-pty": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/node-pty/-/node-pty-1.0.0.tgz",
|
||||||
|
"integrity": "sha512-wtBMWWS7dFZm/VgqElrTvtfMq4GzJ6+edFI0Y0zyzygUSZMgZdraDUMUhCIvkjhJjme15qWmbyJbtAx4ot4uZA==",
|
||||||
|
"hasInstallScript": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"nan": "^2.17.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15
test/e2e/package.json
Normal file
15
test/e2e/package.json
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
{
|
||||||
|
"name": "@aikidosec/safe-chain-e2e-tests",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"description": "End-to-end tests for the Aikido Safe Chain",
|
||||||
|
"scripts": {
|
||||||
|
"test": "node --test **/*.spec.js"
|
||||||
|
},
|
||||||
|
"keywords": [],
|
||||||
|
"author": "Aikido Security",
|
||||||
|
"license": "AGPL-3.0-or-later",
|
||||||
|
"type": "module",
|
||||||
|
"dependencies": {
|
||||||
|
"node-pty": "^1.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -7,7 +7,6 @@ import assert from "node:assert";
|
||||||
|
|
||||||
const __filename = fileURLToPath(import.meta.url);
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
const __dirname = path.dirname(__filename);
|
const __dirname = path.dirname(__filename);
|
||||||
const projectRoot = path.resolve(__dirname, "../..");
|
|
||||||
|
|
||||||
describe("E2E: safe-chain setup command", () => {
|
describe("E2E: safe-chain setup command", () => {
|
||||||
const imageName = "safe-chain-e2e-test";
|
const imageName = "safe-chain-e2e-test";
|
||||||
|
|
@ -17,8 +16,8 @@ describe("E2E: safe-chain setup command", () => {
|
||||||
before(async () => {
|
before(async () => {
|
||||||
// Build the Docker image for the test environment
|
// Build the Docker image for the test environment
|
||||||
try {
|
try {
|
||||||
execSync(`docker build -t ${imageName} -f test/e2e/Dockerfile .`, {
|
execSync(`docker build -t ${imageName} -f Dockerfile ../../safe-chain`, {
|
||||||
cwd: projectRoot,
|
cwd: __dirname,
|
||||||
stdio: "ignore",
|
stdio: "ignore",
|
||||||
});
|
});
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue