Skip to content

Commit

Permalink
Improve test coverage (#242)
Browse files Browse the repository at this point in the history
This PR expands on the use of `jest --coverage` and the coveralls implementation to adds improved coverage for all components that need it.
  • Loading branch information
sebnitu committed Jul 12, 2020
1 parent 63f25d2 commit ebc5f9b
Show file tree
Hide file tree
Showing 31 changed files with 779 additions and 451 deletions.
10 changes: 5 additions & 5 deletions docs/_packages/drawer.md
Expand Up @@ -510,16 +510,16 @@ By default, the state of a drawer is saved to local storage and applied persiste
</tr>

<!-- Feature toggles -->
<tr>
<td data-mobile-label="Key"><code class="code text-nowrap">customEventPrefix</code></td>
<td data-mobile-label="Default"><code class="code color-secondary text-nowrap">'drawer:'</code></td>
<td data-mobile-label="Desc">Prefix to be used on custom events.</td>
</tr>
<tr>
<td data-mobile-label="Key"><code class="code text-nowrap">breakpoints</code></td>
<td data-mobile-label="Default"><code class="code color-secondary text-nowrap">core.breakpoints</code></td>
<td data-mobile-label="Desc">An object with key/value pairs defining a breakpoints set.</td>
</tr>
<tr>
<td data-mobile-label="Key"><code class="code text-nowrap">customEventPrefix</code></td>
<td data-mobile-label="Default"><code class="code color-secondary text-nowrap">'drawer:'</code></td>
<td data-mobile-label="Desc">Prefix to be used on custom events.</td>
</tr>
<tr>
<td data-mobile-label="Key"><code class="code text-nowrap">focus</code></td>
<td data-mobile-label="Default"><code class="code color-secondary text-nowrap">true</code></td>
Expand Down
106 changes: 48 additions & 58 deletions docs/dist/scripts.cjs.js
Expand Up @@ -197,8 +197,8 @@ var Drawer = function Drawer(options) {
stateClosing: 'is-closing',
stateClosed: 'is-closed',
classModal: 'drawer_modal',
customEventPrefix: 'drawer:',
breakpoints: breakpoints,
customEventPrefix: 'drawer:',
focus: true,
saveState: true,
saveKey: 'DrawerState'
Expand All @@ -208,7 +208,7 @@ var Drawer = function Drawer(options) {
api.state = {};

api.init = function () {
applyState();
setState();
breakpointInit();
document.addEventListener('click', run, false);
document.addEventListener('touchend', run, false);
Expand All @@ -232,46 +232,12 @@ var Drawer = function Drawer(options) {

api.open = function (drawerKey, callback) {
var drawer = document.querySelector("[data-".concat(api.settings.dataDrawer, "=\"").concat(drawerKey, "\"]"));

if (drawer) {
open(drawer, callback);
}
if (drawer) open(drawer, callback);
};

api.close = function (drawerKey, callback) {
var drawer = document.querySelector("[data-".concat(api.settings.dataDrawer, "=\"").concat(drawerKey, "\"]"));

if (drawer) {
close(drawer, callback);
}
};

api.breakpoint.init = function () {
breakpointInit();
};

api.breakpoint.destroy = function () {
breakpointDestroy();
};

api.breakpoint.check = function () {
breakpointCheck();
};

api.switchToModal = function (drawerKey) {
var drawer = document.querySelector("[data-".concat(api.settings.dataDrawer, "=\"").concat(drawerKey, "\"]"));

if (drawer) {
switchToModal(drawer);
}
};

api.switchToDefault = function (drawerKey) {
var drawer = document.querySelector("[data-".concat(api.settings.dataDrawer, "=\"").concat(drawerKey, "\"]"));

if (drawer) {
switchToDefault(drawer);
}
if (drawer) close(drawer, callback);
};

var run = function run(event) {
Expand Down Expand Up @@ -394,10 +360,10 @@ var Drawer = function Drawer(options) {
};

var saveState = function saveState() {
var target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
var target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;

if (api.settings.saveState) {
var drawers = !target ? document.querySelectorAll("[data-".concat(api.settings.dataDrawer, "]")) : target.forEach ? target : [target];
var drawers = target ? [target] : document.querySelectorAll("[data-".concat(api.settings.dataDrawer, "]"));
drawers.forEach(function (el) {
if (!hasClass(el, api.settings.classModal)) {
api.state[el.dataset[camelCase(api.settings.dataDrawer)]] = hasClass(el, api.settings.stateOpened) ? api.settings.stateOpened : api.settings.stateClosed;
Expand All @@ -407,7 +373,7 @@ var Drawer = function Drawer(options) {
}
};

var applyState = function applyState() {
var setState = function setState() {
if (api.settings.saveState) {
if (localStorage.getItem(api.settings.saveKey)) {
api.state = JSON.parse(localStorage.getItem(api.settings.saveKey));
Expand All @@ -432,24 +398,50 @@ var Drawer = function Drawer(options) {
}
};

api.breakpoint.init = function () {
breakpointInit();
};

api.breakpoint.destroy = function () {
breakpointDestroy();
};

api.breakpoint.check = function () {
var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
breakpointCheck(event);
};

api.switchToModal = function (drawerKey) {
var drawer = document.querySelector("[data-".concat(api.settings.dataDrawer, "=\"").concat(drawerKey, "\"]"));

if (drawer) {
switchToModal(drawer);
}
};

api.switchToDefault = function (drawerKey) {
var drawer = document.querySelector("[data-".concat(api.settings.dataDrawer, "=\"").concat(drawerKey, "\"]"));

if (drawer) {
switchToDefault(drawer);
}
};

var breakpointInit = function breakpointInit() {
api.mediaQueryLists = [];
var drawers = document.querySelectorAll("[data-".concat(api.settings.dataBreakpoint, "]"));

if (drawers) {
drawers.forEach(function (drawer) {
var id = drawer.dataset[camelCase(api.settings.dataDrawer)];
var key = drawer.dataset[camelCase(api.settings.dataBreakpoint)];
var bp = api.settings.breakpoints[key] ? api.settings.breakpoints[key] : key;
var mql = window.matchMedia('(min-width:' + bp + ')');
breakpointMatch(mql, drawer);
mql.addListener(breakpointCheck);
api.mediaQueryLists.push({
'mql': mql,
'drawer': id
});
drawers.forEach(function (drawer) {
var id = drawer.dataset[camelCase(api.settings.dataDrawer)];
var key = drawer.dataset[camelCase(api.settings.dataBreakpoint)];
var bp = api.settings.breakpoints[key] ? api.settings.breakpoints[key] : key;
var mql = window.matchMedia('(min-width:' + bp + ')');
breakpointMatch(mql, drawer);
mql.addListener(breakpointCheck);
api.mediaQueryLists.push({
'mql': mql,
'drawer': id
});
}
});
};

var breakpointDestroy = function breakpointDestroy() {
Expand All @@ -462,9 +454,7 @@ var Drawer = function Drawer(options) {
api.mediaQueryLists = null;
};

var breakpointCheck = function breakpointCheck() {
var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;

var breakpointCheck = function breakpointCheck(event) {
if (api.mediaQueryLists && api.mediaQueryLists.length) {
api.mediaQueryLists.forEach(function (item) {
var filter = event ? event.media == item.mql.media : true;
Expand Down
106 changes: 48 additions & 58 deletions docs/dist/scripts.js
Expand Up @@ -198,8 +198,8 @@
stateClosing: 'is-closing',
stateClosed: 'is-closed',
classModal: 'drawer_modal',
customEventPrefix: 'drawer:',
breakpoints: breakpoints,
customEventPrefix: 'drawer:',
focus: true,
saveState: true,
saveKey: 'DrawerState'
Expand All @@ -209,7 +209,7 @@
api.state = {};

api.init = function () {
applyState();
setState();
breakpointInit();
document.addEventListener('click', run, false);
document.addEventListener('touchend', run, false);
Expand All @@ -233,46 +233,12 @@

api.open = function (drawerKey, callback) {
var drawer = document.querySelector("[data-".concat(api.settings.dataDrawer, "=\"").concat(drawerKey, "\"]"));

if (drawer) {
open(drawer, callback);
}
if (drawer) open(drawer, callback);
};

api.close = function (drawerKey, callback) {
var drawer = document.querySelector("[data-".concat(api.settings.dataDrawer, "=\"").concat(drawerKey, "\"]"));

if (drawer) {
close(drawer, callback);
}
};

api.breakpoint.init = function () {
breakpointInit();
};

api.breakpoint.destroy = function () {
breakpointDestroy();
};

api.breakpoint.check = function () {
breakpointCheck();
};

api.switchToModal = function (drawerKey) {
var drawer = document.querySelector("[data-".concat(api.settings.dataDrawer, "=\"").concat(drawerKey, "\"]"));

if (drawer) {
switchToModal(drawer);
}
};

api.switchToDefault = function (drawerKey) {
var drawer = document.querySelector("[data-".concat(api.settings.dataDrawer, "=\"").concat(drawerKey, "\"]"));

if (drawer) {
switchToDefault(drawer);
}
if (drawer) close(drawer, callback);
};

var run = function run(event) {
Expand Down Expand Up @@ -395,10 +361,10 @@
};

var saveState = function saveState() {
var target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
var target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;

if (api.settings.saveState) {
var drawers = !target ? document.querySelectorAll("[data-".concat(api.settings.dataDrawer, "]")) : target.forEach ? target : [target];
var drawers = target ? [target] : document.querySelectorAll("[data-".concat(api.settings.dataDrawer, "]"));
drawers.forEach(function (el) {
if (!hasClass(el, api.settings.classModal)) {
api.state[el.dataset[camelCase(api.settings.dataDrawer)]] = hasClass(el, api.settings.stateOpened) ? api.settings.stateOpened : api.settings.stateClosed;
Expand All @@ -408,7 +374,7 @@
}
};

var applyState = function applyState() {
var setState = function setState() {
if (api.settings.saveState) {
if (localStorage.getItem(api.settings.saveKey)) {
api.state = JSON.parse(localStorage.getItem(api.settings.saveKey));
Expand All @@ -433,24 +399,50 @@
}
};

api.breakpoint.init = function () {
breakpointInit();
};

api.breakpoint.destroy = function () {
breakpointDestroy();
};

api.breakpoint.check = function () {
var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
breakpointCheck(event);
};

api.switchToModal = function (drawerKey) {
var drawer = document.querySelector("[data-".concat(api.settings.dataDrawer, "=\"").concat(drawerKey, "\"]"));

if (drawer) {
switchToModal(drawer);
}
};

api.switchToDefault = function (drawerKey) {
var drawer = document.querySelector("[data-".concat(api.settings.dataDrawer, "=\"").concat(drawerKey, "\"]"));

if (drawer) {
switchToDefault(drawer);
}
};

var breakpointInit = function breakpointInit() {
api.mediaQueryLists = [];
var drawers = document.querySelectorAll("[data-".concat(api.settings.dataBreakpoint, "]"));

if (drawers) {
drawers.forEach(function (drawer) {
var id = drawer.dataset[camelCase(api.settings.dataDrawer)];
var key = drawer.dataset[camelCase(api.settings.dataBreakpoint)];
var bp = api.settings.breakpoints[key] ? api.settings.breakpoints[key] : key;
var mql = window.matchMedia('(min-width:' + bp + ')');
breakpointMatch(mql, drawer);
mql.addListener(breakpointCheck);
api.mediaQueryLists.push({
'mql': mql,
'drawer': id
});
drawers.forEach(function (drawer) {
var id = drawer.dataset[camelCase(api.settings.dataDrawer)];
var key = drawer.dataset[camelCase(api.settings.dataBreakpoint)];
var bp = api.settings.breakpoints[key] ? api.settings.breakpoints[key] : key;
var mql = window.matchMedia('(min-width:' + bp + ')');
breakpointMatch(mql, drawer);
mql.addListener(breakpointCheck);
api.mediaQueryLists.push({
'mql': mql,
'drawer': id
});
}
});
};

var breakpointDestroy = function breakpointDestroy() {
Expand All @@ -463,9 +455,7 @@
api.mediaQueryLists = null;
};

var breakpointCheck = function breakpointCheck() {
var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;

var breakpointCheck = function breakpointCheck(event) {
if (api.mediaQueryLists && api.mediaQueryLists.length) {
api.mediaQueryLists.forEach(function (item) {
var filter = event ? event.media == item.mql.media : true;
Expand Down
2 changes: 1 addition & 1 deletion docs/dist/scripts.min.js

Large diffs are not rendered by default.

0 comments on commit ebc5f9b

Please sign in to comment.