diff options
Diffstat (limited to 'test/data/html')
| -rw-r--r-- | test/data/html/test-document2.html | 19 | ||||
| -rw-r--r-- | test/data/html/test-document3-frame1.html | 44 | ||||
| -rw-r--r-- | test/data/html/test-document3-frame2.html | 62 | ||||
| -rw-r--r-- | test/data/html/test-document3.html | 26 | 
4 files changed, 150 insertions, 1 deletions
| diff --git a/test/data/html/test-document2.html b/test/data/html/test-document2.html index 3a22a5bf..b2046dfd 100644 --- a/test/data/html/test-document2.html +++ b/test/data/html/test-document2.html @@ -77,5 +77,22 @@ document.querySelector('#fullscreen-link1').addEventListener('click', () => togg          </script>      </div> +    <div class="test"> +        <div class="description"><iframe> element inside of an open shadow DOM.</div> +        <div id="shadow-iframe-container-open"></div> +        <template id="shadow-iframe-container-open-content-template"> +            <iframe src="test-document2-frame1.html" allowfullscreen="true" style="width: 100%; height: 200px; border: 1px solid #d8d8d8;"></iframe> +        </template> +        <script> +(() => { +    const shadowIframeContainer = document.querySelector('#shadow-iframe-container-open'); +    const shadow = shadowIframeContainer.attachShadow({mode: 'open'}); +    const template = document.querySelector('#shadow-iframe-container-open-content-template').content; +    const content = document.importNode(template, true); +    shadow.appendChild(content); +})(); +        </script> +    </div> +  </body> -</html>
\ No newline at end of file +</html> diff --git a/test/data/html/test-document3-frame1.html b/test/data/html/test-document3-frame1.html new file mode 100644 index 00000000..2ae906d2 --- /dev/null +++ b/test/data/html/test-document3-frame1.html @@ -0,0 +1,44 @@ +<!DOCTYPE html> +<html> +    <head> +        <meta charset="UTF-8"> +        <meta name="viewport" content="width=device-width,initial-scale=1" /> +        <title>Yomichan Manual Performance Tests</title> +        <link rel="stylesheet" href="test-stylesheet.css" /> +    </head> +<body><div class="content"> + +    <div class="description">Add elements</div> + +    <div> +        <a href="#" id="add-elements-1000">1000</a> +        <a href="#" id="add-elements-10000">10000</a> +        <a href="#" id="add-elements-100000">100000</a> +        <a href="#" id="add-elements-1000000">1000000</a> +        <script> +document.querySelector('#add-elements-1000').addEventListener('click',    () => addElements(1000), false); +document.querySelector('#add-elements-10000').addEventListener('click',   () => addElements(10000), false); +document.querySelector('#add-elements-100000').addEventListener('click',  () => addElements(100000), false); +document.querySelector('#add-elements-1000000').addEventListener('click', () => addElements(1000000), false); + +let counter = 0; + +function addElements(amount) { +    const container = document.querySelector('#container'); +    for (let i = 0; i < amount; i++) { +        const element = document.createElement('div'); +        element.textContent = 'ありがとう'; +        container.appendChild(element); +    } + +    counter += amount; +    document.querySelector('#counter').textContent = counter; +} +        </script> +    </div> + +    <div id="counter"></div> +    <div id="container"></div> + +</div></body> +</html> diff --git a/test/data/html/test-document3-frame2.html b/test/data/html/test-document3-frame2.html new file mode 100644 index 00000000..c486e04b --- /dev/null +++ b/test/data/html/test-document3-frame2.html @@ -0,0 +1,62 @@ +<!DOCTYPE html> +<html> +    <head> +        <meta charset="UTF-8"> +        <meta name="viewport" content="width=device-width,initial-scale=1" /> +        <title>Yomichan Manual Performance Tests</title> +        <link rel="stylesheet" href="test-stylesheet.css" /> +    </head> +<body><div class="content"> + +    <div class="description"><iframe> element inside of an open shadow DOM.</div> + +    <div id="shadow-iframe-container-open"></div> +    <template id="shadow-iframe-container-open-content-template"> +        <iframe src="test-document2-frame1.html" allowfullscreen="true" style="width: 100%; height: 50px; border: 1px solid #d8d8d8;"></iframe> +    </template> +    <script> +(() => { +    const shadowIframeContainer = document.querySelector('#shadow-iframe-container-open'); +    const shadow = shadowIframeContainer.attachShadow({mode: 'open'}); +    const template = document.querySelector('#shadow-iframe-container-open-content-template').content; +    const content = document.importNode(template, true); +    shadow.appendChild(content); +})(); +    </script> + +    <div class="description">Add elements</div> + +    <div> +        <a href="#" id="add-elements-1000">1000</a> +        <a href="#" id="add-elements-10000">10000</a> +        <a href="#" id="add-elements-100000">100000</a> +        <a href="#" id="add-elements-1000000">1000000</a> +    </div> + +    <div id="counter"></div> +    <div id="container"></div> +    <script> +(() => { +    document.querySelector('#add-elements-1000').addEventListener('click',    () => addElements(1000), false); +    document.querySelector('#add-elements-10000').addEventListener('click',   () => addElements(10000), false); +    document.querySelector('#add-elements-100000').addEventListener('click',  () => addElements(100000), false); +    document.querySelector('#add-elements-1000000').addEventListener('click', () => addElements(1000000), false); + +    let counter = 0; + +    function addElements(amount) { +        const container = document.querySelector('#container'); +        for (let i = 0; i < amount; i++) { +            const element = document.createElement('div'); +            element.textContent = 'ありがとう'; +            container.appendChild(element); +        } + +        counter += amount; +        document.querySelector('#counter').textContent = counter; +    } +})(); +    </script> + +</div></body> +</html> diff --git a/test/data/html/test-document3.html b/test/data/html/test-document3.html new file mode 100644 index 00000000..3e7d5236 --- /dev/null +++ b/test/data/html/test-document3.html @@ -0,0 +1,26 @@ +<!DOCTYPE html> +<html> +    <head> +        <meta charset="UTF-8"> +        <meta name="viewport" content="width=device-width,initial-scale=1" /> +        <title>Yomichan Manual Performance Tests</title> +        <link rel="icon" type="image/gif" href="data:image/gif;base64,R0lGODlhEAAQAKEBAAAAAP///////////yH5BAEKAAIALAAAAAAQABAAAAImFI6Zpt0B4YkS0TCpq07xbmEgcGVRUpLaI46ZG7ppalY0jDCwUAAAOw==" /> +        <link rel="stylesheet" href="test-stylesheet.css" /> +    </head> +<body> + +    <h1>Yomichan Manual Performance Tests</h1> +    <p class="description">Testing Yomichan performance with artificially demanding cases in a real browser</p> + +    <div class="test"> +        <div class="description"><iframe> element.</div> +        <iframe src="test-document3-frame1.html" allowfullscreen="true" style="width: 100%; height: 200px; border: 1px solid #d8d8d8;"></iframe> +    </div> + +    <div class="test"> +        <div class="description"><iframe> element containing an <iframe> element inside of an open shadow DOM.</div> +        <iframe src="test-document3-frame2.html" allowfullscreen="true" style="width: 100%; height: 200px; border: 1px solid #d8d8d8;"></iframe> +    </div> + +</body> +</html> |