diff --git a/.github/workflows/e2e-tests.yaml b/.github/workflows/e2e-tests.yaml new file mode 100644 index 000000000..147b2227a --- /dev/null +++ b/.github/workflows/e2e-tests.yaml @@ -0,0 +1,43 @@ +name: E2E tests +on: + push: + branches: + - master + - develop + - 'feature/**' + +jobs: + test-runner: + runs-on: ubuntu-latest + container: node:18 + + steps: + - name: Context + env: + GITHUB_CONTEXT: ${{ toJson(github) }} + run: echo "$GITHUB_CONTEXT" + - uses: actions/checkout@v2 + with: + fetch-depth: 1 + - name: yarn install + run: | + yarn install + - name: Cypress run + uses: cypress-io/github-action@v6 + with: + build: yarn prepare:packer + start: node packer/build/bundle.js --listen-api + + - name: Cypress run + uses: cypress-io/github-action@v6 + with: + build: npm run build + start: npm start + + services: + mysql: + image: mysql:8.0.18 + env: + MYSQL_ROOT_PASSWORD: Pwd2020Db + ports: + - 16004:3306 diff --git a/common/defineVolatileDependencies.js b/common/defineVolatileDependencies.js index 0997d62b7..e63c8ff23 100644 --- a/common/defineVolatileDependencies.js +++ b/common/defineVolatileDependencies.js @@ -14,7 +14,7 @@ for (const pkg of volatilePackages) { if (apiPackageJson.dependencies[pkg]) { dependencies[pkg] = apiPackageJson.dependencies[pkg]; } - if (apiPackageJson.optionalDependencies[pkg]) { + if (apiPackageJson.optionalDependencies?.[pkg]) { optionalDependencies[pkg] = apiPackageJson.optionalDependencies[pkg]; } } diff --git a/e2e-tests/cypress/e2e/connect.cy.js b/e2e-tests/cypress/e2e/connect.cy.js index 810c32fba..b4ea04f82 100644 --- a/e2e-tests/cypress/e2e/connect.cy.js +++ b/e2e-tests/cypress/e2e/connect.cy.js @@ -1,11 +1,11 @@ describe('Initialization', () => { it('successfully loads', () => { - cy.visit('http://localhost:5001'); + cy.visit('http://localhost:3000'); cy.contains('Database not selected'); }); it('adds connection', () => { - cy.visit('http://localhost:5001'); + cy.visit('http://localhost:3000'); cy.get('[data-testid=ConnectionDriverFields_connectionType]').select('MySQL'); cy.get('[data-testid=ConnectionDriverFields_user]').clear().type('root'); cy.get('[data-testid=ConnectionDriverFields_password]').clear().type('Pwd2020Db');