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 dbp/web-components/toolkit!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 @@
"glob": "^7.1.6",
"i18next-scanner": "^2.10.3",
"karma": "^5.1.0",
"karma-chai": "^0.1.0",
"karma-chrome-launcher": "^3.1.0",
"karma-firefox-launcher": "^1.3.0",
"karma-mocha": "^2.0.1",
"mocha": "^8.0.1",
"puppeteer": "^2.0.0",
"rollup": "^2.18.1",
"rollup-plugin-consts": "^1.0.2",
"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 @@
"packages/*"
],
"scripts": {
"test": "lerna run test"
"test": "lerna run --parallel test"
},
"author": "",
"license": "LGPL-2.1-or-later",
......
// Trick to use the auto-downloaded puppeteer chrome binary
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
});
}
module.exports = require('../../karma.common.conf.js');
......@@ -18,7 +18,6 @@
"karma-firefox-launcher": "^1.3.0",
"karma-mocha": "^2.0.1",
"mocha": "^8.0.1",
"puppeteer": "^5.3.1",
"rollup": "^2.19.0",
"rollup-plugin-consts": "^1.0.1",
"rollup-plugin-copy": "^3.1.0",
......
......@@ -24,7 +24,7 @@ export default (async () => {
onwarn: function (warning, warn) {
// ignore chai warnings
if (warning.code === 'CIRCULAR_DEPENDENCY') {
return;
return;
}
warn(warning);
},
......
// Trick to use the auto-downloaded puppeteer chrome binary
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
});
}
module.exports = require('../../karma.common.conf.js');
......@@ -17,11 +17,10 @@
"glob": "^7.1.6",
"i18next-scanner": "^2.10.2",
"karma": "^5.1.0",
"karma-chai": "^0.1.0",
"karma-chrome-launcher": "^3.0.0",
"karma-firefox-launcher": "^1.3.0",
"karma-mocha": "^2.0.1",
"mocha": "^8.0.1",
"puppeteer": "^5.3.1",
"rollup": "^2.19.0",
"rollup-plugin-consts": "^1.0.1",
"rollup-plugin-copy": "^3.1.0",
......
......@@ -6,7 +6,7 @@ import '../src/dbp-auth-demo';
suite('dbp-auth basics', () => {
let node;
suiteSetup(async () => {
setup(async () => {
node = document.createElement('dbp-auth-keycloak');
node.setAttribute('url', 'someurl');
node.setAttribute('realm', 'somerealm');
......@@ -15,7 +15,7 @@ suite('dbp-auth basics', () => {
await node.updateComplete;
});
suiteTeardown(() => {
teardown(() => {
node.remove();
});
......@@ -27,13 +27,13 @@ suite('dbp-auth basics', () => {
suite('dbp-login-button', () => {
let node;
suiteSetup(async () => {
setup(async () => {
node = document.createElement('dbp-login-button');
document.body.appendChild(node);
await node.updateComplete;
});
suiteTeardown(() => {
teardown(() => {
node.remove();
});
......@@ -45,13 +45,13 @@ suite('dbp-login-button', () => {
suite('dbp-auth-demo basics', () => {
let node;
suiteSetup(async () => {
setup(async () => {
node = document.createElement('dbp-auth-demo');
document.body.appendChild(node);
await node.updateComplete;
});
suiteTeardown(() => {
teardown(() => {
node.remove();
});
......
// Trick to use the auto-downloaded puppeteer chrome binary
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
});
}
module.exports = require('../../karma.common.conf.js');
......@@ -13,11 +13,10 @@
"chai": "^4.2.0",
"i18next-scanner": "^2.10.2",
"karma": "^5.1.0",
"karma-chai": "^0.1.0",
"karma-chrome-launcher": "^3.0.0",
"karma-firefox-launcher": "^1.3.0",
"karma-mocha": "^2.0.1",
"mocha": "^8.0.1",
"puppeteer": "^5.3.1",
"rollup": "^2.19.0",
"rollup-plugin-consts": "^1.0.1",
"rollup-plugin-copy": "^3.1.0",
......
......@@ -24,6 +24,10 @@ export default (async () => {
sourcemap: true
},
onwarn: function (warning, warn) {
// ignore chai warnings
if (warning.code === 'CIRCULAR_DEPENDENCY') {
return;
}
warn(warning);
},
plugins: [
......
import {assert} from 'chai';
import '../src/dbp-check-in-place-select.js';
import '../src/demo.js';
describe('dbp-check-in-place-select basics', () => {
suite('dbp-check-in-place-select basics', () => {
let node;
beforeEach(async () => {
setup(async () => {
node = document.createElement('dbp-check-in-place-select');
document.body.appendChild(node);
await node.updateComplete;
});
afterEach(() => {
teardown(() => {
node.remove();
});
it('should render', () => {
expect(node).to.have.property('shadowRoot');
test('should render', () => {
assert.isNotNull(node.shadowRoot);
});
});
describe('dbp-check-in-place-select-demo basics', () => {
suite('dbp-check-in-place-select-demo basics', () => {
let node;
beforeEach(async () => {
setup(async () => {
node = document.createElement('dbp-check-in-place-select-demo');
document.body.appendChild(node);
await node.updateComplete;
});
afterEach(() => {
teardown(() => {
node.remove();
});
it('should render', () => {
expect(node).to.have.property('shadowRoot');
test('should render', () => {
assert.isNotNull(node.shadowRoot);
});
});
// Trick to use the auto-downloaded puppeteer chrome binary
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
});
}
module.exports = require('../../karma.common.conf.js');
......@@ -17,7 +17,6 @@
"karma-firefox-launcher": "^1.3.0",
"karma-mocha": "^2.0.1",
"mocha": "^8.0.1",
"puppeteer": "^5.3.1",
"rollup": "^2.19.0",
"rollup-plugin-consts": "^1.0.1",
"rollup-plugin-copy": "^3.1.0",
......
// Trick to use the auto-downloaded puppeteer chrome binary
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
});
}
module.exports = require('../../karma.common.conf.js');
......@@ -16,7 +16,6 @@
"karma-chrome-launcher": "^3.0.0",
"karma-mocha": "^2.0.1",
"mocha": "^8.0.1",
"puppeteer": "^5.3.1",
"rollup": "^2.19.0",
"rollup-plugin-consts": "^1.0.1",
"rollup-plugin-copy": "^3.1.0",
......
......@@ -6,13 +6,13 @@ import '../src/dbp-data-table-view-demo';
suite('dbp-data-table-view basics', () => {
let node;
suiteSetup(async () => {
setup(async () => {
node = document.createElement('dbp-data-table-view');
document.body.appendChild(node);
await node.updateComplete;
});
suiteTeardown(() => {
teardown(() => {
node.remove();
});
......@@ -24,13 +24,13 @@ suite('dbp-data-table-view basics', () => {
suite('dbp-data-table-view-demo basics', () => {
let node;
suiteSetup(async () => {
setup(async () => {
node = document.createElement('dbp-data-table-view-demo');
document.body.appendChild(node);
await node.updateComplete;
});
suiteTeardown(() => {
teardown(() => {
node.remove();
});
......
// Trick to use the auto-downloaded puppeteer chrome binary
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
});
}
module.exports = require('../../karma.common.conf.js');
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment