Remove integration tests (for now)

fflorent 3 months ago
parent a87578c296
commit 1bf114a38b

File diff suppressed because it is too large Load Diff

@ -1,24 +0,0 @@
{
"id" : "1564f73d-c385-4269-84da-34b40f494dea",
"createdTimestamp" : 1710254868534,
"username" : "keycloakuser",
"enabled" : true,
"totp" : false,
"emailVerified" : true,
"firstName" : "Keycloak",
"lastName" : "User",
"email" : "keycloakuser@example.com",
"credentials" : [ {
"id" : "3ceee294-209a-4187-aede-1dcfa2dac006",
"type" : "password",
"userLabel" : "Password: keycloakpassword",
"createdDate" : 1710254893700,
"secretData" : "{\"value\":\"kZZMgT2g89C+LFfigQt/qu5H9vs188wWgVK1KqnO12Q=\",\"salt\":\"ffAeQSmuJ7cGFE8rzN+f/g==\",\"additionalParameters\":{}}",
"credentialData" : "{\"hashIterations\":27500,\"algorithm\":\"pbkdf2-sha256\",\"additionalParameters\":{}}"
} ],
"disableableCredentialTypes" : [ ],
"requiredActions" : [ ],
"realmRoles" : [ "default-roles-grist" ],
"notBefore" : 0,
"groups" : [ ]
}

@ -28,7 +28,6 @@ jobs:
- ':nbrowser-^[M-O]:'
- ':nbrowser-^[P-S]:'
- ':nbrowser-^[^A-S]:'
- ':nbrowser:keycloak:'
include:
- tests: ':lint:python:client:common:smoke:'
node-version: 18.x
@ -74,7 +73,7 @@ jobs:
run: yarn run build:prod
- name: Install chromedriver
if: contains(matrix.tests, ':nbrowser') || contains(matrix.tests, ':smoke:')
if: contains(matrix.tests, ':nbrowser-') || contains(matrix.tests, ':smoke:')
run: ./node_modules/selenium-webdriver/bin/linux/selenium-manager --driver chromedriver
- name: Run smoke test
@ -93,19 +92,6 @@ jobs:
if: contains(matrix.tests, ':common:')
run: yarn run test:common
- name: Setup Keycloak realm and client
uses: addnab/docker-run-action@v3
if: contains(matrix.tests, ':keycloak:')
with:
image: quay.io/keycloak/keycloak
options: -v ${{ github.workspace }}:/workspace
run: |
set -eu -o pipefail
cd /opt/keycloak/bin
./kcadm.sh config credentials --server http://keycloak:8080/ --realm=master --user=admin --password=admin
./kcadm.sh create realms -f /workspace/.github/workflows/import_keycloak/grist-realm.json
./kcadm.sh create users -r grist -f /workspace/.github/workflows/import_keycloak/grist-users-0.json
- name: Run server tests with minio and redis
if: contains(matrix.tests, ':server-')
run: |
@ -132,18 +118,6 @@ jobs:
MOCHA_WEBDRIVER_LOGDIR: ${{ runner.temp }}/test-logs/webdriver
TESTDIR: ${{ runner.temp }}/test-logs
- name: Run integration with Keycloak
if: contains(matrix.tests, ':nbrowser:keycloak:')
env:
GRIST_OIDC_IDP_ISSUER: "http://127.0.0.1:8080/realms/grist"
GRIST_OIDC_IDP_CLIENT_ID: "keycloak_clientid"
GRIST_OIDC_IDP_CLIENT_SECRET: "keycloak_secret"
GRIST_OIDC_IDP_SCOPES: "openid email profile"
run: |
mkdir -p $MOCHA_WEBDRIVER_LOGDIR
export GREP_TESTS="LoginWithOIDC"
MOCHA_WEBDRIVER_SKIP_CLEANUP=1 MOCHA_WEBDRIVER_HEADLESS=1 yarn run test:nbrowser
- name: Prepare for saving artifact
if: failure()
run: |
@ -187,21 +161,6 @@ jobs:
--health-interval 10s
--health-timeout 5s
--health-retries 5
keycloak:
image: quay.io/keycloak/keycloak
ports:
- 8080:8080
env:
KEYCLOAK_ADMIN: admin
KEYCLOAK_ADMIN_PASSWORD: admin
# curl not being present in the keycloak container, use this trick:
# https://github.com/keycloak/keycloak/discussions/17319#discussioncomment-5192267
options: >-
--health-cmd "echo > /dev/tcp/localhost/8080"
--health-interval 20s
--health-timeout 5s
--health-retries 20
candidate:
needs: build_and_test

@ -1,42 +0,0 @@
import { assert } from 'chai';
import { driver } from 'mocha-webdriver';
import * as gu from 'test/nbrowser/gristUtils';
import { server, setupTestSuite } from 'test/nbrowser/testUtils';
describe('IntegrationWithKeycloak', function() {
before(function() {
if (!process.env.GRIST_OIDC_SP_HOST) {
return this.skip();
}
});
describe('LoginWithOIDC', function() {
this.timeout(60000);
setupTestSuite();
gu.withEnvironmentSnapshot({
get 'GRIST_OIDC_SP_HOST'() { return server.getHost(); },
'GRIST_TEST_LOGIN': 0,
});
it('should login using OIDC', async () => {
await driver.get(`${server.getHost()}/o/docs/login`);
await driver.findWait('#kc-form-login', 10_000);
await driver.find('#username').sendKeys('keycloakuser');
await driver.find('#password').sendKeys('keycloakpassword');
await driver.find('#kc-login').click();
await driver.wait(
async () => {
const url = await driver.getCurrentUrl();
return url.startsWith(server.getHost());
},
20_000
);
await gu.openAccountMenu();
assert.equal(await driver.find('.test-usermenu-name').getText(), 'Keycloak User');
assert.equal(await driver.find('.test-usermenu-email').getText(), 'keycloakuser@example.com');
await driver.find('.test-dm-log-out').click();
await driver.findContentWait('.test-error-header', /Signed out/, 20_000, 'Should be signed out');
});
});
});
Loading…
Cancel
Save