Skip to content

Commit

Permalink
[ML] e2e tests for stack management jobs lists.
Browse files Browse the repository at this point in the history
  • Loading branch information
walterra committed Aug 5, 2020
1 parent 40ef5aa commit feccdad
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ import { DataFrameAnalyticsList } from '../../../../data_frame_analytics/pages/a
import { AccessDeniedPage } from '../access_denied_page';

interface Tab {
'data-test-subj': string;
id: string;
name: string;
content: any;
Expand All @@ -41,6 +42,7 @@ interface Tab {
function getTabs(isMlEnabledInSpace: boolean): Tab[] {
return [
{
'data-test-subj': 'mlStackManagementJobsListAnomalyDetectionTab',
id: 'anomaly_detection_jobs',
name: i18n.translate('xpack.ml.management.jobsList.anomalyDetectionTab', {
defaultMessage: 'Anomaly detection',
Expand All @@ -53,6 +55,7 @@ function getTabs(isMlEnabledInSpace: boolean): Tab[] {
),
},
{
'data-test-subj': 'mlStackManagementJobsListAnalyticsTab',
id: 'analytics_jobs',
name: i18n.translate('xpack.ml.management.jobsList.analyticsTab', {
defaultMessage: 'Analytics',
Expand Down Expand Up @@ -135,7 +138,10 @@ export const JobsListPage: FC<{
<I18nContext>
<KibanaContextProvider services={{ ...coreStart }}>
<Router history={history}>
<EuiPageContent id="kibanaManagementMLSection">
<EuiPageContent
id="kibanaManagementMLSection"
data-test-subj="mlPageStackManagementJobsList"
>
<EuiTitle size="l">
<EuiFlexGroup alignItems="center" justifyContent="spaceBetween">
<EuiFlexItem grow={false}>
Expand Down
12 changes: 12 additions & 0 deletions x-pack/test/functional/apps/ml/pages.ts
Original file line number Diff line number Diff line change
Expand Up @@ -53,5 +53,17 @@ export default function ({ getService }: FtrProviderContext) {
await ml.dataVisualizer.assertDataVisualizerImportDataCardExists();
await ml.dataVisualizer.assertDataVisualizerIndexDataCardExists();
});

it('it should load the stack management with the ML menu item being present', async () => {
await ml.navigation.navigateToStackManagement();
});

it('it should load the jobs list page in stack management', async () => {
await ml.navigation.navigateToStackManagementJobsListPage();
});

it('it should load the analytics jobs list page in stack management', async () => {
await ml.navigation.navigateToStackManagementJobsListPageAnalyticsTab();
});
});
}
27 changes: 27 additions & 0 deletions x-pack/test/functional/services/ml/navigation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,13 @@ export function MachineLearningNavigationProvider({
});
},

async navigateToStackManagement() {
await retry.tryForTime(60 * 1000, async () => {
await PageObjects.common.navigateToApp('management');
await testSubjects.existOrFail('jobsListLink', { timeout: 2000 });
});
},

async assertTabsExist(tabTypeSubject: string, areaSubjects: string[]) {
await retry.tryForTime(10000, async () => {
const allTabs = await testSubjects.findAll(`~${tabTypeSubject}`, 3);
Expand Down Expand Up @@ -76,5 +83,25 @@ export function MachineLearningNavigationProvider({
async navigateToSettings() {
await this.navigateToArea('~mlMainTab & ~settings', 'mlPageSettings');
},

async navigateToStackManagementJobsListPage() {
// clicks the jobsListLink and loads the jobs list page
await testSubjects.click('jobsListLink');
await retry.tryForTime(60 * 1000, async () => {
// verify that the overall page is present
await testSubjects.existOrFail('mlPageStackManagementJobsList');
// verify that the default tab with the anomaly detection jobs list got loaded
await testSubjects.existOrFail('ml-jobs-list');
});
},

async navigateToStackManagementJobsListPageAnalyticsTab() {
// clicks the `Analytics` tab and loads the analytics list page
await testSubjects.click('mlStackManagementJobsListAnalyticsTab');
await retry.tryForTime(60 * 1000, async () => {
// verify that the empty prompt for analytics jobs list got loaded
await testSubjects.existOrFail('mlNoDataFrameAnalyticsFound');
});
},
};
}

0 comments on commit feccdad

Please sign in to comment.