Move sinon to karma framework

This frees us from manual imports, and makes things less magical
as those aren't ES modules even if the code suggest that the are.
This commit is contained in:
Pierre Ossman 2018-07-13 13:12:04 +02:00
parent 885363a373
commit ae2e1ff7bd
12 changed files with 6 additions and 14066 deletions

View File

@ -53,12 +53,10 @@ module.exports = (config) => {
// frameworks to use
// available frameworks: https://npmjs.org/browse/keyword/karma-adapter
frameworks: ['requirejs', 'mocha', 'chai'],
frameworks: ['requirejs', 'mocha', 'sinon-chai'],
// list of files / patterns to load in the browser (loaded in order)
files: [
{ pattern: 'vendor/sinon.js', included: false },
{ pattern: 'node_modules/sinon-chai/lib/sinon-chai.js', included: false },
{ pattern: 'app/localization.js', included: false },
{ pattern: 'app/webutil.js', included: false },
{ pattern: 'core/**/*.js', included: false },

View File

@ -47,17 +47,18 @@
"jsdom": "*",
"karma": "^1.3.0",
"karma-babel-preprocessor": "^6.0.1",
"karma-chai": "^0.1.0",
"karma-mocha": "^1.3.0",
"karma-mocha-reporter": "^2.2.0",
"karma-requirejs": "^1.1.0",
"karma-sauce-launcher": "^1.0.0",
"karma-sinon-chai": "^2.0.0",
"mocha": "^3.1.2",
"node-getopt": "*",
"po2json": "*",
"requirejs": "^2.3.2",
"rollup": "^0.41.4",
"rollup-plugin-node-resolve": "^2.0.0",
"sinon": "^4.0.0",
"sinon-chai": "^2.8.0"
},
"dependencies": {},

View File

@ -4,7 +4,8 @@
"mocha": true
},
"globals": {
"chai": true
"chai": false,
"sinon": false
},
"rules": {
"prefer-arrow-callback": 0

View File

@ -1,7 +1,3 @@
// Assertions that make it easier to use sinon
import sinonChai from '../node_modules/sinon-chai/lib/sinon-chai.js';
chai.use(sinonChai);
// noVNC specific assertions
chai.use(function (_chai, utils) {
_chai.Assertion.addMethod('displayed', function (target_data) {

View File

@ -3,8 +3,6 @@ const expect = chai.expect;
import Base64 from '../core/base64.js';
import Display from '../core/display.js';
import sinon from '../vendor/sinon.js';
describe('Display/Canvas Helper', function () {
const checked_data = new Uint8Array([
0x00, 0x00, 0xff, 255, 0x00, 0x00, 0xff, 255, 0x00, 0xff, 0x00, 255, 0x00, 0xff, 0x00, 255,

View File

@ -1,7 +1,5 @@
const expect = chai.expect;
import sinon from '../vendor/sinon.js';
import Keyboard from '../core/input/keyboard.js';
import * as browser from '../core/util/browser.js';

View File

@ -1,7 +1,5 @@
const expect = chai.expect;
import sinon from '../vendor/sinon.js';
import Mouse from '../core/input/mouse.js';
import * as eventUtils from '../core/util/events.js';

View File

@ -5,7 +5,6 @@ import Websock from '../core/websock.js';
import { encodings } from '../core/encodings.js';
import FakeWebSocket from './fake.websocket.js';
import sinon from '../vendor/sinon.js';
/* UIEvent constructor polyfill for IE */
(() => {

View File

@ -3,8 +3,6 @@ const expect = chai.expect;
import * as Log from '../core/util/logging.js';
import sinon from '../vendor/sinon.js';
describe('Utils', function() {
"use strict";

View File

@ -3,8 +3,6 @@ const expect = chai.expect;
import Websock from '../core/websock.js';
import FakeWebSocket from './fake.websocket.js';
import sinon from '../vendor/sinon.js';
describe('Websock', function() {
"use strict";

View File

@ -4,8 +4,6 @@ const expect = chai.expect;
import * as WebUtil from '../app/webutil.js';
import sinon from '../vendor/sinon.js';
describe('WebUtil', function() {
"use strict";

14043
vendor/sinon.js vendored

File diff suppressed because one or more lines are too long