mirror of
https://github.com/lightpanda-io/browser.git
synced 2026-03-22 04:34:44 +00:00
add tests for selectionchange in HTML Elements
This commit is contained in:
@@ -183,6 +183,49 @@
|
||||
}
|
||||
</script>
|
||||
|
||||
<script id="selectionchange_event">
|
||||
{
|
||||
const input = document.createElement('input');
|
||||
input.value = 'Hello World';
|
||||
document.body.appendChild(input);
|
||||
|
||||
let eventCount = 0;
|
||||
let lastEvent = null;
|
||||
|
||||
input.addEventListener('selectionchange', (e) => {
|
||||
eventCount++;
|
||||
lastEvent = e;
|
||||
});
|
||||
|
||||
testing.expectEqual(0, eventCount);
|
||||
|
||||
input.setSelectionRange(0, 5);
|
||||
testing.expectEqual(1, eventCount);
|
||||
testing.expectEqual('selectionchange', lastEvent.type);
|
||||
testing.expectEqual(input, lastEvent.target);
|
||||
testing.expectEqual(true, lastEvent.bubbles);
|
||||
testing.expectEqual(false, lastEvent.cancelable);
|
||||
|
||||
input.select();
|
||||
testing.expectEqual(2, eventCount);
|
||||
|
||||
input.selectionStart = 3;
|
||||
testing.expectEqual(3, eventCount);
|
||||
|
||||
input.selectionEnd = 8;
|
||||
testing.expectEqual(4, eventCount);
|
||||
|
||||
let bubbledToBody = false;
|
||||
document.body.addEventListener('selectionchange', () => {
|
||||
bubbledToBody = true;
|
||||
});
|
||||
|
||||
input.setSelectionRange(1, 4);
|
||||
testing.expectEqual(true, bubbledToBody);
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
<!-- <script id="defaultChecked">
|
||||
testing.expectEqual(true, $('#check1').defaultChecked)
|
||||
testing.expectEqual(false, $('#check2').defaultChecked)
|
||||
|
||||
@@ -229,3 +229,46 @@
|
||||
testing.expectEqual('some content', clone.value)
|
||||
}
|
||||
</script>
|
||||
|
||||
<script id="selectionchange_event">
|
||||
{
|
||||
const textarea = document.createElement('textarea');
|
||||
textarea.value = 'Hello World';
|
||||
document.body.appendChild(textarea);
|
||||
|
||||
let eventCount = 0;
|
||||
let lastEvent = null;
|
||||
|
||||
textarea.addEventListener('selectionchange', (e) => {
|
||||
eventCount++;
|
||||
lastEvent = e;
|
||||
});
|
||||
|
||||
testing.expectEqual(0, eventCount);
|
||||
|
||||
textarea.setSelectionRange(0, 5);
|
||||
testing.expectEqual(1, eventCount);
|
||||
testing.expectEqual('selectionchange', lastEvent.type);
|
||||
testing.expectEqual(textarea, lastEvent.target);
|
||||
testing.expectEqual(true, lastEvent.bubbles);
|
||||
testing.expectEqual(false, lastEvent.cancelable);
|
||||
|
||||
textarea.select();
|
||||
testing.expectEqual(2, eventCount);
|
||||
|
||||
textarea.selectionStart = 3;
|
||||
testing.expectEqual(3, eventCount);
|
||||
|
||||
textarea.selectionEnd = 8;
|
||||
testing.expectEqual(4, eventCount);
|
||||
|
||||
let bubbledToBody = false;
|
||||
document.body.addEventListener('selectionchange', () => {
|
||||
bubbledToBody = true;
|
||||
});
|
||||
|
||||
textarea.setSelectionRange(1, 4);
|
||||
testing.expectEqual(true, bubbledToBody);
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user