Files
react-native-devtools-frontend/test/e2e/elements/selection-after-delete_test.ts
T
Peter Marshall 467b0b1632 tests: Use mocha-extensions in e2e tests
The extensions have helpers like it.repeat() and async tracing which
make development and debugging easier. All the tests will import from
the extensions file now rather than mocha directly.

A follow-up CL will add lint checks for this.

Bug: 1101782
Change-Id: I7b1a540be1685375b06f1db5d0fda2f2879446c2
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2354104
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-08-17 07:37:56 +00:00

47 lines
1.9 KiB
TypeScript
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// 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.
import {click, getBrowserAndPages, goToResource, waitForElementWithTextContent} from '../../shared/helper.js';
import {describe, it} from '../../shared/mocha-extensions.js';
import {expandSelectedNodeRecursively, getContentOfSelectedNode, waitForContentOfSelectedElementsNode, waitForElementsStyleSection, waitForSelectedNodeChange} from '../helpers/elements-helpers.js';
describe('The Elements tab', async () => {
// Flaky test
it.skip('[crbug.com/1071851]: can delete elements in the tree', async () => {
const {frontend} = getBrowserAndPages();
await goToResource('elements/selection-after-delete.html');
// Wait for the file to be loaded and selectors to be shown
await waitForElementsStyleSection();
// Sanity check to make sure we have the correct node selected after opening a file
await waitForContentOfSelectedElementsNode('<body>\u200B');
await expandSelectedNodeRecursively();
// Wait for the expansion and select the final child in the tree.
const child = await waitForElementWithTextContent('child2');
await click(child);
const expected = [
'<div class=​"child3">\u200B</div>\u200B',
'<div class=​"child1">\u200B</div>\u200B',
'<div class=​"left">\u200B</div>\u200B',
'<div id=​"testTreeContainer">\u200B</div>\u200B',
'<body>\u200B</body>\u200B',
];
// Start deleting and ensure that the selected child is the one expected.
do {
const nextVal = expected.shift() || '';
const initialValue = await getContentOfSelectedNode();
await frontend.keyboard.press('Backspace');
await waitForSelectedNodeChange(initialValue);
await waitForContentOfSelectedElementsNode(nextVal);
} while (expected.length);
});
});