node/test/fixtures/wpt/resource-timing/buffer-full-set-to-current-buffer.html
legendecas 364c0e196c
perf_hooks: fix webperf idlharness
1. Enforce receiver checks on IDL interfaces.
2. Avoid prototype manipulation on constructing IDL interfaces with
   `ReflectConstruct`.
3. `defineReplaceableAttribute` should create IDL getter/setter.
4. Corrected `PerformanceResourceTiming` to inherit the public interface
   `PerformanceEntry` instead of the internal interface
   `InternalPerformanceResourceTiming`.
5. `detail` is not a specified attribute on `PerfomanceEntry`. Node.js
   specific extensions are moved to a subclass of `PerformanceEntry` as
   `PerformanceNodeEntry`.

PR-URL: https://github.com/nodejs/node/pull/44483
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Minwoo Jung <nodecorelab@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2022-10-04 00:55:58 +08:00

34 lines
1.5 KiB
HTML

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>This test validates that setResourceTimingBufferFull behaves appropriately when set to the current buffer level.</title>
<link rel="author" title="Google" href="http://www.google.com/" />
<link rel="help" href="https://www.w3.org/TR/resource-timing-2/#dom-performance-onresourcetimingbufferfull">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="resources/resource-loaders.js"></script>
<script src="resources/buffer-full-utilities.js"></script>
</head>
<body>
<script>
promise_test(async () => {
let result = '';
performance.addEventListener('resourcetimingbufferfull', () => {
result += 'Event Fired with ' +
performance.getEntriesByType('resource').length + ' entries.';
performance.clearResourceTimings();
});
result += 'Before adding entries. ';
await fillUpTheBufferWithTwoResources();
result += 'After adding entries. ';
load.script(scriptResources[2]);
await bufferFullFirePromise;
assert_equals(result, 'Before adding entries. After adding entries. Event Fired with 2 entries.');
const entries = performance.getEntriesByType('resource');
assert_equals(entries.length, 1,
'Number of entries in resource timing buffer is unexpected');
assert_true(entries[0].name.includes(scriptResources[2]),
'The entry must correspond to the last resource loaded.')
}, "Test that adding entries and firing the buffer full event happen in the right order.");
</script>