testfunc/test/jstests/utils.js
author Julien Cristau <julien.cristau@logilab.fr>
Thu, 21 Mar 2013 16:52:13 +0100
branchstable
changeset 8758 3a0d91237e2c
parent 7363 2293c49b290a
permissions -rw-r--r--
[devtools] fix a couple issues with xvfb-run xvfb-run didn't quite clean up correctly after itself, because: - dash doesn't run EXIT traps on signals - if we don't run the command in the background, a TERM handler doesn't run until the command exits

function datetuple(d) {
    return [d.getFullYear(), d.getMonth()+1, d.getDate(),
	    d.getHours(), d.getMinutes()];
}

function pprint(obj) {
    print('{');
    for(k in obj) {
	print('  ' + k + ' = ' + obj[k]);
    }
    print('}');
}

function arrayrepr(array) {
    return '[' + array.join(', ') + ']';
}

function assertArrayEquals(array1, array2) {
    if (array1.length != array2.length) {
	throw new crosscheck.AssertionFailure(array1.join(', ') + ' != ' + array2.join(', '));
    }
    for (var i=0; i<array1.length; i++) {
	if (array1[i] != array2[i]) {

	    throw new crosscheck.AssertionFailure(arrayrepr(array1) + ' and ' + arrayrepr(array2)
						 + ' differs at index ' + i);
	}
    }
}