Skip to content

Commit 6ebee69

Browse files
Merge pull request #3 from oracle/webui-test-cleanup
cleaning up unit tests and enabling eslint on them
2 parents ab46137 + eb9e97d commit 6ebee69

14 files changed

+118
-167
lines changed

webui/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"test": "mocha --reporter spec src/test/*-test.js",
77
"start": "ojet serve web --server-only",
88
"build:release": "ojet build web --release",
9-
"eslint": "npx eslint src/js/*.js src/js/models/*.js src/js/utils/*.js src/js/viewModels/*.js",
9+
"eslint": "npx eslint src/js/*.js src/js/models/*.js src/js/utils/*.js src/js/viewModels/*.js src/test/*.js",
1010
"jet-audit": "ojaf"
1111
},
1212
"dependencies": {

webui/src/test/common-utilities-test.js

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,9 @@
66
* @ignore
77
*/
88
'use strict';
9+
910
const expect = require('chai').expect;
10-
const {after, before, describe, it} = require("mocha");
11+
const { after, before, describe, it } = require('mocha');
1112
const requirejs = require('requirejs');
1213
const testHelper = require('./test-helper');
1314

@@ -30,53 +31,52 @@ describe('general utilities', function () {
3031
describe('equality', function() {
3132
it('returns false when comparing different types', function () {
3233
expect(utils.equals(null, undefined)).to.equal(false);
33-
expect(utils.equals(1, "a string")).to.equal(false);
34-
expect(utils.equals([1, 2, 3], {one: "value"})).to.equal(false);
35-
})
34+
expect(utils.equals(1, 'a string')).to.equal(false);
35+
expect(utils.equals([1, 2, 3], {one: 'value'})).to.equal(false);
36+
});
3637

3738
it('returns true when comparing equal scalars', function () {
3839
expect(utils.equals(undefined, undefined)).to.equal(true);
3940
expect(utils.equals(1, 8 - 7)).to.equal(true);
4041
expect(utils.equals(true, true)).to.equal(true);
41-
})
42+
});
4243

4344
it('returns false when comparing unequal scalars', function () {
4445
expect(utils.equals(true, false)).to.equal(false);
45-
expect(utils.equals("abcd", "xyz")).to.equal(false);
46+
expect(utils.equals('abcd', 'xyz')).to.equal(false);
4647
expect(utils.equals(1, 5)).to.equal(false);
47-
})
48+
});
4849

4950
it('returns false when comparing unequal objects', function () {
50-
expect(utils.equals({first: 1, second: "both"}, {first: 1, second: "neither"})).to.equal(false);
51-
expect(utils.equals({first: 1, second: "both"}, {second: "both", first: 1, third: null})).to.equal(false);
52-
expect(utils.equals({first: {nest: 1}, second: "both"}, {second: "both", first: [1]})).to.equal(false);
53-
})
51+
expect(utils.equals({first: 1, second: 'both'}, {first: 1, second: 'neither'})).to.equal(false);
52+
expect(utils.equals({first: 1, second: 'both'}, {second: 'both', first: 1, third: null})).to.equal(false);
53+
expect(utils.equals({first: {nest: 1}, second: 'both'}, {second: 'both', first: [1]})).to.equal(false);
54+
});
5455

5556
it('returns true when comparing equal objects', function () {
56-
expect(utils.equals({first: 1, second: "both"}, {first: 1, second: "both"})).to.equal(true);
57-
expect(utils.equals({first: 1, second: "both"}, {second: "both", first: 1})).to.equal(true);
58-
expect(utils.equals({first: {nest: 1}, second: "both"}, {second: "both", first: {nest: 1}})).to.equal(true);
59-
})
57+
expect(utils.equals({first: 1, second: 'both'}, {first: 1, second: 'both'})).to.equal(true);
58+
expect(utils.equals({first: 1, second: 'both'}, {second: 'both', first: 1})).to.equal(true);
59+
expect(utils.equals({first: {nest: 1}, second: 'both'}, {second: 'both', first: {nest: 1}})).to.equal(true);
60+
});
6061

6162
it('returns true when comparing unequal arrays', function () {
6263
expect(utils.equals([1, 2, 3], [3, 1, 2])).to.equal(false);
6364
expect(utils.equals([{age: 12, height: 50}], [{age: 12, height: 60}])).to.equal(false);
64-
})
65+
});
6566

6667
it('returns true when comparing equal arrays', function () {
6768
expect(utils.equals([1, 2, 3], [1, 2, 3])).to.equal(true);
6869
expect(utils.equals([{age: 12, height: 50}], [{age: 12, height: 50}])).to.equal(true);
69-
})
70-
71-
})
70+
});
71+
});
7272

7373
// Kubernetes uses a modified version of the DNS-1123 standard.
7474
describe('Kubernetes names', function() {
7575
it ('recognizes legal Kubernetes names', function() {
7676
expect(utils.isLegalK8sName('aa')).to.be.true;
7777
expect(utils.isLegalK8sName('aa-bb-cc')).to.be.true;
7878
expect(utils.isLegalK8sName('aa12-b3')).to.be.true;
79-
})
79+
});
8080

8181
it ('recognizes illegal Kubernetes names', function() {
8282
expect(utils.isLegalK8sName(7)).to.be.false;
@@ -86,13 +86,13 @@ describe('general utilities', function () {
8686
expect(utils.isLegalK8sName('-aa')).to.be.false;
8787
expect(utils.isLegalK8sName('aa-')).to.be.false;
8888
expect(utils.isLegalK8sName('aa-bb-cc-dd-ee-ff-gg-hh-ii-jj-kk-ll-mm-nn-oo-pp-qq-rr-ss-tt-uu-vv-ww-xx-yy-zz')).to.be.false;
89-
})
89+
});
9090

9191
it ('does not change legal Kubernetes names', function() {
9292
expect(utils.toLegalK8sName('aa')).to.equal('aa');
9393
expect(utils.toLegalK8sName('aa-bb-cc')).to.equal('aa-bb-cc');
9494
expect(utils.toLegalK8sName('aa12-b3')).to.equal('aa12-b3');
95-
})
95+
});
9696

9797
it ('converts illegal to legal names', function() {
9898
expect(utils.toLegalK8sName('AA')).to.equal('aa');
@@ -103,6 +103,6 @@ describe('general utilities', function () {
103103
expect(utils.toLegalK8sName('aa--')).to.equal('aa');
104104
expect(utils.toLegalK8sName('aa-bb-cc-dd-ee-ff-gg-hh-ii-jj-kk-ll-mm-nn-oo-pp-qq-rr-ss-tt-uu-vv-ww-xx-yy-zz'))
105105
.to.equal('aa-bb-cc-dd-ee-ff-gg-hh-ii-jj-kk-ll-mm-nn-oo-pp-qq-rr-ss-tt-uu-');
106-
})
107-
})
106+
});
107+
});
108108
});

webui/src/test/image-design-view-test.js

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,10 @@
66
* @ignore
77
*/
88
'use strict';
9-
const {AccUtilsStub, ArrayDataProviderStub} = require('./view-stubs')
9+
10+
const { AccUtilsStub, ArrayDataProviderStub } = require('./view-stubs');
1011
const expect = require('chai').expect;
11-
const {after, before, beforeEach, describe, it} = require("mocha");
12+
const { after, before, beforeEach, describe, it } = require('mocha');
1213
const requirejs = require('requirejs');
1314
const testHelper = require('./test-helper');
1415

@@ -37,20 +38,18 @@ describe('image-design-view', function () {
3738

3839
after(function() {
3940
testHelper.remove();
40-
})
41+
});
4142

4243
beforeEach(function () {
4344
viewModel = new ImageViewModel(i18next, project, accUtilsStub, ko, dialogHelper, ArrayDataProviderStub);
44-
})
45+
});
4546

4647
describe('when connected() is called', function () {
47-
4848
it('should announce that it was loaded', function () {
4949
viewModel.connected();
5050

5151
expect(accUtilsStub.announcement).to.equal('Image Design View page loaded.');
5252
expect(accUtilsStub.level).to.equal('assertive');
5353
});
54-
55-
})
54+
});
5655
});

webui/src/test/ingress-definition-test.js

Lines changed: 15 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -6,35 +6,20 @@
66
* @ignore
77
*/
88
'use strict';
9+
910
const chai = require('chai');
1011
const expect = chai.expect;
1112
const wkt_assertions = require('./wkt-assertions');
1213
chai.use(wkt_assertions);
1314

14-
const {after, before, beforeEach, describe, it} = require('mocha');
15-
15+
const { after, before, describe, it } = require('mocha');
1616
const requirejs = require('requirejs');
1717
const testHelper = require('./test-helper');
1818
const jsyaml = require('js-yaml');
1919

2020
describe('ingress-definition', function () {
21-
let IngressDefn;
22-
let ingress;
23-
let props;
24-
let settings;
25-
let wdtModel;
26-
let utils;
27-
let jsonQuery;
28-
let propertyNames;
29-
let ko;
3021
let ingressResource;
3122

32-
function getContents() {
33-
const json = {};
34-
ingress.writeTo(json);
35-
return json;
36-
}
37-
3823
const voyagerIngress = {'name': 'Route1', 'virtualHost' : 'domain1.org',
3924
'targetServiceNameSpace' : 'domain1-ns', 'targetService' : 'domain1-cluster-cluster-1', 'targetPort' : '8109',
4025
'path': '/myapp', 'ssl' : false };
@@ -45,15 +30,9 @@ describe('ingress-definition', function () {
4530

4631
before(function (done) {
4732
testHelper.install();
48-
requirejs(['models/ingress-definition', 'knockout', 'utils/observable-properties', 'utils/common-utilities', 'utils/ingress-resource-generator', 'json-query'],
49-
function (constructor, knockout, observableUtils, generalUtils, IngressResourceGenerator, jq) {
50-
IngressDefn = constructor;
51-
ko = knockout;
52-
props = observableUtils;
53-
utils = generalUtils;
33+
requirejs(['utils/ingress-resource-generator'],
34+
function (IngressResourceGenerator) {
5435
ingressResource = new IngressResourceGenerator();
55-
jsonQuery = jq;
56-
propertyNames = props.createArrayProperty();
5736
done();
5837
});
5938
});
@@ -62,26 +41,24 @@ describe('ingress-definition', function () {
6241
testHelper.remove();
6342
});
6443

65-
beforeEach(function () {
66-
ingress = new IngressDefn();
67-
});
68-
6944
describe('generate', function() {
70-
7145
it('generate voyager ingress', function () {
7246
const yaml = ingressResource.createVoyagerRoutesAsYaml(voyagerIngress);
7347
const json = jsyaml.load(yaml);
7448
expect(json['apiVersion']).to.equal('voyager.appscode.com/v1beta1');
7549
});
7650

77-
// it('generate nginx ingress', function () {
78-
// const yaml = ingress.createNginxRoutesAsYaml(genericIngress);
79-
// console.log(yaml);
80-
// //expect(json['apiVersion']).to.equal('voyager.appscode.com/v1beta1');
81-
// });
82-
});
83-
84-
51+
it('generate nginx ingress', function () {
52+
const yaml = ingressResource.createNginxRoutesAsYaml(genericIngress);
53+
const json = jsyaml.load(yaml);
54+
expect(json['apiVersion']).to.equal('networking.k8s.io/v1');
55+
});
8556

57+
it('generate traefik ingress', function () {
58+
const yaml = ingressResource.createTraefikRoutesAsYaml(genericIngress);
59+
const json = jsyaml.load(yaml);
60+
expect(json['apiVersion']).to.equal('networking.k8s.io/v1');
61+
});
62+
});
8663
});
8764

webui/src/test/model-page-test.js

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,29 +6,27 @@
66
* @ignore
77
*/
88
'use strict';
9-
const {AccUtilsStub, ArrayDataProviderStub} = require('./view-stubs')
9+
10+
const { AccUtilsStub, ArrayDataProviderStub } = require('./view-stubs');
1011
const expect = require('chai').expect;
11-
const {after, before, beforeEach, describe, it} = require("mocha");
12+
const { after, before, beforeEach, describe, it, xit } = require('mocha');
1213
const requirejs = require('requirejs');
1314
const testHelper = require('./test-helper');
1415

1516
describe('model-page', function () {
1617
const accUtilsStub = new AccUtilsStub();
1718

1819
let ModelPageImpl;
19-
let project;
2020
let ko;
2121
let i18next;
22-
2322
let viewModel;
2423

2524
before(function (done) {
2625
testHelper.install();
27-
requirejs(['viewModels/model-page-impl', 'knockout', 'models/wkt-project', 'utils/i18n'],
28-
function (viewModelConstructor, knockout, loadedProject, i18n) {
26+
requirejs(['viewModels/model-page-impl', 'knockout', 'utils/i18n'],
27+
function (viewModelConstructor, knockout, i18n) {
2928
ModelPageImpl = viewModelConstructor;
3029
ko = knockout;
31-
project = loadedProject;
3230
i18next = i18n;
3331
done();
3432
});
@@ -44,13 +42,14 @@ describe('model-page', function () {
4442
return {
4543
sync: function() {},
4644
go: function() {}
47-
}
45+
};
4846
}
4947
}
50-
}
48+
};
5149

5250
function ModuleRouterAdapterStub() {
5351
}
52+
5453
beforeEach(function () {
5554
viewModel = new ModelPageImpl(args, accUtilsStub, ko, i18next, ModuleRouterAdapterStub, ArrayDataProviderStub);
5655
});
@@ -68,11 +67,11 @@ describe('model-page', function () {
6867

6968
it('the initial selection is the code view', function () {
7069
expect(viewModel.selectedItem()).to.equal('model-code-view');
71-
})
70+
});
7271

7372
xit('offers view choices choices', function () {
7473
const navData = viewModel.dataProvider.data;
7574
expect(entry(navData, 'path', 'model-design-view')).to.have.property('label', 'page-design-view');
7675
expect(entry(navData, 'path', 'model-code-view')).to.have.property('label', 'page-code-view');
77-
})
76+
});
7877
});

0 commit comments

Comments
 (0)