Skip to content

Commit

Permalink
[7.17] unskip test kibana/test/functional/apps/discover/_saved_querie…
Browse files Browse the repository at this point in the history
…s.ts (elastic#128678) (elastic#129812)

* unskip test kibana/test/functional/apps/discover/_saved_queries.ts (elastic#128678)

* unskip tes _saved_queries

* remove sleep call from debugging, remove commented-out code

* add submitQuery and wait for correct counts at each step

* more debugging checks

* re-select logstash-* data view

Flaky test runner failed 6/100 times at this point so try setting it here again.

Co-authored-by: Kibana Machine <[email protected]>
(cherry picked from commit e076067)

* skip verification of index pattern selection

Co-authored-by: Lee Drengenberg <[email protected]>
  • Loading branch information
kibanamachine and Lee Drengenberg authored Apr 12, 2022
1 parent 7a979a3 commit e5d6973
Showing 1 changed file with 38 additions and 25 deletions.
63 changes: 38 additions & 25 deletions test/functional/apps/discover/_saved_queries.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,21 +25,39 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
defaultIndex: 'logstash-*',
};

const from = 'Sep 20, 2015 @ 08:00:00.000';
const to = 'Sep 21, 2015 @ 08:00:00.000';

const setUpQueriesWithFilters = async () => {
await kibanaServer.savedObjects.clean({ types: ['search', 'query'] });
// set up a query with filters and a time filter
log.debug('set up a query with filters to save');
const from = 'Sep 20, 2015 @ 08:00:00.000';
const to = 'Sep 21, 2015 @ 08:00:00.000';
await PageObjects.common.setTime({ from, to });
await PageObjects.common.navigateToApp('discover');
await PageObjects.discover.selectIndexPattern('logstash-*');
await retry.try(async function tryingForTime() {
const hitCount = await PageObjects.discover.getHitCount();
expect(hitCount).to.be('4,731');
});

await filterBar.addFilter('extension.raw', 'is one of', 'jpg');
await retry.try(async function tryingForTime() {
const hitCount = await PageObjects.discover.getHitCount();
expect(hitCount).to.be('3,029');
});

await queryBar.setQuery('response:200');
await queryBar.submitQuery();
await retry.try(async function tryingForTime() {
const hitCount = await PageObjects.discover.getHitCount();
expect(hitCount).to.be('2,792');
});
};

describe('saved queries saved objects', function describeIndexTests() {
before(async function () {
log.debug('load kibana index with default index pattern');
await kibanaServer.savedObjects.clean({ types: ['search', 'index-pattern'] });
await kibanaServer.savedObjects.clean({ types: ['search', 'index-pattern', 'query'] });

await kibanaServer.importExport.load('test/functional/fixtures/kbn_archiver/discover.json');
await kibanaServer.importExport.load(
Expand All @@ -51,12 +69,13 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
await kibanaServer.uiSettings.replace(defaultSettings);
log.debug('discover');
await PageObjects.common.navigateToApp('discover');
await PageObjects.timePicker.setDefaultAbsoluteRange();
});

after(async () => {
await kibanaServer.importExport.unload('test/functional/fixtures/kbn_archiver/discover');
await kibanaServer.importExport.unload('test/functional/fixtures/kbn_archiver/date_nested');
await kibanaServer.savedObjects.clean({ types: ['search', 'index-pattern', 'query'] });
await kibanaServer.savedObjects.clean({ types: ['search', 'query'] });
await esArchiver.unload('test/functional/fixtures/es_archiver/date_nested');
await esArchiver.unload('test/functional/fixtures/es_archiver/logstash_functional');
await PageObjects.common.unsetTime();
Expand Down Expand Up @@ -89,6 +108,10 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
expect(await queryBar.getQueryString()).to.eql('');

await PageObjects.discover.selectIndexPattern('logstash-*');
await retry.try(async function tryingForTime() {
const hitCount = await PageObjects.discover.getHitCount();
expect(hitCount).to.be('4,731');
});

expect(await filterBar.hasFilter('extension.raw', 'jpg')).to.be(false);
expect(await queryBar.getQueryString()).to.eql('');
Expand All @@ -98,8 +121,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
});
});

// FLAKY: https://github.com/elastic/kibana/issues/124986
describe.skip('saved query management component functionality', function () {
describe('saved query management component functionality', function () {
before(async () => await setUpQueriesWithFilters());

it('should show the saved query management component when there are no saved queries', async () => {
Expand All @@ -117,6 +139,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
true,
true
);

await savedQueryManagementComponent.savedQueryExistOrFail('OkResponse');
await savedQueryManagementComponent.savedQueryTextExist('response:200');
});
Expand All @@ -127,20 +150,21 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
await savedQueryManagementComponent.loadSavedQuery('OkResponse');
const timePickerValues = await PageObjects.timePicker.getTimeConfigAsAbsoluteTimes();
expect(await filterBar.hasFilter('extension.raw', 'jpg')).to.be(true);
expect(timePickerValues.start).to.not.eql(PageObjects.timePicker.defaultStartTime);
expect(timePickerValues.end).to.not.eql(PageObjects.timePicker.defaultEndTime);
expect(timePickerValues.start).to.eql(from);
expect(timePickerValues.end).to.eql(to);
});

it('preserves the currently loaded query when the page is reloaded', async () => {
await browser.refresh();
const timePickerValues = await PageObjects.timePicker.getTimeConfigAsAbsoluteTimes();
expect(await filterBar.hasFilter('extension.raw', 'jpg')).to.be(true);
expect(timePickerValues.start).to.not.eql(PageObjects.timePicker.defaultStartTime);
expect(timePickerValues.end).to.not.eql(PageObjects.timePicker.defaultEndTime);
await retry.waitFor(
'the right hit count',
async () => (await PageObjects.discover.getHitCount()) === '2,792'
);
expect(timePickerValues.start).to.eql(from);
expect(timePickerValues.end).to.eql(to);
await retry.waitForWithTimeout('the right hit count', 65000, async () => {
const hitCount = await PageObjects.discover.getHitCount();
log.debug(`Found hit count is ${hitCount}. Looking for 2,792.`);
return hitCount === '2,792';
});
expect(await savedQueryManagementComponent.getCurrentlyLoadedQueryID()).to.be('OkResponse');
});

Expand Down Expand Up @@ -171,17 +195,6 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
});

it('does not allow saving a query with a non-unique name', async () => {
// this check allows this test to run stand alone, also should fix occacional flakiness
const savedQueryExists = await savedQueryManagementComponent.savedQueryExist('OkResponse');
if (!savedQueryExists) {
await savedQueryManagementComponent.saveNewQuery(
'OkResponse',
'200 responses for .jpg over 24 hours',
true,
true
);
await savedQueryManagementComponent.clearCurrentlyLoadedQuery();
}
await savedQueryManagementComponent.saveNewQueryWithNameError('OkResponse');
});

Expand Down

0 comments on commit e5d6973

Please sign in to comment.