|
17 | 17 | * under the License. |
18 | 18 | */ |
19 | 19 |
|
| 20 | +import expect from '@kbn/expect'; |
20 | 21 | import { FtrProviderContext } from '../../ftr_provider_context'; |
21 | 22 |
|
22 | 23 | export default function({ getService, getPageObjects }: FtrProviderContext) { |
23 | 24 | const esArchiver = getService('esArchiver'); |
| 25 | + const filterBar = getService('filterBar'); |
24 | 26 | const inspector = getService('inspector'); |
25 | 27 | const kibanaServer = getService('kibanaServer'); |
26 | 28 | const log = getService('log'); |
| 29 | + const queryBar = getService('queryBar'); |
27 | 30 | const PageObjects = getPageObjects(['common', 'discover', 'header', 'timePicker']); |
28 | 31 | const defaultSettings = { |
29 | 32 | defaultIndex: 'logstash-*', |
@@ -76,5 +79,76 @@ export default function({ getService, getPageObjects }: FtrProviderContext) { |
76 | 79 | await inspector.expectTableData(expectedTableData); |
77 | 80 | await inspector.close(); |
78 | 81 | }); |
| 82 | + |
| 83 | + it('should preserve app filters in visualize', async () => { |
| 84 | + await filterBar.addFilter('bytes', 'is between', '3500', '4000'); |
| 85 | + await PageObjects.discover.clickFieldListItem('geo.src'); |
| 86 | + log.debug('visualize a geo.src field with filter applied'); |
| 87 | + await PageObjects.discover.clickFieldListItemVisualize('geo.src'); |
| 88 | + await PageObjects.header.waitUntilLoadingHasFinished(); |
| 89 | + |
| 90 | + expect(await filterBar.hasFilter('bytes', '3,500 to 4,000')).to.be(true); |
| 91 | + const expectedTableData = [ |
| 92 | + ['CN', '133'], |
| 93 | + ['IN', '120'], |
| 94 | + ['US', '58'], |
| 95 | + ['ID', '28'], |
| 96 | + ['BD', '25'], |
| 97 | + ['BR', '22'], |
| 98 | + ['EG', '14'], |
| 99 | + ['NG', '14'], |
| 100 | + ['PK', '13'], |
| 101 | + ['IR', '12'], |
| 102 | + ['PH', '12'], |
| 103 | + ['JP', '11'], |
| 104 | + ['RU', '11'], |
| 105 | + ['DE', '8'], |
| 106 | + ['FR', '8'], |
| 107 | + ['MX', '8'], |
| 108 | + ['TH', '8'], |
| 109 | + ['TR', '8'], |
| 110 | + ['CA', '6'], |
| 111 | + ['SA', '6'], |
| 112 | + ]; |
| 113 | + await inspector.open(); |
| 114 | + await inspector.expectTableData(expectedTableData); |
| 115 | + await inspector.close(); |
| 116 | + }); |
| 117 | + |
| 118 | + it('should preserve query in visualize', async () => { |
| 119 | + await queryBar.setQuery('machine.os : ios'); |
| 120 | + await queryBar.submitQuery(); |
| 121 | + await PageObjects.discover.clickFieldListItem('geo.dest'); |
| 122 | + log.debug('visualize a geo.dest field with query applied'); |
| 123 | + await PageObjects.discover.clickFieldListItemVisualize('geo.dest'); |
| 124 | + await PageObjects.header.waitUntilLoadingHasFinished(); |
| 125 | + |
| 126 | + expect(await queryBar.getQueryString()).to.equal('machine.os : ios'); |
| 127 | + const expectedTableData = [ |
| 128 | + ['CN', '519'], |
| 129 | + ['IN', '495'], |
| 130 | + ['US', '275'], |
| 131 | + ['ID', '82'], |
| 132 | + ['PK', '75'], |
| 133 | + ['BR', '71'], |
| 134 | + ['NG', '54'], |
| 135 | + ['BD', '51'], |
| 136 | + ['JP', '47'], |
| 137 | + ['MX', '47'], |
| 138 | + ['IR', '44'], |
| 139 | + ['PH', '44'], |
| 140 | + ['RU', '42'], |
| 141 | + ['ET', '33'], |
| 142 | + ['TH', '33'], |
| 143 | + ['EG', '32'], |
| 144 | + ['VN', '32'], |
| 145 | + ['DE', '31'], |
| 146 | + ['FR', '30'], |
| 147 | + ['GB', '30'], |
| 148 | + ]; |
| 149 | + await inspector.open(); |
| 150 | + await inspector.expectTableData(expectedTableData); |
| 151 | + await inspector.close(); |
| 152 | + }); |
79 | 153 | }); |
80 | 154 | } |
0 commit comments