From 52371da4db8915e605bc5197eaf6581eaae1c585 Mon Sep 17 00:00:00 2001 From: mulahasanovic Date: Wed, 1 Apr 2026 19:37:45 +0200 Subject: [PATCH 1/5] chore: pin axios version --- package-lock.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 14e0a69b..bed5992f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "license": "ISC", "dependencies": { "@sasjs/utils": "3.5.6", - "axios": "^1.13.5", + "axios": "1.13.5", "axios-cookiejar-support": "5.0.5", "form-data": "4.0.4", "https": "1.0.0", diff --git a/package.json b/package.json index 0d8c56aa..235c6ad4 100644 --- a/package.json +++ b/package.json @@ -77,7 +77,7 @@ "main": "index.js", "dependencies": { "@sasjs/utils": "3.5.6", - "axios": "^1.13.5", + "axios": "1.13.5", "axios-cookiejar-support": "5.0.5", "form-data": "4.0.4", "https": "1.0.0", From d7053ba628af8606d22847f69f828b594700b6bf Mon Sep 17 00:00:00 2001 From: mulahasanovic Date: Wed, 1 Apr 2026 21:02:46 +0200 Subject: [PATCH 2/5] test(cypress): wait for app init before checking login state --- cypress/integration/sasjs.tests.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cypress/integration/sasjs.tests.ts b/cypress/integration/sasjs.tests.ts index e999de7b..5ed0d90e 100644 --- a/cypress/integration/sasjs.tests.ts +++ b/cypress/integration/sasjs.tests.ts @@ -13,6 +13,8 @@ context('sasjs-tests', function () { }) function loginIfNeeded() { + cy.get('login-form, tests-view', { timeout: 30000 }).should('exist') + cy.get('body').then(($body) => { if ($body.find('login-form').length > 0) { cy.get('login-form') From 72318ced009c0bef123e8b901ead617afb75850a Mon Sep 17 00:00:00 2001 From: mulahasanovic Date: Mon, 6 Apr 2026 10:44:38 +0200 Subject: [PATCH 3/5] ci: set TERM=dumb to suppress tput warnings --- .github/workflows/server-tests.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/server-tests.yml b/.github/workflows/server-tests.yml index 3654adc7..3f26e6dc 100644 --- a/.github/workflows/server-tests.yml +++ b/.github/workflows/server-tests.yml @@ -110,6 +110,8 @@ jobs: shell: bash - name: Run cypress on sasjs + env: + TERM: dumb run: | sed -i "s|sasjsTestsUrl: '.*'|sasjsTestsUrl: 'http://localhost:5173'|g" ./cypress.config.js sed -i "s|username: '.*'|username: '${{ secrets.SASJS_USERNAME }}'|g" ./cypress.config.js From 73556c9fdf86994a276535573ac9f611f4c14a30 Mon Sep 17 00:00:00 2001 From: mulahasanovic Date: Mon, 6 Apr 2026 17:02:29 +0200 Subject: [PATCH 4/5] fix(ci): use CORS-whitelisted port for sasjs-tests dev server --- .github/workflows/server-tests.yml | 2 +- cypress.config.js | 2 +- sasjs-tests/vite.config.js | 3 +++ 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/server-tests.yml b/.github/workflows/server-tests.yml index 3f26e6dc..f2f37429 100644 --- a/.github/workflows/server-tests.yml +++ b/.github/workflows/server-tests.yml @@ -113,7 +113,7 @@ jobs: env: TERM: dumb run: | - sed -i "s|sasjsTestsUrl: '.*'|sasjsTestsUrl: 'http://localhost:5173'|g" ./cypress.config.js + sed -i "s|sasjsTestsUrl: '.*'|sasjsTestsUrl: 'http://localhost:3000'|g" ./cypress.config.js sed -i "s|username: '.*'|username: '${{ secrets.SASJS_USERNAME }}'|g" ./cypress.config.js sed -i "s|password: '.*'|password: '${{ secrets.SASJS_PASSWORD }}'|g" ./cypress.config.js cat ./cypress.config.js diff --git a/cypress.config.js b/cypress.config.js index 2e2a7e37..62ca1ffe 100644 --- a/cypress.config.js +++ b/cypress.config.js @@ -9,7 +9,7 @@ module.exports = defineConfig({ supportFile: 'cypress/support/index.js' }, env: { - sasjsTestsUrl: 'http://localhost:5173', + sasjsTestsUrl: 'http://localhost:3000', username: '', password: '', screenshotOnRunFailure: false, diff --git a/sasjs-tests/vite.config.js b/sasjs-tests/vite.config.js index 44484a70..d9492f79 100644 --- a/sasjs-tests/vite.config.js +++ b/sasjs-tests/vite.config.js @@ -1,5 +1,8 @@ import { defineConfig } from 'vite' export default defineConfig({ + server: { + port: 3000 + }, build: { assetsInlineLimit: 0, assetsDir: '' From 87efdfff2e9eedb2030c074600ccc317a9cceb30 Mon Sep 17 00:00:00 2001 From: mulahasanovic Date: Wed, 8 Apr 2026 12:53:15 +0200 Subject: [PATCH 5/5] fix(ci): set correct loginMechanism and fix test reload --- .github/workflows/server-tests.yml | 1 + cypress/integration/sasjs.tests.ts | 2 +- sasjs-tests/sasjs/sasjsconfig.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/server-tests.yml b/.github/workflows/server-tests.yml index f2f37429..89f4dc40 100644 --- a/.github/workflows/server-tests.yml +++ b/.github/workflows/server-tests.yml @@ -97,6 +97,7 @@ jobs: npm i jq '.sasJsConfig.serverUrl |= "${{ secrets.SASJS_SERVER_URL }}"' ./public/config.json > ./public/config.temp && mv ./public/config.temp ./public/config.json jq '.sasJsConfig.serverType |= "SASJS"' ./public/config.json > ./public/config.temp && mv ./public/config.temp ./public/config.json + jq '.sasJsConfig.loginMechanism |= "Default"' ./public/config.json > ./public/config.temp && mv ./public/config.temp ./public/config.json jq '.userName |= "${{ secrets.SASJS_USERNAME }}"' ./public/config.json > ./public/config.temp && mv ./public/config.temp ./public/config.json jq '.password |= "${{ secrets.SASJS_PASSWORD }}"' ./public/config.json > ./public/config.temp && mv ./public/config.temp ./public/config.json diff --git a/cypress/integration/sasjs.tests.ts b/cypress/integration/sasjs.tests.ts index 5ed0d90e..07d82a31 100644 --- a/cypress/integration/sasjs.tests.ts +++ b/cypress/integration/sasjs.tests.ts @@ -9,7 +9,7 @@ context('sasjs-tests', function () { }) beforeEach(() => { - cy.reload() + cy.visit(sasjsTestsUrl) }) function loginIfNeeded() { diff --git a/sasjs-tests/sasjs/sasjsconfig.json b/sasjs-tests/sasjs/sasjsconfig.json index bb61281f..530c5f76 100644 --- a/sasjs-tests/sasjs/sasjsconfig.json +++ b/sasjs-tests/sasjs/sasjsconfig.json @@ -7,7 +7,7 @@ "targets": [ { "name": "4gl", - "serverUrl": "https://sas9.4gl.io", + "serverUrl": "https://sas.4gl.io", "serverType": "SASJS", "httpsAgentOptions": { "allowInsecureRequests": false