accessibility tests for dashboard panel ( OSS) (#62055) (#62244)

* accessibility tests for dashboard panel

* added back the skipped test as it is still required to pass through the a11ySnapshot

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
This commit is contained in:
Rashmi Kulkarni 2020-04-01 17:02:40 -07:00 committed by GitHub
parent a1d9773741
commit 929bcaf916
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 80 additions and 0 deletions

View file

@ -0,0 +1,79 @@
/*
* Licensed to Elasticsearch B.V. under one or more contributor
* license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright
* ownership. Elasticsearch B.V. licenses this file to you under
* the Apache License, Version 2.0 (the "License"); you may
* not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
import { FtrProviderContext } from '../ftr_provider_context';
export default function({ getService, getPageObjects }: FtrProviderContext) {
const PageObjects = getPageObjects(['common', 'dashboard', 'header', 'home', 'settings']);
const a11y = getService('a11y');
const dashboardPanelActions = getService('dashboardPanelActions');
const testSubjects = getService('testSubjects');
const inspector = getService('inspector');
describe('Dashboard Panel', () => {
before(async () => {
await PageObjects.common.navigateToUrl('home', 'tutorial_directory/sampleData');
await PageObjects.home.addSampleDataSet('flights');
await PageObjects.common.navigateToApp('dashboard');
await testSubjects.click('dashboardListingTitleLink-[Flights]-Global-Flight-Dashboard');
});
it('dashboard panel open ', async () => {
const header = await dashboardPanelActions.getPanelHeading('[Flights] Airline Carrier');
await dashboardPanelActions.toggleContextMenu(header);
await a11y.testAppSnapshot();
// doing this again will close the Context Menu, so that next snapshot can start clean.
await dashboardPanelActions.toggleContextMenu(header);
});
it('dashboard panel inspect', async () => {
await dashboardPanelActions.openInspectorByTitle('[Flights] Airline Carrier');
await a11y.testAppSnapshot();
});
it('dashboard panel inspector view chooser ', async () => {
await testSubjects.click('inspectorViewChooser');
await a11y.testAppSnapshot();
await testSubjects.click('inspectorViewChooser');
});
it('dashboard panel inspector request statistics ', async () => {
await inspector.openInspectorRequestsView();
await a11y.testAppSnapshot();
});
it('dashboard panel inspector request', async () => {
await testSubjects.click('inspectorRequestDetailRequest');
await a11y.testAppSnapshot();
});
it('dashboard panel inspector response', async () => {
await testSubjects.click('inspectorRequestDetailResponse');
await a11y.testAppSnapshot();
await inspector.close();
});
it('dashboard panel full screen', async () => {
const header = await dashboardPanelActions.getPanelHeading('[Flights] Airline Carrier');
await dashboardPanelActions.toggleContextMenu(header);
await testSubjects.click('embeddablePanelAction-togglePanel');
await a11y.testAppSnapshot();
});
});
}

View file

@ -30,6 +30,7 @@ export default async function({ readConfigFile }: FtrConfigProviderContext) {
testFiles: [
require.resolve('./apps/discover'),
require.resolve('./apps/dashboard'),
require.resolve('./apps/dashboard_panel'),
require.resolve('./apps/visualize'),
require.resolve('./apps/management'),
require.resolve('./apps/console'),