Skip to content
Snippets Groups Projects
Commit 6ed73f69 authored by Reiter, Christoph's avatar Reiter, Christoph :snake:
Browse files

Merge branch 'test-cleanup' into 'master'

tests: use tdd mode, unify karma config, don't depend on puppeteer

See merge request !7
parents 077c91aa 2e099bc0
No related branches found
No related tags found
1 merge request!7tests: use tdd mode, unify karma config, don't depend on puppeteer
Pipeline #14193 passed
Showing
with 82 additions and 453 deletions
...@@ -28,12 +28,10 @@ ...@@ -28,12 +28,10 @@
"glob": "^7.1.6", "glob": "^7.1.6",
"i18next-scanner": "^2.10.3", "i18next-scanner": "^2.10.3",
"karma": "^5.1.0", "karma": "^5.1.0",
"karma-chai": "^0.1.0",
"karma-chrome-launcher": "^3.1.0", "karma-chrome-launcher": "^3.1.0",
"karma-firefox-launcher": "^1.3.0", "karma-firefox-launcher": "^1.3.0",
"karma-mocha": "^2.0.1", "karma-mocha": "^2.0.1",
"mocha": "^8.0.1", "mocha": "^8.0.1",
"puppeteer": "^2.0.0",
"rollup": "^2.18.1", "rollup": "^2.18.1",
"rollup-plugin-consts": "^1.0.2", "rollup-plugin-consts": "^1.0.2",
"rollup-plugin-copy": "^3.3.0", "rollup-plugin-copy": "^3.3.0",
......
This diff is collapsed.
module.exports = function(config) {
config.set({
basePath: 'dist',
frameworks: ['mocha'],
client: {
mocha: {
ui: 'tdd',
},
},
files: [
{pattern: './*.js', included: true, watched: true, served: true, type: 'module'},
{pattern: './**/*', included: false, watched: true, served: true},
],
autoWatch: true,
browsers: [
'ChromiumHeadlessNoSandbox',
'FirefoxHeadless',
],
customLaunchers: {
ChromiumHeadlessNoSandbox: {
base: 'ChromiumHeadless',
flags: ['--no-sandbox']
}
},
singleRun: false,
logLevel: config.LOG_ERROR
});
}
\ No newline at end of file
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
"packages/*" "packages/*"
], ],
"scripts": { "scripts": {
"test": "lerna run test" "test": "lerna run --parallel test"
}, },
"author": "", "author": "",
"license": "LGPL-2.1-or-later", "license": "LGPL-2.1-or-later",
......
// Trick to use the auto-downloaded puppeteer chrome binary module.exports = require('../../karma.common.conf.js');
process.env.CHROME_BIN = require('puppeteer').executablePath();
module.exports = function(config) {
config.set({
basePath: 'dist',
frameworks: ['mocha'],
client: {
mocha: {
ui: 'tdd',
},
},
files: [
{pattern: './*.js', included: true, watched: true, served: true, type: 'module'},
{pattern: './**/*', included: false, watched: true, served: true},
],
autoWatch: true,
browsers: ['ChromeHeadlessNoSandbox', 'FirefoxHeadless'],
customLaunchers: {
ChromeHeadlessNoSandbox: {
base: 'ChromeHeadless',
flags: ['--no-sandbox']
}
},
singleRun: false,
logLevel: config.LOG_ERROR
});
}
...@@ -18,7 +18,6 @@ ...@@ -18,7 +18,6 @@
"karma-firefox-launcher": "^1.3.0", "karma-firefox-launcher": "^1.3.0",
"karma-mocha": "^2.0.1", "karma-mocha": "^2.0.1",
"mocha": "^8.0.1", "mocha": "^8.0.1",
"puppeteer": "^5.3.1",
"rollup": "^2.19.0", "rollup": "^2.19.0",
"rollup-plugin-consts": "^1.0.1", "rollup-plugin-consts": "^1.0.1",
"rollup-plugin-copy": "^3.1.0", "rollup-plugin-copy": "^3.1.0",
......
...@@ -24,7 +24,7 @@ export default (async () => { ...@@ -24,7 +24,7 @@ export default (async () => {
onwarn: function (warning, warn) { onwarn: function (warning, warn) {
// ignore chai warnings // ignore chai warnings
if (warning.code === 'CIRCULAR_DEPENDENCY') { if (warning.code === 'CIRCULAR_DEPENDENCY') {
return; return;
} }
warn(warning); warn(warning);
}, },
......
// Trick to use the auto-downloaded puppeteer chrome binary module.exports = require('../../karma.common.conf.js');
process.env.CHROME_BIN = require('puppeteer').executablePath();
module.exports = function(config) {
config.set({
basePath: 'dist',
frameworks: ['mocha'],
client: {
mocha: {
ui: 'tdd',
},
},
files: [
{pattern: './*.js', included: true, watched: true, served: true, type: 'module'},
{pattern: './**/*', included: false, watched: true, served: true},
],
autoWatch: true,
browsers: ['ChromeHeadlessNoSandbox'],
customLaunchers: {
ChromeHeadlessNoSandbox: {
base: 'ChromeHeadless',
flags: ['--no-sandbox']
}
},
singleRun: false,
logLevel: config.LOG_ERROR
});
}
...@@ -17,11 +17,10 @@ ...@@ -17,11 +17,10 @@
"glob": "^7.1.6", "glob": "^7.1.6",
"i18next-scanner": "^2.10.2", "i18next-scanner": "^2.10.2",
"karma": "^5.1.0", "karma": "^5.1.0",
"karma-chai": "^0.1.0",
"karma-chrome-launcher": "^3.0.0", "karma-chrome-launcher": "^3.0.0",
"karma-firefox-launcher": "^1.3.0",
"karma-mocha": "^2.0.1", "karma-mocha": "^2.0.1",
"mocha": "^8.0.1", "mocha": "^8.0.1",
"puppeteer": "^5.3.1",
"rollup": "^2.19.0", "rollup": "^2.19.0",
"rollup-plugin-consts": "^1.0.1", "rollup-plugin-consts": "^1.0.1",
"rollup-plugin-copy": "^3.1.0", "rollup-plugin-copy": "^3.1.0",
......
...@@ -6,7 +6,7 @@ import '../src/dbp-auth-demo'; ...@@ -6,7 +6,7 @@ import '../src/dbp-auth-demo';
suite('dbp-auth basics', () => { suite('dbp-auth basics', () => {
let node; let node;
suiteSetup(async () => { setup(async () => {
node = document.createElement('dbp-auth-keycloak'); node = document.createElement('dbp-auth-keycloak');
node.setAttribute('url', 'someurl'); node.setAttribute('url', 'someurl');
node.setAttribute('realm', 'somerealm'); node.setAttribute('realm', 'somerealm');
...@@ -15,7 +15,7 @@ suite('dbp-auth basics', () => { ...@@ -15,7 +15,7 @@ suite('dbp-auth basics', () => {
await node.updateComplete; await node.updateComplete;
}); });
suiteTeardown(() => { teardown(() => {
node.remove(); node.remove();
}); });
...@@ -27,13 +27,13 @@ suite('dbp-auth basics', () => { ...@@ -27,13 +27,13 @@ suite('dbp-auth basics', () => {
suite('dbp-login-button', () => { suite('dbp-login-button', () => {
let node; let node;
suiteSetup(async () => { setup(async () => {
node = document.createElement('dbp-login-button'); node = document.createElement('dbp-login-button');
document.body.appendChild(node); document.body.appendChild(node);
await node.updateComplete; await node.updateComplete;
}); });
suiteTeardown(() => { teardown(() => {
node.remove(); node.remove();
}); });
...@@ -45,13 +45,13 @@ suite('dbp-login-button', () => { ...@@ -45,13 +45,13 @@ suite('dbp-login-button', () => {
suite('dbp-auth-demo basics', () => { suite('dbp-auth-demo basics', () => {
let node; let node;
suiteSetup(async () => { setup(async () => {
node = document.createElement('dbp-auth-demo'); node = document.createElement('dbp-auth-demo');
document.body.appendChild(node); document.body.appendChild(node);
await node.updateComplete; await node.updateComplete;
}); });
suiteTeardown(() => { teardown(() => {
node.remove(); node.remove();
}); });
......
// Trick to use the auto-downloaded puppeteer chrome binary module.exports = require('../../karma.common.conf.js');
process.env.CHROME_BIN = require('puppeteer').executablePath();
const pkg = require('./package.json');
module.exports = function(config) {
config.set({
basePath: 'dist',
frameworks: ['mocha', 'chai'],
files: [
{pattern: './*.js', included: true, watched: true, served: true, type: 'module'},
{pattern: './**/*', included: false, watched: true, served: true},
],
autoWatch: true,
browsers: ['ChromeHeadlessNoSandbox'],
customLaunchers: {
ChromeHeadlessNoSandbox: {
base: 'ChromeHeadless',
flags: ['--no-sandbox']
}
},
singleRun: false,
logLevel: config.LOG_ERROR
});
}
...@@ -13,11 +13,10 @@ ...@@ -13,11 +13,10 @@
"chai": "^4.2.0", "chai": "^4.2.0",
"i18next-scanner": "^2.10.2", "i18next-scanner": "^2.10.2",
"karma": "^5.1.0", "karma": "^5.1.0",
"karma-chai": "^0.1.0",
"karma-chrome-launcher": "^3.0.0", "karma-chrome-launcher": "^3.0.0",
"karma-firefox-launcher": "^1.3.0",
"karma-mocha": "^2.0.1", "karma-mocha": "^2.0.1",
"mocha": "^8.0.1", "mocha": "^8.0.1",
"puppeteer": "^5.3.1",
"rollup": "^2.19.0", "rollup": "^2.19.0",
"rollup-plugin-consts": "^1.0.1", "rollup-plugin-consts": "^1.0.1",
"rollup-plugin-copy": "^3.1.0", "rollup-plugin-copy": "^3.1.0",
......
...@@ -24,6 +24,10 @@ export default (async () => { ...@@ -24,6 +24,10 @@ export default (async () => {
sourcemap: true sourcemap: true
}, },
onwarn: function (warning, warn) { onwarn: function (warning, warn) {
// ignore chai warnings
if (warning.code === 'CIRCULAR_DEPENDENCY') {
return;
}
warn(warning); warn(warning);
}, },
plugins: [ plugins: [
......
import {assert} from 'chai';
import '../src/dbp-check-in-place-select.js'; import '../src/dbp-check-in-place-select.js';
import '../src/demo.js'; import '../src/demo.js';
describe('dbp-check-in-place-select basics', () => { suite('dbp-check-in-place-select basics', () => {
let node; let node;
beforeEach(async () => { setup(async () => {
node = document.createElement('dbp-check-in-place-select'); node = document.createElement('dbp-check-in-place-select');
document.body.appendChild(node); document.body.appendChild(node);
await node.updateComplete; await node.updateComplete;
}); });
afterEach(() => { teardown(() => {
node.remove(); node.remove();
}); });
it('should render', () => { test('should render', () => {
expect(node).to.have.property('shadowRoot'); assert.isNotNull(node.shadowRoot);
}); });
}); });
describe('dbp-check-in-place-select-demo basics', () => { suite('dbp-check-in-place-select-demo basics', () => {
let node; let node;
beforeEach(async () => { setup(async () => {
node = document.createElement('dbp-check-in-place-select-demo'); node = document.createElement('dbp-check-in-place-select-demo');
document.body.appendChild(node); document.body.appendChild(node);
await node.updateComplete; await node.updateComplete;
}); });
afterEach(() => { teardown(() => {
node.remove(); node.remove();
}); });
it('should render', () => { test('should render', () => {
expect(node).to.have.property('shadowRoot'); assert.isNotNull(node.shadowRoot);
}); });
}); });
// Trick to use the auto-downloaded puppeteer chrome binary module.exports = require('../../karma.common.conf.js');
process.env.CHROME_BIN = require('puppeteer').executablePath();
module.exports = function(config) {
config.set({
basePath: 'dist',
frameworks: ['mocha'],
client: {
mocha: {
ui: 'tdd',
},
},
files: [
{pattern: './*.js', included: true, watched: true, served: true, type: 'module'},
{pattern: './**/*', included: false, watched: true, served: true},
],
autoWatch: true,
browsers: ['ChromeHeadlessNoSandbox', 'FirefoxHeadless'],
customLaunchers: {
ChromeHeadlessNoSandbox: {
base: 'ChromeHeadless',
flags: ['--no-sandbox']
}
},
singleRun: false,
logLevel: config.LOG_ERROR
});
}
...@@ -17,7 +17,6 @@ ...@@ -17,7 +17,6 @@
"karma-firefox-launcher": "^1.3.0", "karma-firefox-launcher": "^1.3.0",
"karma-mocha": "^2.0.1", "karma-mocha": "^2.0.1",
"mocha": "^8.0.1", "mocha": "^8.0.1",
"puppeteer": "^5.3.1",
"rollup": "^2.19.0", "rollup": "^2.19.0",
"rollup-plugin-consts": "^1.0.1", "rollup-plugin-consts": "^1.0.1",
"rollup-plugin-copy": "^3.1.0", "rollup-plugin-copy": "^3.1.0",
......
// Trick to use the auto-downloaded puppeteer chrome binary module.exports = require('../../karma.common.conf.js');
process.env.CHROME_BIN = require('puppeteer').executablePath();
module.exports = function(config) {
config.set({
basePath: 'dist',
frameworks: ['mocha'],
client: {
mocha: {
ui: 'tdd',
},
},
files: [
{pattern: './*.js', included: true, watched: true, served: true, type: 'module'},
{pattern: './**/*', included: false, watched: true, served: true},
],
autoWatch: true,
browsers: ['ChromeHeadlessNoSandbox'],
customLaunchers: {
ChromeHeadlessNoSandbox: {
base: 'ChromeHeadless',
flags: ['--no-sandbox']
}
},
singleRun: false,
logLevel: config.LOG_ERROR
});
}
...@@ -16,7 +16,6 @@ ...@@ -16,7 +16,6 @@
"karma-chrome-launcher": "^3.0.0", "karma-chrome-launcher": "^3.0.0",
"karma-mocha": "^2.0.1", "karma-mocha": "^2.0.1",
"mocha": "^8.0.1", "mocha": "^8.0.1",
"puppeteer": "^5.3.1",
"rollup": "^2.19.0", "rollup": "^2.19.0",
"rollup-plugin-consts": "^1.0.1", "rollup-plugin-consts": "^1.0.1",
"rollup-plugin-copy": "^3.1.0", "rollup-plugin-copy": "^3.1.0",
......
...@@ -6,13 +6,13 @@ import '../src/dbp-data-table-view-demo'; ...@@ -6,13 +6,13 @@ import '../src/dbp-data-table-view-demo';
suite('dbp-data-table-view basics', () => { suite('dbp-data-table-view basics', () => {
let node; let node;
suiteSetup(async () => { setup(async () => {
node = document.createElement('dbp-data-table-view'); node = document.createElement('dbp-data-table-view');
document.body.appendChild(node); document.body.appendChild(node);
await node.updateComplete; await node.updateComplete;
}); });
suiteTeardown(() => { teardown(() => {
node.remove(); node.remove();
}); });
...@@ -24,13 +24,13 @@ suite('dbp-data-table-view basics', () => { ...@@ -24,13 +24,13 @@ suite('dbp-data-table-view basics', () => {
suite('dbp-data-table-view-demo basics', () => { suite('dbp-data-table-view-demo basics', () => {
let node; let node;
suiteSetup(async () => { setup(async () => {
node = document.createElement('dbp-data-table-view-demo'); node = document.createElement('dbp-data-table-view-demo');
document.body.appendChild(node); document.body.appendChild(node);
await node.updateComplete; await node.updateComplete;
}); });
suiteTeardown(() => { teardown(() => {
node.remove(); node.remove();
}); });
......
// Trick to use the auto-downloaded puppeteer chrome binary module.exports = require('../../karma.common.conf.js');
process.env.CHROME_BIN = require('puppeteer').executablePath();
module.exports = function(config) {
config.set({
basePath: 'dist',
frameworks: ['mocha', 'chai'],
files: [
{pattern: './*.js', included: true, watched: true, served: true, type: 'module'},
{pattern: './**/*', included: false, watched: true, served: true},
],
autoWatch: true,
browsers: ['ChromeHeadlessNoSandbox'],
customLaunchers: {
ChromeHeadlessNoSandbox: {
base: 'ChromeHeadless',
flags: ['--no-sandbox']
}
},
singleRun: false,
logLevel: config.LOG_ERROR
});
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment