UNPKG

phoezz-report

Version:

This package must be used with Phoezz package to generate report files"

39 lines (31 loc) 1.44 kB
var fs = require('fs'); var ju_testsuite = function(file, tests, config) { var testsuite = ''; var e = 0; // Error count tests.forEach(function(t) { testsuite += '<testcase name="<![CDATA['+t.method+' '+t.target+' ['+t.fuzz+']]]" time="0.01" classname="' + t.file + '">'; if (t.response.statusCode != t.request.expected) { testsuite += '<error message="Error ' + t.response.statusCode + '"><![CDATA[' + JSON.stringify(t) + ']]></error>'; e++; } testsuite += '</testcase>'; }); testsuite = '<testsuite name="' + file + '" tests="' + tests.length + '" failures="0" disabled="0" errors="' + e + '" time="0.1">' + testsuite; testsuite += '</testsuite>'; return {total: tests.length, e: e, testsuite: testsuite}; } function ju_generate(testsuites, errors, total, config) { var content = ''; content += '<?xml version="1.0" encoding="UTF-8"?>'; content += '<testsuites tests="' + total + '" failures="0" disabled="0" errors="' + errors + '" timestamp="' + new Date() + '" time="1" name="report">'; content += testsuites; content += '</testsuites>'; fs.writeFile(config.report_path + config.report_filename, content, { flags: 'wx+' }, function(err) { if (err) throw err; console.log('Report file generated'); }); } module.exports.ju_testsuite = ju_testsuite; module.exports.ju_generate = ju_generate;