/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
"use strict";
// Tests that properties can be selected and copied from the computed view.
const TEST_URI = `
Some header text
hi.
I am a test-case. This text exists
solely to provide some things to
highlight and count
style list-items in the box at right. If you are reading this,
you should go do something else instead. Maybe read a book. Or better
yet, write some test-cases for another bit of code.
some text
more text
even more text
`;
add_task(async function () {
await addTab("data:text/html;charset=utf-8," + encodeURIComponent(TEST_URI));
const { inspector, view } = await openComputedView();
await selectNode("span", inspector);
await testCopySome(view);
await testCopyAll(view);
});
async function testCopySome(view) {
const expectedPattern =
"font-family: helvetica, sans-serif;[\\r\\n]+" +
"font-size: 16px;[\\r\\n]+" +
"font-variant-caps: small-caps;[\\r\\n]*";
await copySomeTextAndCheckClipboard(
view,
{
start: { prop: 1, offset: 0 },
end: { prop: 3, offset: 2 },
},
expectedPattern
);
}
async function testCopyAll(view) {
const expectedPattern =
"color: rgb\\(255, 255, 0\\);[\\r\\n]+" +
"font-family: helvetica, sans-serif;[\\r\\n]+" +
"font-size: 16px;[\\r\\n]+" +
"font-variant-caps: small-caps;[\\r\\n]*";
await copyAllAndCheckClipboard(view, expectedPattern);
}