aboutsummaryrefslogtreecommitdiffhomepage
path: root/public/bower_components/bootstrap-datepicker/tests/assets/coverage.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/bower_components/bootstrap-datepicker/tests/assets/coverage.js')
-rw-r--r--public/bower_components/bootstrap-datepicker/tests/assets/coverage.js48
1 files changed, 48 insertions, 0 deletions
diff --git a/public/bower_components/bootstrap-datepicker/tests/assets/coverage.js b/public/bower_components/bootstrap-datepicker/tests/assets/coverage.js
new file mode 100644
index 0000000..2e5704b
--- /dev/null
+++ b/public/bower_components/bootstrap-datepicker/tests/assets/coverage.js
@@ -0,0 +1,48 @@
+(function(){
+ //we want this at global scope so outside callers can find it. In a more realistic implementation we
+ //should probably put it in a namespace.
+ window.getCoverageByLine = function(silent) {
+ var key = null;
+ var lines = null;
+ var source = null;
+ //look for code coverage data
+ if (typeof window._$jscoverage === 'object') {
+ for (key in _$jscoverage) {}
+ lines = _$jscoverage[key];
+ }
+
+ if (!lines && !silent) {
+ console.log('code coverage data is NOT available');
+ }
+
+ return { 'key': key, 'lines': lines };
+ };
+
+ QUnit.done = function(t) {
+ var cvgInfo = getCoverageByLine(true);
+ if (!!cvgInfo.key) {
+ var testableLines = 0;
+ var testedLines = 0;
+ var untestableLines = 0;
+ for (lineIdx in cvgInfo.lines) {
+ var cvg = cvgInfo.lines[lineIdx];
+ if (typeof cvg === 'number') {
+ testableLines += 1;
+ if (cvg > 0) {
+ testedLines += 1;
+ }
+ } else {
+ untestableLines += 1;
+ }
+ }
+ var coverage = '' + Math.floor(100 * testedLines / testableLines) + '%';
+
+ var result = document.getElementById('qunit-testresult');
+ if (result != null) {
+ result.innerHTML = result.innerHTML + ' ' + coverage + ' test coverage of ' + cvgInfo.key;
+ } else {
+ console.log('can\'t find test-result element to update');
+ }
+ }
+ };
+}()); \ No newline at end of file