54 lines
1.7 KiB
HTML
54 lines
1.7 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<body>
|
|
<button id="start">Start</button>
|
|
<div id="editor" style="font-family: Arial" contenteditable>hello</div>
|
|
<script src="../../resources/js-test.js"></script>
|
|
<script>
|
|
|
|
jsTestIsAsync = true;
|
|
|
|
description(`This tests pasting a markup with -webkit-standard font family name. WebKit should not strip it away upon paste.<br>
|
|
To manually test, click on "start" first then trigger paste from menu or callout bar or press cmd+v`);
|
|
|
|
const markup = `<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
<meta http-equiv="Content-Style-Type" content="text/css">
|
|
<meta name="Generator" content="Cocoa HTML Writer">
|
|
</head>
|
|
<body>
|
|
<p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 17.0px '-webkit-standard'; color: #454545">Hello</p>
|
|
</body>
|
|
</html>`;
|
|
|
|
editor.focus();
|
|
start.addEventListener('click', () => {
|
|
editor.focus();
|
|
document.execCommand('selectAll');
|
|
document.execCommand('copy');
|
|
if (window.testRunner)
|
|
document.execCommand('paste');
|
|
});
|
|
editor.addEventListener('copy', (event) => {
|
|
event.clipboardData.setData('text/html', markup);
|
|
event.preventDefault();
|
|
});
|
|
editor.addEventListener('paste', (event) => {
|
|
shouldBe(`event.clipboardData.getData('text/html')`, `markup`);
|
|
document.execCommand('insertHTML', false, event.clipboardData.getData('text/html'));
|
|
shouldBeTrue(`editor.innerHTML.includes('-webkit-standard')`);
|
|
editor.innerHTML = '';
|
|
event.preventDefault();
|
|
start.style.display = 'none';
|
|
finishJSTest();
|
|
});
|
|
|
|
if (window.testRunner)
|
|
start.click();
|
|
|
|
</script>
|
|
</body>
|
|
</html>
|