mirror of
https://github.com/react/react-native-devtools-frontend.git
synced 2026-10-07 04:26:32 +08:00
Test resources should act as minimal repro cases: they should be as small and simple as possible, without any unnecessary code that distracts from what’s important. This patch applies that thinking to the existing test resources, with only a few exceptions for 1) descriptive <title>s and 2) the mandatory license headers. This came up during review of [1]. [1]: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2107525 Change-Id: I1081bb06129d2b6ce98daf1349d20b2bf2fd9401 Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2116445 Reviewed-by: Changhao Han <changhaohan@chromium.org> Commit-Queue: Mathias Bynens <mathias@chromium.org>
68 lines
2.0 KiB
HTML
68 lines
2.0 KiB
HTML
<!--
|
|
Copyright 2020 The Chromium Authors. All rights reserved.
|
|
Use of this source code is governed by a BSD-style license that can be
|
|
found in the LICENSE file.
|
|
-->
|
|
<div id="first-child" class="c1 c2 c3"></div>
|
|
<div id="p"></div>
|
|
<form>
|
|
<select name="sel">
|
|
<option value="1">one</option>
|
|
<option value="2">two</option>
|
|
</select>
|
|
<input type="radio" name="input" value="input1"> input1
|
|
<input type="radio" name="input" value="input2"> input2
|
|
</form>
|
|
<script type="module">
|
|
const node = document.getElementById('p');
|
|
console.log(node);
|
|
|
|
const valuelessAttribute = document.createAttribute('attr');
|
|
console.log(valuelessAttribute);
|
|
|
|
const valuedAttribute = document.createAttribute('attr');
|
|
valuedAttribute.value = 'value';
|
|
console.log(valuelessAttribute);
|
|
|
|
const existingAttribute = document.getElementById('first-child').attributes[0];
|
|
console.log(existingAttribute);
|
|
|
|
const textNode = document.getElementById('first-child').nextSibling;
|
|
console.log(textNode);
|
|
|
|
const nodelist = document.getElementsByTagName('select');
|
|
console.log(nodelist);
|
|
|
|
const htmlcollection = document.head.children;
|
|
console.log(htmlcollection);
|
|
|
|
const htmlOptionsCollection = document.getElementsByTagName('select')[0].options;
|
|
console.log(htmlOptionsCollection);
|
|
|
|
const htmlAllCollection = document.all;
|
|
console.log(htmlAllCollection);
|
|
|
|
const htmlFormControlsCollection = document.getElementsByTagName('form')[0].elements;
|
|
console.log(htmlFormControlsCollection);
|
|
|
|
const radioNodeList = document.getElementsByTagName('form')[0].input;
|
|
console.log(radioNodeList);
|
|
|
|
const domTokenList = document.getElementsByTagName('div')[0];
|
|
console.log(domTokenList.classList);
|
|
|
|
function domException() {
|
|
let result = 'FAIL';
|
|
try {
|
|
const a = document.createElement('div');
|
|
const b = document.createElement('div');
|
|
a.removeChild(b);
|
|
} catch (error) {
|
|
error.stack = '';
|
|
result = error;
|
|
}
|
|
return result;
|
|
}
|
|
console.log(domException());
|
|
</script>
|