bv-ui-core 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc +40 -0
- package/.travis.yml +5 -0
- package/CONTRIBUTING.md +98 -0
- package/LICENSE.md +13 -0
- package/OWNERS +2 -0
- package/README.md +63 -0
- package/catalog-info.yaml +30 -0
- package/karma.conf.js +130 -0
- package/lib/README.md +61 -0
- package/lib/api/.babelrc +3 -0
- package/lib/api/.eslintrc +9 -0
- package/lib/api/README.md +134 -0
- package/lib/api/index.js +15 -0
- package/lib/api/statistics.js +148 -0
- package/lib/application/README.md +96 -0
- package/lib/application/index.js +171 -0
- package/lib/body/README.md +13 -0
- package/lib/body/index.js +19 -0
- package/lib/bvFetch/README.md +101 -0
- package/lib/bvFetch/index.js +383 -0
- package/lib/checkHighContrast/README.md +26 -0
- package/lib/checkHighContrast/index.js +36 -0
- package/lib/cookie/README.md +29 -0
- package/lib/cookie/index.js +111 -0
- package/lib/cookieConsent/README.md +41 -0
- package/lib/cookieConsent/index.js +227 -0
- package/lib/cssLoadChecker/README.md +19 -0
- package/lib/cssLoadChecker/index.js +72 -0
- package/lib/date.now/README.md +11 -0
- package/lib/date.now/index.js +40 -0
- package/lib/domainPolice/README.md +66 -0
- package/lib/domainPolice/index.js +95 -0
- package/lib/evented/README.md +42 -0
- package/lib/evented/index.js +135 -0
- package/lib/getOriginalConstructor/README.md +16 -0
- package/lib/getOriginalConstructor/index.js +52 -0
- package/lib/global/README.md +10 -0
- package/lib/global/index.js +48 -0
- package/lib/ie/README.md +13 -0
- package/lib/ie/index.js +25 -0
- package/lib/loader/README.md +73 -0
- package/lib/loader/index.js +358 -0
- package/lib/logger/README.md +82 -0
- package/lib/logger/index.js +180 -0
- package/lib/messageFormat/README.md +10 -0
- package/lib/messageFormat/index.js +42 -0
- package/lib/namespacer/README.md +57 -0
- package/lib/namespacer/index.js +98 -0
- package/lib/performance/README.md +35 -0
- package/lib/performance/entries.js +5 -0
- package/lib/performance/getEntries.js +42 -0
- package/lib/performance/getEntriesByName.js +61 -0
- package/lib/performance/getEntriesByType.js +55 -0
- package/lib/performance/index.js +11 -0
- package/lib/performance/mark.js +97 -0
- package/lib/performance/measure.js +106 -0
- package/lib/performance/now.js +63 -0
- package/lib/pixelsDisplayed/README.md +19 -0
- package/lib/pixelsDisplayed/index.js +113 -0
- package/lib/polyfills/README.md +39 -0
- package/lib/polyfills/fetch/Headers.js +3 -0
- package/lib/polyfills/fetch/Request.js +3 -0
- package/lib/polyfills/fetch/Response.js +3 -0
- package/lib/polyfills/fetch/fetch.js +3 -0
- package/lib/polyfills/fetch/index.js +57 -0
- package/lib/polyfills/promise.js +265 -0
- package/lib/queryShadowDom/README.md +50 -0
- package/lib/queryShadowDom/index.js +93 -0
- package/lib/region/README.md +64 -0
- package/lib/region/europe/index.js +94 -0
- package/lib/region/europe/territories.js +40 -0
- package/lib/region/index.js +123 -0
- package/lib/staticAssetLoader/README.md +116 -0
- package/lib/staticAssetLoader/index.js +248 -0
- package/lib/waitForBody/README.md +21 -0
- package/lib/waitForBody/index.js +36 -0
- package/mkdocs.yaml +5 -0
- package/package.json +55 -0
- package/test/.eslintrc +5 -0
- package/test/fixtures/lib.loader.document-is-wrong-in-ie8.js +5 -0
- package/test/fixtures/lib.loader.loadscript-attribute.js +3 -0
- package/test/fixtures/lib.loader.loadscript.js +3 -0
- package/test/fixtures/lib.loader.loadstylesheet.css +3 -0
- package/test/unit/api/.eslintrc +6 -0
- package/test/unit/api/index.spec.js +37 -0
- package/test/unit/api/response.json +67 -0
- package/test/unit/api/statistics.spec.js +218 -0
- package/test/unit/application/index.spec.js +313 -0
- package/test/unit/body/index.spec.js +15 -0
- package/test/unit/bvFetch/index.spec.js +246 -0
- package/test/unit/checkHighContrast/index.spec.js +16 -0
- package/test/unit/cookie/index.spec.js +191 -0
- package/test/unit/cookieConsent/index.spec.js +119 -0
- package/test/unit/cssLoadChecker/index.spec.js +75 -0
- package/test/unit/date.now/index.spec.js +21 -0
- package/test/unit/domainPolice/index.spec.js +141 -0
- package/test/unit/evented/index.spec.js +59 -0
- package/test/unit/getOriginalConstructor/index.spec.js +60 -0
- package/test/unit/global/index.spec.js +84 -0
- package/test/unit/ie/index.spec.js +14 -0
- package/test/unit/loader/index.spec.js +644 -0
- package/test/unit/logger/index.spec.js +141 -0
- package/test/unit/messageFormat/index.spec.js +31 -0
- package/test/unit/mochaInit.js +8 -0
- package/test/unit/namespacer/index.spec.js +100 -0
- package/test/unit/performance/getEntries.spec.js +30 -0
- package/test/unit/performance/getEntriesByName.spec.js +88 -0
- package/test/unit/performance/getEntriesByType.spec.js +48 -0
- package/test/unit/performance/index.spec.js +35 -0
- package/test/unit/performance/mark.spec.js +40 -0
- package/test/unit/performance/measure.spec.js +50 -0
- package/test/unit/performance/now.spec.js +21 -0
- package/test/unit/pixelsDisplayed/index.spec.js +271 -0
- package/test/unit/polyfills/fetch/Headers.js +12 -0
- package/test/unit/polyfills/fetch/Request.js +12 -0
- package/test/unit/polyfills/fetch/Response.js +12 -0
- package/test/unit/polyfills/fetch/fetch.js +12 -0
- package/test/unit/polyfills/fetch/index.js +61 -0
- package/test/unit/polyfills/promise.spec.js +48 -0
- package/test/unit/region/europe/index.spec.js +70 -0
- package/test/unit/region/index.spec.js +113 -0
- package/test/unit/staticAssetLoader/index.spec.js +215 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileOverview
|
|
3
|
+
* Unit tests for the global module.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
// Includes.
|
|
7
|
+
var global = require('../../../lib/global');
|
|
8
|
+
|
|
9
|
+
// The module under test computes its result once at require-time, and
|
|
10
|
+
// webpack (like Node) caches a module's exports by request string. Re-requiring
|
|
11
|
+
// '../../../lib/global' after mutating window.__esModule would therefore just
|
|
12
|
+
// return the already-cached, unpolluted result instead of re-evaluating the
|
|
13
|
+
// module. Each test below requires the module via its own literal query
|
|
14
|
+
// string, which webpack treats as a distinct module instance, so the module
|
|
15
|
+
// body actually re-runs against the current (mutated) window state. The
|
|
16
|
+
// query string must be a static literal (not computed) for webpack to
|
|
17
|
+
// resolve it.
|
|
18
|
+
|
|
19
|
+
describe('lib/global', function () {
|
|
20
|
+
|
|
21
|
+
it('should export window', function () {
|
|
22
|
+
// If we have access to the window object, compare against it.
|
|
23
|
+
if (typeof window !== 'undefined') {
|
|
24
|
+
expect(global).to.eql(window);
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
it('should export window with default pointing to windows if __esModule is set', function () {
|
|
29
|
+
// If we have access to the window object, compare against it.
|
|
30
|
+
if (typeof window !== 'undefined') {
|
|
31
|
+
window.__esModule = true
|
|
32
|
+
var result = require('../../../lib/global?case=default-pointer');
|
|
33
|
+
expect(result.default).to.equal(window);
|
|
34
|
+
delete window.__esModule;
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
it('should wrap window in a Proxy when __esModule is set, even when globalObj is window', function () {
|
|
39
|
+
if (typeof window !== 'undefined') {
|
|
40
|
+
window.__esModule = true;
|
|
41
|
+
var result = require('../../../lib/global?case=proxy-wrap');
|
|
42
|
+
// The Proxy is needed so that native/branded methods (e.g.
|
|
43
|
+
// getComputedStyle) can be bound back to the real window before
|
|
44
|
+
// being returned, and so that `.default` interop lookups keep working.
|
|
45
|
+
// Note: we deliberately avoid a deep .eql(window) check here, since
|
|
46
|
+
// window contains circular references (e.g. window.window) that
|
|
47
|
+
// chai/karma's assertion reporting cannot serialize.
|
|
48
|
+
expect(result).to.not.equal(window);
|
|
49
|
+
expect(result.location).to.equal(window.location);
|
|
50
|
+
delete window.__esModule;
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
it('should bind functions read off the Proxy to the real window so native methods work', function () {
|
|
55
|
+
if (typeof window !== 'undefined') {
|
|
56
|
+
window.__esModule = true;
|
|
57
|
+
var result = require('../../../lib/global?case=bound-methods');
|
|
58
|
+
// Calling a native/branded method via the Proxy receiver would
|
|
59
|
+
// otherwise throw "TypeError: Illegal invocation".
|
|
60
|
+
expect(function () {
|
|
61
|
+
result.getComputedStyle(document.body);
|
|
62
|
+
}).to.not.throw();
|
|
63
|
+
delete window.__esModule;
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
it('should return the real target for the "default" property (esModule interop)', function () {
|
|
68
|
+
if (typeof window !== 'undefined') {
|
|
69
|
+
window.__esModule = true;
|
|
70
|
+
var result = require('../../../lib/global?case=default-interop');
|
|
71
|
+
expect(result.default).to.equal(window);
|
|
72
|
+
delete window.__esModule;
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
it('should return the global object directly when __esModule is not set', function () {
|
|
77
|
+
if (typeof window !== 'undefined') {
|
|
78
|
+
delete window.__esModule;
|
|
79
|
+
var result = require('../../../lib/global?case=no-pollution');
|
|
80
|
+
expect(result).to.equal(window);
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
|
|
84
|
+
});
|