web/test/jstests/utils.js
author Rémi Cardona <remi.cardona@logilab.fr>
Wed, 28 Jan 2015 11:51:16 +0100
changeset 10164 2094262d6553
parent 8879 982a49239420
permissions -rw-r--r--
[web/data] Fix userCallbackThenUpdateUI to completely replace old DOM elements Without the 'swap' parameter, userCallbackThenUpdateUI() would replace the _children_ of the component with a new version of the componenent, thus creating nested divs/spans/buttons/etc. Closes #4881299

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);
	}
    }
}