diff --git a/console/console-counting-label-conversion.any.js b/console/console-counting-label-conversion.any.js deleted file mode 100644 index bbc77f011b7bc7..00000000000000 --- a/console/console-counting-label-conversion.any.js +++ /dev/null @@ -1,55 +0,0 @@ -"use strict"; -// https://console.spec.whatwg.org/#count -// https://console.spec.whatwg.org/#countreset - -// TODO(domfarolino): make this a link to -// https://console.spec.whatwg/org/#counting pending -// the resolution of https://github.com/whatwg/console/issues/135 - -// TODO(domfarolino): DRY up the label conversion tests for count/countReset/time/timeEnd -// by probably making a helper function that passes in the console method to perform the -// conversion with so we're not duplicating everything - -test(() => { - let countLabelToStringCalled = false; - - console.count({ - toString() { - countLabelToStringCalled = true; - } - }); - - assert_true(countLabelToStringCalled, "toString() must be called on count()'s label when label is an object"); -}, "console.count()'s label gets converted to string via label.toString() when label is an object"); - -test(() => { - assert_throws({name: "Error"}, () => { - console.count({ - toString() { - throw new Error("conversion error"); - } - }); - }, "count() must re-throw any exceptions thrown by label.toString() conversion"); -}, "console.count() throws exceptions generated by erroneous label.toString() conversion"); - -test(() => { - let countLabelToStringCalled = false; - - console.countReset({ - toString() { - countLabelToStringCalled = true; - } - }); - - assert_true(countLabelToStringCalled, "toString() must be called on countReset()'s label when label is an object"); -}, "console.countReset()'s label gets converted to string via label.toString() when label is an object"); - -test(() => { - assert_throws({name: "Error"}, () => { - console.countReset({ - toString() { - throw new Error("conversion error"); - } - }); - }, "countReset() must re-throw any exceptions thrown by label.toString() conversion"); -}, "console.countReset() throws exceptions generated by erroneous label.toString() conversion"); diff --git a/console/console-label-conversion.any.js b/console/console-label-conversion.any.js new file mode 100644 index 00000000000000..1fb269d4061c61 --- /dev/null +++ b/console/console-label-conversion.any.js @@ -0,0 +1,29 @@ +"use strict"; +// https://console.spec.whatwg/org/#counting +// https://console.spec.whatwg/org/#timing + +const methods = ['count', 'countReset', 'time', 'timeLog', 'timeEnd']; + +for (const method of methods) { + test(() => { + let labelToStringCalled = false; + + console[method]({ + toString() { + labelToStringCalled = true; + } + }); + + assert_true(labelToStringCalled, `${method}() must call toString() on label when label is an object`); + }, `console.${method}()'s label gets converted to string via label.toString() when label is an object`); + + test(() => { + assert_throws({name: 'Error'}, () => { + console[method]({ + toString() { + throw new Error('conversion error'); + } + }); + }, `${method} must re-throw any exceptions thrown by label.toString() conversion`); + }, `console.${method}() throws exceptions generated by erroneous label.toString() conversion`); +} diff --git a/console/console-time-label-conversion.any.js b/console/console-time-label-conversion.any.js deleted file mode 100644 index 5004a7476c2d0b..00000000000000 --- a/console/console-time-label-conversion.any.js +++ /dev/null @@ -1,46 +0,0 @@ -"use strict"; -// https://console.spec.whatwg.org/#timing - -test(() => { - let timeLabelToStringCalled = false; - - console.time({ - toString() { - timeLabelToStringCalled = true; - } - }); - - assert_true(timeLabelToStringCalled, "toString() must be called on time()'s label when label is an object"); -}, "console.time()'s label gets converted to string via label.toString() when label is an object"); - -test(() => { - let timeEndLabelToStringCalled = false; - - console.timeEnd({ - toString() { - timeEndLabelToStringCalled = true; - } - }); - - assert_true(timeEndLabelToStringCalled, "toString() must be called on timeEnd()'s label when label is an object"); -}, "console.timeEnd()'s label gets converted to string via label.toString() when label is an object"); - -test(() => { - assert_throws({name: "Error"}, () => { - console.time({ - toString() { - throw new Error("conversion error"); - } - }); - }, "time() must re-throw any exceptions thrown by label.toString() conversion"); -}, "console.time() throws exceptions generated by erroneous label.toString() conversion"); - -test(() => { - assert_throws({name: "Error"}, () => { - console.timeEnd({ - toString() { - throw new Error("conversion error"); - } - }); - }, "timeEnd() must re-throw any exceptions thrown by label.toString() conversion"); -}, "console.timeEnd() throws exceptions generated by erroneous label.toString() conversion");