
PASS console.count()'s label gets converted to string via label.toString() when label is an object
PASS console.count() throws exceptions generated by erroneous label.toString() conversion
PASS console.countReset()'s label gets converted to string via label.toString() when label is an object
PASS console.countReset() throws exceptions generated by erroneous label.toString() conversion
PASS console.time()'s label gets converted to string via label.toString() when label is an object
PASS console.time() throws exceptions generated by erroneous label.toString() conversion
PASS console.timeLog()'s label gets converted to string via label.toString() when label is an object
PASS console.timeLog() throws exceptions generated by erroneous label.toString() conversion
PASS console.timeEnd()'s label gets converted to string via label.toString() when label is an object
PASS console.timeEnd() throws exceptions generated by erroneous label.toString() conversion

