First commit
This commit is contained in:
commit
c6e2478c40
13918 changed files with 2303184 additions and 0 deletions
44
sites/all/modules/civicrm/bower_components/qunit/addons/junitlogger/index.html
vendored
Normal file
44
sites/all/modules/civicrm/bower_components/qunit/addons/junitlogger/index.html
vendored
Normal file
|
@ -0,0 +1,44 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QUnit Test Suite - JUnit report</title>
|
||||
<link rel="stylesheet" href="../../qunit/qunit.css" type="text/css" media="screen">
|
||||
<script type="text/javascript" src="../../qunit/qunit.js"></script>
|
||||
<script type="text/javascript" src="junitlogger.js"></script>
|
||||
<script type="text/javascript">
|
||||
QUnit.jUnitReport = function(data) {
|
||||
console.log(data.xml);
|
||||
};
|
||||
|
||||
module('Module 1');
|
||||
|
||||
test("test 1", 2, function () {
|
||||
equal(1, 1, "Assert 1 = 1");
|
||||
equal(1, 2, "Assert fail 1 = 2");
|
||||
});
|
||||
|
||||
test("test 2", 3, function () {
|
||||
equal(1, 1, "Assert 1 = 1");
|
||||
equal(1, 2, "Assert fail 1 = 2");
|
||||
equal(1, 1, "Assert 1 = 1");
|
||||
});
|
||||
|
||||
module('Module 2');
|
||||
|
||||
test("test 3", 2, function () {
|
||||
equal(1, 1, "Assert 1 = 1");
|
||||
equal(1, 2, "Assert fail 1 = 2");
|
||||
});
|
||||
|
||||
test("test 4", 3, function () {
|
||||
equal(1, 1, "Assert 1 = 1");
|
||||
equal(1, 2, "Assert fail 1 = 2");
|
||||
equal(1, 3, "Assert fail 1 = 3");
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="qunit"></div>
|
||||
</body>
|
||||
</html>
|
268
sites/all/modules/civicrm/bower_components/qunit/addons/junitlogger/junitlogger.js
vendored
Normal file
268
sites/all/modules/civicrm/bower_components/qunit/addons/junitlogger/junitlogger.js
vendored
Normal file
|
@ -0,0 +1,268 @@
|
|||
(function() {
|
||||
var count = 0, suiteCount = 0, currentSuite, currentTest, suites = [], assertCount, start, results = {failed:0, passed:0, total:0, time:0};
|
||||
|
||||
QUnit.jUnitReport = function(data) {
|
||||
// Gets called when a report is generated
|
||||
};
|
||||
|
||||
QUnit.moduleStart(function(data) {
|
||||
currentSuite = {
|
||||
name: data.name,
|
||||
tests: [],
|
||||
failures: 0,
|
||||
time: 0,
|
||||
stdout : '',
|
||||
stderr : ''
|
||||
};
|
||||
|
||||
suites.push(currentSuite);
|
||||
});
|
||||
|
||||
QUnit.moduleDone(function(data) {
|
||||
});
|
||||
|
||||
QUnit.testStart(function(data) {
|
||||
if(!start){ start = new Date(); }
|
||||
|
||||
assertCount = 0;
|
||||
|
||||
currentTest = {
|
||||
name: data.name,
|
||||
failures: [],
|
||||
start: new Date()
|
||||
};
|
||||
|
||||
// Setup default suite if no module was specified
|
||||
if (!currentSuite) {
|
||||
currentSuite = {
|
||||
name: "default",
|
||||
tests: [],
|
||||
failures: 0,
|
||||
time: 0,
|
||||
stdout : '',
|
||||
stderr : ''
|
||||
};
|
||||
|
||||
suites.push(currentSuite);
|
||||
}
|
||||
|
||||
currentSuite.tests.push(currentTest);
|
||||
});
|
||||
|
||||
QUnit.testDone(function(data) {
|
||||
currentTest.failed = data.failed;
|
||||
currentTest.total = data.total;
|
||||
currentSuite.failures += data.failed;
|
||||
|
||||
results.failed += data.failed;
|
||||
results.passed += data.passed;
|
||||
results.total += data.total;
|
||||
});
|
||||
|
||||
QUnit.log(function(data) {
|
||||
assertCount++;
|
||||
|
||||
if (!data.result) {
|
||||
currentTest.failures.push(data.message);
|
||||
|
||||
// Add log message of failure to make it easier to find in jenkins UI
|
||||
currentSuite.stdout += '[' + currentSuite.name + ', ' + currentTest.name + ', ' + assertCount + '] ' + data.message + '\n';
|
||||
}
|
||||
});
|
||||
|
||||
QUnit.done(function(data) {
|
||||
function ISODateString(d) {
|
||||
function pad(n) {
|
||||
return n < 10 ? '0' + n : n;
|
||||
}
|
||||
|
||||
return d.getUTCFullYear() + '-' +
|
||||
pad(d.getUTCMonth() + 1)+'-' +
|
||||
pad(d.getUTCDate()) + 'T' +
|
||||
pad(d.getUTCHours()) + ':' +
|
||||
pad(d.getUTCMinutes()) + ':' +
|
||||
pad(d.getUTCSeconds()) + 'Z';
|
||||
}
|
||||
|
||||
// Generate XML report
|
||||
var i, ti, fi, test, suite,
|
||||
xmlWriter = new XmlWriter({
|
||||
linebreak_at : "testsuites,testsuite,testcase,failure,system-out,system-err"
|
||||
}),
|
||||
now = new Date();
|
||||
|
||||
xmlWriter.start('testsuites');
|
||||
|
||||
for (i = 0; i < suites.length; i++) {
|
||||
suite = suites[i];
|
||||
|
||||
// Calculate time
|
||||
for (ti = 0; ti < suite.tests.length; ti++) {
|
||||
test = suite.tests[ti];
|
||||
|
||||
test.time = (now.getTime() - test.start.getTime()) / 1000;
|
||||
suite.time += test.time;
|
||||
}
|
||||
|
||||
xmlWriter.start('testsuite', {
|
||||
id: "" + i,
|
||||
name: suite.name,
|
||||
errors: "0",
|
||||
failures: suite.failures,
|
||||
hostname: "localhost",
|
||||
tests: suite.tests.length,
|
||||
time: Math.round(suite.time * 1000) / 1000,
|
||||
timestamp: ISODateString(now)
|
||||
});
|
||||
|
||||
for (ti = 0; ti < suite.tests.length; ti++) {
|
||||
test = suite.tests[ti];
|
||||
|
||||
xmlWriter.start('testcase', {
|
||||
name: test.name,
|
||||
total: test.total,
|
||||
failed: test.failed,
|
||||
time: Math.round(test.time * 1000) / 1000
|
||||
});
|
||||
|
||||
for (fi = 0; fi < test.failures.length; fi++) {
|
||||
xmlWriter.start('failure', {type: "AssertionFailedError", message: test.failures[fi]}, true);
|
||||
}
|
||||
|
||||
xmlWriter.end('testcase');
|
||||
}
|
||||
|
||||
if (suite.stdout) {
|
||||
xmlWriter.start('system-out');
|
||||
xmlWriter.cdata('\n' + suite.stdout);
|
||||
xmlWriter.end('system-out');
|
||||
}
|
||||
|
||||
if (suite.stderr) {
|
||||
xmlWriter.start('system-err');
|
||||
xmlWriter.cdata('\n' + suite.stderr);
|
||||
xmlWriter.end('system-err');
|
||||
}
|
||||
|
||||
xmlWriter.end('testsuite');
|
||||
}
|
||||
|
||||
xmlWriter.end('testsuites');
|
||||
|
||||
results.time = new Date() - start;
|
||||
|
||||
QUnit.jUnitReport({
|
||||
results:results,
|
||||
xml: xmlWriter.getString()
|
||||
});
|
||||
});
|
||||
|
||||
function XmlWriter(settings) {
|
||||
function addLineBreak(name) {
|
||||
if (lineBreakAt[name] && data[data.length - 1] !== '\n') {
|
||||
data.push('\n');
|
||||
}
|
||||
}
|
||||
|
||||
function makeMap(items, delim, map) {
|
||||
var i;
|
||||
|
||||
items = items || [];
|
||||
|
||||
if (typeof(items) === "string") {
|
||||
items = items.split(',');
|
||||
}
|
||||
|
||||
map = map || {};
|
||||
|
||||
i = items.length;
|
||||
while (i--) {
|
||||
map[items[i]] = {};
|
||||
}
|
||||
|
||||
return map;
|
||||
}
|
||||
|
||||
function encode(text) {
|
||||
var baseEntities = {
|
||||
'"' : '"',
|
||||
"'" : ''',
|
||||
'<' : '<',
|
||||
'>' : '>',
|
||||
'&' : '&'
|
||||
};
|
||||
|
||||
return ('' + text).replace(/[<>&\"\']/g, function(chr) {
|
||||
return baseEntities[chr] || chr;
|
||||
});
|
||||
}
|
||||
|
||||
var data = [], stack = [], lineBreakAt;
|
||||
|
||||
settings = settings || {};
|
||||
lineBreakAt = makeMap(settings.linebreak_at || 'mytag');
|
||||
|
||||
this.start = function(name, attrs, empty) {
|
||||
if (!empty) {
|
||||
stack.push(name);
|
||||
}
|
||||
|
||||
data.push('<', name);
|
||||
|
||||
for (var aname in attrs) {
|
||||
data.push(" " + encode(aname), '="', encode(attrs[aname]), '"');
|
||||
}
|
||||
|
||||
data.push(empty ? ' />' : '>');
|
||||
addLineBreak(name);
|
||||
};
|
||||
|
||||
this.end = function(name) {
|
||||
stack.pop();
|
||||
addLineBreak(name);
|
||||
data.push('</', name, '>');
|
||||
addLineBreak(name);
|
||||
};
|
||||
|
||||
this.text = function(text) {
|
||||
data.push(encode(text));
|
||||
};
|
||||
|
||||
this.cdata = function(text) {
|
||||
data.push('<![CDATA[', text, ']]>');
|
||||
};
|
||||
|
||||
this.comment = function(text) {
|
||||
data.push('<!--', text, '-->');
|
||||
};
|
||||
|
||||
this.pi = function(name, text) {
|
||||
if (text) {
|
||||
data.push('<?', name, ' ', text, '?>\n');
|
||||
} else {
|
||||
data.push('<?', name, '?>\n');
|
||||
}
|
||||
};
|
||||
|
||||
this.doctype = function(text) {
|
||||
data.push('<!DOCTYPE', text, '>\n');
|
||||
};
|
||||
|
||||
this.getString = function() {
|
||||
for (var i = stack.length - 1; i >= 0; i--) {
|
||||
this.end(stack[i]);
|
||||
}
|
||||
|
||||
stack = [];
|
||||
|
||||
return data.join('').replace(/\n$/, '');
|
||||
};
|
||||
|
||||
this.reset = function() {
|
||||
data = [];
|
||||
stack = [];
|
||||
};
|
||||
|
||||
this.pi(settings.xmldecl || 'xml version="1.0" encoding="UTF-8"');
|
||||
}
|
||||
})();
|
Loading…
Add table
Add a link
Reference in a new issue