Commit graph

447 commits

Author SHA1 Message Date
Spencer
52060b8f16
Migrate base path APIs and UiSettings client to new platform (#22694)
Fixes #20697

This PR migrates the base path related methods from `ui/chrome` to `core.basePath` and the uiSettings to `core.uiSettings`. The two are not split into separate PRs because I'm kinda cramped for time right now so rather I split the changes up into two commits so that you can review them separately if you like. If you'd like I can submit them as separate PRs but the basePath PR will block the uiSettings PR either way.

There shouldn't be any API changes except one thing, since the existing implementation is so close to what we'd want from the new platform API I made the one change that is inconsistent with what we've been doing so far and moved `uiSettings.subscribe()` to `uiSettings.getUpdate$().subscribe()`. This method isn't super commonly used, but it is a breaking change that will likely impact plugins so I'll notify some folks if we decide to move forward this way. I can also make a super-light wrapper for angular that just updates this method if you prefer.
2018-09-07 21:10:05 -07:00
Stacey Gammon
20963e30af
Investigate flaky override colors dashboard test (#22726)
* Run 30x

* attempt a fix

* go back to a single run
2018-09-07 12:14:21 -04:00
Tim Roes
6fa2b04aef
Add functional tests for visualize loader API (#22595)
* Initial visualize loader functional tests

* Extend plugin test README

* Add temporary tz work around

* Switch to Australia/North timezone

* Add filtering tests

* Add all tests

* Remove unneeded uiExports

* Improve explanation

* Add saved object test, add retry
2018-09-04 12:53:18 +02:00
Marco Vettorello
853d321ea2
Fix possible flakiness of saveVisualization action (#22356)
* Updated saveVisualization to wait for toast instead of global indicator

* Fix RBAC tests.

The saveVisualization now fails directly if the visualization is not correctly saved.

* Change editor to use toast for errors

* Change saveVisualization method to new saveVisualizationExpectSuccess

For RBAC tests used also saveVisualizationExpectFail

* Fix wrong exists method call

* Fix missing exist function
2018-08-30 15:58:31 +02:00
Lee Drengenberg
de846117f9
Fix flaky dashboard color legend (#22341)
* Rebuild modulePath correctly if on Windows

* Adding 1 second sleep to fix flaky test

* Wait to find a gear in the visualization after clicking Edit

* Revert "Wait to find a gear in the visualization after clicking Edit"

This reverts commit 8dac3fbd63.

* use waitForRenderComplete and change that to 1s timeout

* Use sleep until TagCloud data-render-complete is fixed

* Different getIsInEditMode courtesy of @chrisdavies

* combine switchToEditMode into one method
2018-08-30 08:43:41 -05:00
Lee Drengenberg
9b809617b5
Speed up dashboard add panel (#22278)
* Rebuild modulePath correctly if on Windows

* Change how we find dashboard add panel is loaded

* Add and use find.byClassName instead of remote

* cleanup a comment
2018-08-23 18:58:55 -05:00
liza-mae
5f7e3ade21
Emit error if api is not stopped and exit code is greater than zero (#22224) 2018-08-22 10:28:28 -06:00
Spencer
9209987165
[accessibility] implement no-animation mode, auto enable for functional tests (#21629) 2018-08-20 19:30:24 -07:00
Marco Vettorello
b7bac987db
Refactor waitForToastMessageGone with new toast (#22131) 2018-08-17 16:43:40 +02:00
liza-mae
a344624a58
Add option to run chrome headless. (#21972)
* Add opton to run chrome headless. Mainly for windows tests which can't use xvfb.

* Update from review comments

Make environment variable Boolean, remove single quotes from keys, remove window size.
2018-08-16 13:42:02 -06:00
Matt Bargar
5e5b2ce7e2
Fix available fields option toggle (#21730)
a36b87a#diff-aff92ff718af4b68d02f030d8a438754 added an ng-if around the available fields button element. ng-if creates a child scope. The ng-click on the button directly modifies scope state. As a result, when the ng-if was added, that ng-click began modifying the ng-if's child scope instead of the parent scope.

The best solution would be to update the discFieldChooser directive to use the controllerAs property so its scope variables are namespaced. However, this is a bit risky because I'd need to make sure to update every single scope variable reference in the template, and it's a relatively large template. Since we'd like to backport this to 6.4 I've taken the less risky route of adding $parent to the scope reference inside the ng-if block.
2018-08-07 16:53:33 -04:00
Stacey Gammon
9d9c6c808a
Make visualization.waitForRender more generic and put in an embeddable class (#21688)
* Make visualization.waitForRender more generic and put in an embeddable class.

* embeddable -> renderable

* missed a reference
2018-08-07 14:24:25 -04:00
Tim Roes
a5cbe2d945
Improve filterBar.addFilter performance (#21560)
* use SavedObjectsClientProvider to provide SavedObjectLoader with an angular wrapped saved object client

* Improve filterBar.addFilter performance

* Add better documentation

* Ease logic of addFilter and add better docs

* Fix old addFilter calls
2018-08-06 18:03:35 +02:00
Peter Pisljar
d380b480c7
fixes pinned filters in visualize and dashboard (#21463) 2018-08-03 10:09:38 +02:00
Peter Pisljar
27f2541a80
fixing embedded mode in visualize (#21468) 2018-08-01 09:42:31 +02:00
Nathan Reese
3b74158b40
Move EuiComboBox functional test utility functions into own service (#21219)
* Move EuiComboBox utility functions into its own service

* remove old functions from visualize page object

* use waitForDeletedByClassName instead of retry and exists to ensure no longer loading

* wait for options loading when getting options list
2018-07-30 16:00:30 -06:00
Bill McConaghy
e7b9c7d428
better fix for flaky management settings test (#21171)
* better fix for flaky management settings test

* implementing better click strategy for toggleAdvancedSettingCheckbox

* converting all of settings page to use preferred styles for clicks and finds

* PR feedback

* fixing issue with missing method

* fixing issue with missing method

* adding missing method

* fixing test

* fixing test issue
2018-07-27 12:30:54 -04:00
Tim Roes
bd03506736
Wait for visualizations to render in tests (#21258)
* Wait for visualizations to render

* Use Visualize.waitForRender on dashboard

* Enable previously flaky dashboard tests again

* Add data-loading for initial render

* Remove unnecessary timeout
2018-07-27 13:10:25 +02:00
CJ Cenizal
b328bd0e3d
Verify that we've navigated to Settings by checking the title. (#21245)
* Fail the consuming test if navigation to settings is unsuccessful.
* Add testSubjects.existOrFail helper.
2018-07-26 19:07:42 -07:00
Stacey Gammon
38dcda0e6b
Fix refreshed dashboard losing time range (#20858)
* Add test that would have caught the bug

* Initialize global state with current time range

* Fix issue with failing tests - need to remove added "t" parameter to the url in the new tests

* remove unneccessary extra call

* Fix tests that failed due to globally added time in new tests

* Update home page test to not care about any state.
2018-07-26 08:53:18 -04:00
Lee Drengenberg
43d41f7205
Add method to wait for loading to complete in Add Panel table (#21109)
* Add method to wait for loading to complete in Add Panel table

* remove extra retry loop
2018-07-25 15:04:24 -05:00
Bill McConaghy
35dade2d3c
Reactify users roles (#20739)
* partial progress on reactifying users

* progress on EUIfication of users screen

* removing Angular stuff

* adding data-test-subj="passwordConfirmationInput"

* removing data-test-subj="userFormEmailInput" refs from tests

* fixing selector for role assignment

* some functional test fixes

* fixing some functional tests

* fixing last functional test

* removing stray console log

* fixing warnings

* attempting to fix flaky test

* trying again to fix flaky test

* PR feedback

* PR feedback

* fixing issue where form tried to submit

* adding sleep to allow user to load

* Design edits

Mainly adding wrapper EUI page elements, but also shifted around form elements.

* Fixed console error and added responsive prop to table

* addressing PR feedback

* A few more PR feedback

- Fixed alignment of table
- Removed the tooltip from the lock icon and placed the description inline.
- Changed delete button to an empty button

* addressing more PR feedback

* adding email field back in

* adding back username validation

* restoring original error message

* fixing dumb null error
2018-07-19 16:40:12 -04:00
Lee Drengenberg
ba462a9fb0
refactor login page check, turn off telemetry (#17435)
* refactor login page check, turn off telemetry

* significant refactor of navigateTo

* replace slashes with _ in test failure output html files

* re-do out of date PR
2018-07-12 08:31:43 -05:00
Josh Soref
2b27fb1c5f Fix misspellings (#19981) 2018-06-26 20:17:41 -07:00
Tim Roes
2885e871e3
Replace spy panels by Inspector (#16387)
* Add Inspector feature

* So long, and thanks for all the fish, spy panel

* Fix several functional tests

* Fix unit tests

* Fix spy panel button tests

* Replace old spy panel documentation

* Disable test temporarily until we have dashboard triggers

* Enter edit mode for dark theme test

* Fix some more functional tests

* Fix more functional tests

* More test fixing

* Fix more functional tests

* Allow opening the inspector via loader handler

* Refactor InspectorViewChooser, remove unused CSS

* Remove dead code

* Fix data download button style

* Remove redundant code

* Load inspectorViews for dashboard_viewer

* Extract inspector views to custom core_plugin

* Switch API to TypeScript 🎉

* Design changes

* Remove icons from views

* Design changes

* Improve typings of API

* Add typing to all adapters

* Show loading spinner in request selector

* Rewrite InspectorView to TypeScript

* Fix help text for data view

* Remove deprecated React lifecycle methods

* Embed inspector into dashboard panel actions

* Remove temporary inspector trigger

* Remove old CSS

* Fix dashboard trigger for new panel action

* Add tests for InspectorPanel and DataAdapter

* Produce a hierarchical table if the vis is hierarchical

* Remove allowJs option again

* Add missing Apache license headers

* Close inspector on dashboard when navigating away

* Use proper title for dashboard panels

* Fix functional tests

* Skip broken test for now

* Flush view chooser button

* Add request adapter tests

* Skip more tests, broken due to typescript

* Add Request Time description

* Add description for courier request

* Fix tests

* Replace icon by new (not yet released) icon

* Finalize design of inspector

* Remove discover test, that relied on spy panels

* Change API to be properly mockable in tests

* Add aria-live region for request status

* Replace old method in functional tests

* Replace abitrary magic number

* Use object destructuring in vis

* Fix issue with crashing requests view

* Add request time tooltip

* Get request body of correct search source

* Make filter buttons properly keyboard accessible

* Follow Dave's design suggestions

* Remove redundant request from name

* Remove unneeded comments

* WIP raw-formatted values

* Fix filtering issue

* Fix tests and more license headers

* Add data view tests

* Remove search from table

* Fix typos

* Implement review suggestion

* Remove artificial delays for testing

* Fix new panel action structure

* Minor design adjustments

* Fix failing functional test

* Update failing snapshot test

* Implement final wording

* Apply new EUI styling

* Fix closing inspector in tests

* Fix sorting of table

* Align punctuation between tooltips
2018-06-20 11:07:44 +02:00
Tim Roes
58257c2734
Update EUI to 0.0.53 (#20005)
* Update to EUI 0.0.53

* Remove input vis specific styling

* remove double close button in dashboard add panel flyout (#2)

* Fix functional tests

* fix x-pack snapshots

* EUI 0.0.53 no longer closes combo box when clear btn is pressed (#3)
2018-06-19 17:43:26 +02:00
CJ Cenizal
87cccfc101
Revert "Tests for visualization screenshot comparison (#17545)" (#19692)
This reverts commit 84d678bbb9.
2018-06-05 17:08:29 -07:00
Bhavya RM
84d678bbb9 Tests for visualization screenshot comparison (#17545)
* undoing a messy merge

* updating screenshots

* changing the variance to account for data table failure

* trying a different variance for data table and a general one for the rest of the screenshots

* changing the variance for general to .065

* adding xy position to adjust the screensize

* changing variance and setting a small window

* create calibrateForScreenshots method

* remove empty lines
2018-06-05 19:14:29 -04:00
Stacey Gammon
803d0a61f3
Update dashboard snapshot tests (#19420)
* update snapshot tests

* Update time ranges

* Add sleeps, adjust time, update snapshots

* Skip TSVB until the issue with vertical line placement and x-axis timestamps is fixed

* fix expectations of time range with saved search creation

* remove debug line
2018-05-29 12:58:36 -04:00
Spencer
f0cc432faf
Apache 2.0 license headers (#19383)
In order to make the license that applies to each file as clear as possible, and to be consistent with elasticsearch, we are adding Apache 2.0 license headers to the top of each file.

Existence of this header is enforced by eslint and tslint and missing headers were automatically added in the last commit by running:

```
node scripts/eslint --fix && node scripts/tslint --fix
```
2018-05-28 20:06:30 -07:00
Stacey Gammon
e3ea1a8726
Pluggable panel actions (#18877)
* Allow pluggable panel actions

* Need to register it as being used in kibana

* Some cleanup

* update snapshots to match new EUI versions, set time range

* Use newer panelActions service

* add missing await

* More clean up and fixes

* bring back window reload

* Show actions in view mode too

* delete now unused files

* Use toggle action to determin if context menu is open

* Fix tests that assume the toggle is hidden in view mode.

* Add some debug logs

* Fix up assumptions

* Previous failing test was legit - we don't want to show remove option when panel is expanded

* Embeddable can be empty before the panel is loaded

* Should look for either visualize or discover page

* Address code comments

* address code review comments

* whoops, get rid of childPanelToOpenOnClick entirely
2018-05-24 14:53:42 -04:00
Nathan Reese
9c3481c078
EUI dashboard add panel (#17374)
* EUI add panel

* implement add functionallity

* style flyout so top nav is not covered

* add noItemsMessage

* add new visualization button

* remove angular add_panel template

* seperate search bar and table into its own component

* fix functional tests

* make slide out panel own focus to avoid weirdness of letting other buttons in nav from getting clicked and leaving slide out open

* remove deprecated method componentWillMount

* add jest test for DashboardAddPanel

* fix paging and replace EuiSearcBar with EuiFieldSearch

* fix functional tests

* fix dashboard filter bar functional test

* another functional test fix

* add more context to functional test failure message

* give search input a default value

* remove call to waitForRenderComplete to see if tests will pass

* fix dashboard filtering test

* updates from Stacey-Gammon review

* support filtering out lab visualizations

* add functional test for testing visualize:enableLabs with add panel

* add sorting by title to SavedObjectFinder componenet

* move add panel tabs to state

* clean up labs test differently
2018-05-24 11:05:52 -06:00
Tim Roes
37bcc3d591
Add missing test for #19221 (#19253)
* Add tests

* Merge the two addFilter methods
2018-05-22 16:58:02 +02:00
Chris Roberson
80bb4b1867
[Management] Saved objects to React/EUI! (#17426)
* Not working proto code

* More proto code

* Work in progress

* Just go back to non interactive searching, much easier

* This should be on the server

* Revert "[@kbn/ui-framework] move ui-framework to a package (#17085)"

This reverts commit ef3339bd7a.

* Revert "Revert "[@kbn/ui-framework] move ui-framework to a package (#17085)""

This reverts commit ce9ce14e1060c426090b55a5367de3ff4329e681.

* Use BasicTable properly

* Table improvements

* Small tweaks to the table

* Improvements

* Flyout mostly working

* Remove in memory table

* Getting close

* Tweaks

* Revamping server code, still need to support editing

* Progress

* Fix export

* Updates and passing functional tests

* Better links in relationships flyout

* Add skip import option

* Fixes around importing and removing unnecessary code

* Remove tags for now

* Tests for lib/

* Some fixes

* Ensure we clear index pattern cache

* Parity with master

* Revert any changes in package.json

* Reset any changes in this file

* Move the new argumen to the end to prevent test failures

* Fix functional tests

* Add relationship tests

* Fix tests

* API integration tests for relationships

* Ensure we're properly waiting for things to happen

* Fix test issue

* Wait for the table to finish loading instead of the whole page

* Tests for objects_table

* Componentry tests

* Ensure this is grabbing the right field

* Update snapshot

* Fixes with importing index patterns

* PR feedback

* PR feedback

* PR feedback

* Update snapshot

* PR feedback

* Update snapshot

* Respect the savedObjects:perPage config

* Updates from PR feedback

* More updates from PR feedback

* Make this more efficient

* Add debugging for functional test failures

* Wait longer

* Wrap each button accessor with a retry.try

* Try wrapping this in a retry.try

* Debug

* Lets make sure it is visible

* Maybe the short timeout is affecting this - use the default timeout which should be higher and allow more time for the animation to finish

* Rewrite this per suggestions from stacey
2018-05-17 13:46:47 -04:00
Stacey Gammon
897f5f3f1a
Fix, or debug, flaky nested visualization filter test (#18957)
* Debug flaky test, or at least retry the spot that seems to be failing

* Fix missing await, use queryBar service, use more detailed error message

* update remaining references to dashboard.getQuery

* getQueryString not getQuery
2018-05-14 09:47:32 -04:00
Stacey Gammon
3c8c23c9ef
Expand coverage of dashboard tests (#17703)
* Expand coverage of dashboard tests and decrease time

* Fix timing error when sub urls fail to save from too fast app link clicking

* discover doesn't have breadcrumbs

* Check top nav text so it works on both listing and saved object edit/view pages

* need to do the add panel operations one at a time

* Need both types of input in filter

* Give test data a title

* Remove incorrect and unnecessary comment

* Move data around and get rid of 6_3 specific naming as we will end up migrating the data as we progress

* Remove code accidentally checked in
2018-05-01 09:12:36 -04:00
Stacey Gammon
33262a7d5a
Fleshed out communication layer between embeddables and dashboard (#17446)
* Flesh out communication layer between embeddables and dashboard

* fix flaky legend colors

* Address code review comments

* Remove embeddableHandlerCache and push render/destroy handling of Embeddable instance into react component

* Fix a bug and adds tests that would have failed

* Whoops, fix toggleExpandPanel, in view mode it's not in the panel options

* Update readme based on newest implementation, after pushing all embeddable lifecycle handling to the embeddable_viewport component

* Push embeddable handling back up to dashboard_panel, get rid of embeddable_viewport

The options menu will eventually need access to the embeddable for
things like pluggable panel actions.

* Update README.md

* Fix jest tests

* Add two failing tests to catch current bugs

* Fix max call size exceeded err

* fix time range bug

* Add failing test for filter field index pattern bug

* Fix bug with index patterns

* Expand on definition of an embeddable

* Address code review comments

* address some code comments

rename personalization => customization
add more optional config overrides into an Embeddable constructor

* Fix refactor bug
2018-04-13 15:23:23 -04:00
Matt Bargar
aeaf57dd97
Add query enhancements opt-in switch to query bar (#17232)
Makes our language updates more visible to users and removes mentions of Kuery as a separate language. Users still get the old lucene experience by default, but have the option to opt-in to "experimental query features" directly in the query bar. Goal is to get more feedback by making these new features more prominent and less of a jump from lucene.
2018-03-22 15:47:52 -04:00
John Dorlus
a31ec148f4
Adding firefox to test suite (#17195)
* Created general driver to accept an argument select the driver to run.

* Added environment variable for driver, changed package.json to use custim leadfoot, and made changes to browserdriver to use any driver.

* Made changes per PR.

* Fixed all nits.
2018-03-16 23:05:10 -04:00
spalger
60ee5883b0 revert more changes from #17188 2018-03-15 23:54:10 -07:00
spalger
381fcb22fb revert #17188 2018-03-15 23:36:05 -07:00
John Dorlus
1b656c3670 Update 2018-03-16 02:26:59 -04:00
John Dorlus
9827e7360a Made changes per PR. 2018-03-16 01:26:32 -04:00
John Dorlus
c764a25e82 Added environment variable for driver, changed package.json to use custim leadfoot, and made changes to browserdriver to use any driver. 2018-03-15 20:50:04 -04:00
John Dorlus
3180ee51fb Created general driver to accept an argument select the driver to run. 2018-03-15 20:49:23 -04:00
Lee Drengenberg
315e4cf122
Save html for failed tests (#16850)
* Fixes issue preventing stdin from defaulting

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>

* Prevent prompting to overwrite when using stdin

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>

* Remove log

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>

* When failure, log URL and save page source

* log Taking screenshot  at info level

* Force a failure, then revert this

* [ftr/failureDebugging] create failure debugging service

* Cleanup and create the failure_debug/html dir, strip special chars from filenames

* Remove a debugging log

* refactored replacing invalid filename chars

* Revert forced failing tests
2018-03-13 16:46:56 -05:00
CJ Cenizal
eb49a8c449
Add test-subj-selector module to packages dir. (#16623)
* Add test-subj-selector module to packages dir.
* Rename to @kbn/test-subj-selector.
* Simplify rejectRejFiles Grunt task and ignore nested node_modules.
* Update jenkins_unit script to use yarn kbn CLI.
2018-02-13 10:34:47 -08:00
Chris Earle
b72af008a1
[Tests] Revert Timeout to Default 1s (#16359)
This should hopefully speed up Selenium tests again.
2018-01-29 12:50:23 -05:00
CJ Cenizal
ec3485b167
Reduce TestSubjects.find default timeout to 1s. (#16342) 2018-01-28 17:50:57 -08:00
CJ Cenizal
6e9fc7328b
Extract fatal notification into fatalError service, add support for EuiToast notifications (#15749)
* Reorganize notify/lib files. Extract fatal notification into a fatalError service.
* Convert notify/lib tests to use Jest.
* Add ToastNotifications, GlobalToastList, and documentation.
* Remove notify.info method.
* Add createFirstIndexPatternPrompt.
* Update testSubjects.exists to accept a timeout argument.
* Skip some flaky tests.
2018-01-26 20:14:28 -08:00