diff options
author | Simon Wülker <simon.wuelker@arcor.de> | 2024-09-09 18:48:49 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-09 16:48:49 +0000 |
commit | cc3c69b95364268610858f4a149d84c4cfee1a5f (patch) | |
tree | 28901322258aa2b6611839d3c464950d3b77f16e /components/script/dom/console.rs | |
parent | 8c0a566860cf0f43662dc9d6c3474ae194c1a9fc (diff) | |
download | servo-cc3c69b95364268610858f4a149d84c4cfee1a5f.tar.gz servo-cc3c69b95364268610858f4a149d84c4cfee1a5f.zip |
implement `console.timeLog` (#33377)
* Implement console.timeLog
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Adjust WPT expectations
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
---------
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
Diffstat (limited to 'components/script/dom/console.rs')
-rw-r--r-- | components/script/dom/console.rs | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/components/script/dom/console.rs b/components/script/dom/console.rs index 13bbe1005a2..6c6dedc9890 100644 --- a/components/script/dom/console.rs +++ b/components/script/dom/console.rs @@ -271,18 +271,29 @@ impl Console { }; } - // https://developer.mozilla.org/en-US/docs/Web/API/Console/time + // https://console.spec.whatwg.org/#time pub fn Time(global: &GlobalScope, label: DOMString) { if let Ok(()) = global.time(label.clone()) { - let message = DOMString::from(format!("{}: timer started", label)); + let message = DOMString::from(format!("{label}: timer started")); console_message(global, message, LogLevel::Log); } } - // https://developer.mozilla.org/en-US/docs/Web/API/Console/timeEnd + // https://console.spec.whatwg.org/#timelog + pub fn TimeLog(_cx: JSContext, global: &GlobalScope, label: DOMString, data: Vec<HandleValue>) { + if let Ok(delta) = global.time_log(&label) { + let message = DOMString::from(format!( + "{label}: {delta}ms {}", + stringify_handle_values(data) + )); + console_message(global, message, LogLevel::Log); + } + } + + // https://console.spec.whatwg.org/#timeend pub fn TimeEnd(global: &GlobalScope, label: DOMString) { if let Ok(delta) = global.time_end(&label) { - let message = DOMString::from(format!("{}: {}ms", label, delta)); + let message = DOMString::from(format!("{label}: {delta}ms")); console_message(global, message, LogLevel::Log); } } |