Skip to content

Commit

Permalink
Update mds_tsvb.spec.js
Browse files Browse the repository at this point in the history
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
  • Loading branch information
yujin-emma committed Jun 6, 2024
1 parent 4ffa9ec commit 40736ea
Show file tree
Hide file tree
Showing 4 changed files with 89 additions and 55 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import {
TSVB_VIS_TYPE,
} from '../../../../../utils/dashboards/vis_type_tsvb/constants';

describe('TSVB Visualization', () => {
if (Cypress.env('DATASOURCE_MANAGEMENT_ENABLED')) {
before(() => {
CURRENT_TENANT.newTenant = 'global';
cy.fleshTenantSettings();
Expand All @@ -25,13 +25,20 @@ describe('TSVB Visualization', () => {

// Dashboards requires an index pattern to continue to the Create Visualization stage
cy.deleteIndexPattern(TSVB_INDEX_PATTERN);

cy.wait(1000);
cy.deleteSavedObjectByType(TSVB_VIS_TYPE, TSVB_INDEX_ID);

cy.createIndexPattern(TSVB_INDEX_PATTERN, {
title: TSVB_INDEX_ID,
title: TSVB_INDEX_PATTERN,
timeFieldName: 'timestamp',
});

cy.deleteSavedObjectByType(TSVB_VIS_TYPE, TSVB_INDEX_ID);
cy.deleteDataSourceIndexNoAuth(TSVB_INDEX_ID);
cy.deleteAllDataSources();

cy.createDataSourceNoAuth();
cy.bulkUploadDocsToDataSourceNoAuth(TSVB_PATH_INDEX_DATA);
// Visit the page
cy.log('create a new tsvb visualization: ', TSVB_CREATE_URL);
cy.visit(TSVB_CREATE_URL);
Expand All @@ -42,58 +49,31 @@ describe('TSVB Visualization', () => {
cy.waitForLoader();
});

if (Cypress.env('DATASOURCE_MANAGEMENT_ENABLED')) {
before(() => {
cy.deleteDataSourceIndexNoAuth(TSVB_INDEX_ID);
cy.createDataSourceNoAuth();
cy.bulkUploadDocsToDataSourceNoAuth(TSVB_PATH_INDEX_DATA);
});

describe('When MDS is enabled', () => {
[
{
dataSourceName: DS_NO_AUTH_LABEL,
canvasExists: 'exist',
},
].forEach(({ dataSourceName, canvasExists }) => {
it(`should query data from ${dataSourceName} and resulting visualization should ${canvasExists}`, () => {
cy.contains('button', 'Panel options').click();
cy.contains('label', 'Data source');
// Click on the dropdown to open it
cy.get('[data-test-subj="dataSourceSelectorComboBox"]').click();
after(() => {
cy.deleteIndex(TSVB_INDEX_ID);
cy.deleteIndexPattern(TSVB_INDEX_PATTERN);

// Find the option you want to select by its text and click on it
cy.contains('[role="option"]', dataSourceName).click();
cy.get('input[data-test-subj="metricsIndexPatternInput"]').type(
TSVB_INDEX_ID
);
cy.tsvbSaveVisualization();
cy.deleteDataSourceIndexNoAuth(TSVB_INDEX_ID);
cy.deleteAllDataSources();
});

cy.get('canvas').should(canvasExists);
});
});
});
} else {
describe('When MDS is disabled', () => {
it('should query from local cluster', () => {
describe('TSVB Visualization (MDS is enabled)', () => {
[
{
dataSourceName: DS_NO_AUTH_LABEL,
canvasExists: 'exist',
},
].forEach(({ dataSourceName, canvasExists }) => {
it(`should query data from ${dataSourceName} and resulting visualization should ${canvasExists}`, () => {
cy.contains('button', 'Panel options').click();
cy.get('input[data-test-subj="metricsIndexPatternInput"]').type(
TSVB_INDEX_ID
);
cy.contains('label', 'Data source');
// Click on the dropdown to open it
cy.get('[data-test-subj="dataSourceSelectorComboBox"]').click();
cy.contains('[role="option"]', dataSourceName).click();
// use the default index for query data
cy.tsvbSaveVisualization();
// Visualization should be drawn; correct visualizations do not have warning messages
cy.get('canvas').should('exist');
cy.get('canvas').should(canvasExists);
});
});
}

after(() => {
cy.deleteIndex(TSVB_INDEX_ID);
cy.deleteIndexPattern(TSVB_INDEX_PATTERN);

if (Cypress.env('DATASOURCE_MANAGEMENT_ENABLED')) {
cy.deleteDataSourceIndexNoAuth(TSVB_INDEX_ID);
cy.deleteAllDataSources();
}
});
});
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
/*
* Copyright OpenSearch Contributors
* SPDX-License-Identifier: Apache-2.0
*/

import { CURRENT_TENANT } from '../../../../../utils/commands';
import {
TSVB_INDEX_ID,
TSVB_PATH_INDEX_DATA,
TSVB_CREATE_URL,
VIS_APP_PATH,
TSVB_INDEX_START_TIME,
TSVB_INDEX_END_TIME,
TSVB_INDEX_PATTERN,
TSVB_VIS_TYPE,
} from '../../../../../utils/dashboards/vis_type_tsvb/constants';

if (!Cypress.env('DATASOURCE_MANAGEMENT_ENABLED')) {
before(() => {
CURRENT_TENANT.newTenant = 'global';
cy.fleshTenantSettings();
cy.deleteIndex(TSVB_INDEX_ID);
cy.bulkUploadDocs(TSVB_PATH_INDEX_DATA);

// Dashboards requires an index pattern to continue to the Create Visualization stage
cy.deleteIndexPattern(TSVB_INDEX_PATTERN);

cy.wait(1000);
cy.deleteSavedObjectByType(TSVB_VIS_TYPE, TSVB_INDEX_ID);

cy.createIndexPattern(TSVB_INDEX_PATTERN, {
title: TSVB_INDEX_PATTERN,
timeFieldName: 'timestamp',
});
// Visit the page
cy.log('create a new tsvb visualization: ', TSVB_CREATE_URL);
cy.visit(TSVB_CREATE_URL);
cy.url().should('contain', VIS_APP_PATH);
cy.setTopNavDate(TSVB_INDEX_START_TIME, TSVB_INDEX_END_TIME);

// Wait for page to load
cy.waitForLoader();
});

after(() => {
cy.deleteIndex(TSVB_INDEX_ID);
cy.deleteIndexPattern(TSVB_INDEX_PATTERN);
});

describe('TSVB Visualization (MDS is disabled)', () => {
it(`should create new tsvb visulization`, () => {
cy.contains('button', 'Panel options').click();
cy.tsvbSaveVisualization();
cy.get('canvas').should('exist');
});
});
}
3 changes: 0 additions & 3 deletions cypress/utils/dashboards/constants.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,5 @@ export * from './vis_type_table/constants';
export * from './vis_type_timeline/constants';
export * from './vis-augmenter/constants';
export * from './data_explorer/constants';
<<<<<<< HEAD
export * from './vis_type_vega/constants';
=======
export * from './vis_type_tsvb/constants';
>>>>>>> Add FT for TSVB support with MDS
2 changes: 1 addition & 1 deletion cypress/utils/dashboards/vis_type_tsvb/constants.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ export const TSVB_PATH_INDEX_DATA = TSVB_PATH_FIXTURE + TSVB_INDEX_DATA;
// Update the constants
export const TSVB_INDEX_START_TIME = 'May 16, 2010 @ 00:00:00.000';
export const TSVB_INDEX_END_TIME = 'May 16, 2024 @ 00:00:00.000';
export const TSVB_INDEX_ID = 'metrics';
export const TSVB_INDEX_ID = 'vis-metrics';
export const TSVB_INDEX_PATTERN = 'index-pattern-vis-metrics';

export const TSVB_VIS_TYPE = 'visualization';
Expand Down

0 comments on commit 40736ea

Please sign in to comment.