Commit graph

58 commits

Author SHA1 Message Date
Hannah Mudge
a1a5b914fb
[8.0] [Dashboard] Transfer state when drilldown is opened in a new tab (#124770) (#125740)
* [Dashboard] Transfer state when drilldown is opened in a new tab (#124770)

* Translate dashboard state to URL conditionally

* Add functional tests

* Fix typo in functional test descriptions

* Remove deprecated references

* Rename useUrl to be more specific

(cherry picked from commit 17a997cccb)

# Conflicts:
#	src/plugins/dashboard/public/index.ts

* Fix lint
2022-02-16 11:06:23 -07:00
Tim Sullivan
29165d5414
[8.0] [Screenshotting] Add functional test for report generation of dashboard with Maps embeddable (#122887) (#123008)
* [Screenshotting] Add functional test for report generation of dashboard with Maps embeddable (#122887)

* [Screenshotting] Add functional test for report with Maps embeddable

* make checkIfPngsMatch shareable

* add baseline file

* add functional test with new map saved object

* add .gitignore

* file structure corrections

* add ciGroup to test

* revert unintentional change

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
(cherry picked from commit fddd1aafb4)

* update layerListJSON for map
2022-01-14 11:52:32 -07:00
Kibana Machine
6e8807655c
Fix WebElementWrapper.findByTestSubject passing css selector to the created wrapper (#121493) (#121650)
* Fix WebElementWrapper.findByTestSubject incorrectly passing a css selector to created wrapper

* lint

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>

Co-authored-by: Pierre Gayvallet <pierre.gayvallet@elastic.co>
2021-12-20 09:29:11 -07:00
Kibana Machine
da882b900c
[eslint] prevent using constructor property params in initializers (#119130) (#119223)
Co-authored-by: Spencer <email@spalger.com>
2021-11-19 13:43:48 -07:00
Jean-Louis Leysens
8b66ef161d
[Reporting] Baseline capture tests (#113910)
* added page to reporting example app that contains the capture tests

* first version of PNG capture for test A

* added types file to common

* added data-shared-item attr to image, also added capture menu items

* fix image CSS by providing a fixed width and height

* explicitly add layout for print, does not seem to do anything though?

* added magic numbers of image sizes

* added reporting examples test folder

* first version of capture test for generating and comparing PNGs

* added PNG service and PNG baseline fixture

* added pdf-to-img dev dependency

* refactor compare_pngs to accept a buffer

* added comment to interface

* png service -> compare images service

* export image compare service

* added test for pdf export

* clean up log

* minor fixes and added pdf print optimized test

* added pdf and pdf print fixtures

* refactor lib function name

* Update difference thresholds

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-21 14:59:07 +02:00
Jean-Louis Leysens
f70542abe2
[Fleet] Adjust add integration flow (#101714)
* Initial commit, very WIP

- added link to the integrations UI instead of add integration
  in fleet
- added a new piece of route state that gets passed to integration
  from fleet when browsing integrations for a policy
- when the integration is being added the page will send the user
  back to the policy overview instead of back to integrations UI

* remove unnecessary agent policy clear function

* added # to path so that navigation is correctly handled

* added logic to read the forward agent policy id

* remove inline select integration package from fleet add integration

* updated toast notification

* using query parameter to pass policy id back to create policy package page

* removed policyId from route path

* fix type issue

* updated the select agent field layout per the designs

* simpified item rendering in combobox and fixed combobox z-index issue

* added comment

* fix types and i18n

* updated icon and removed unused i18n

* refactor to using styled components for cusomt z-index styling

* attempt to fix integration test

* added scroll functionality for dealing with fixed footers that might be obstructing content

* fix scroll direction!

* attempting another scroll algorithm

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-06-15 09:26:37 +02:00
Thomas Watson
9acbce963b
Upgrade cheerio from v0.22.0 to v1.0.0-rc.9 (#101394) 2021-06-08 17:40:25 +02:00
Spencer
fad45022c1
[npm] upgrade all jest related dependencies (#96367)
Co-authored-by: spalger <spalger@users.noreply.github.com>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-04-21 15:32:10 -04:00
Ece Özalp
d70d02ee83
Add a11y test coverage to Rule Creation Flow for Detections tab (#94377)
[Security Solution] Add a11y test coverage to Detections rule creation flow (#80060)
2021-03-25 15:05:23 -04:00
Brandon Kobel
4584a8b570
Elastic License 2.0 (#90099)
* Updating everything except the license headers themselves

* Applying ESLint rules

* Manually replacing the stragglers
2021-02-03 18:12:39 -08:00
Brandon Kobel
170a2956c8
Updating the License (#88343)
* Updating the Licenses, except for applying eslint, building

* Applying ESLint rules,building @kbn/pm, regenerating api docs
2021-01-19 17:52:56 -08:00
Dmitry Lemeshko
633968e053
Remove IE support in functional tests (#71285)
* [ftr] remove ie support

* remove ie integration tests config
2020-07-09 22:12:52 +02:00
restrry
bf04235dae apply prettier styles 2020-05-22 09:08:58 +02:00
Dmitry Lemeshko
69a61d4ee7
[functional/services] import By/until from module (#66015)
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-05-12 11:53:20 +03:00
Dmitry Lemeshko
464a3c23ba
[FTR]: add chromium-based Edge browser support (#63566) 2020-04-16 19:06:33 +03:00
Dmitry Lemeshko
637a9e11a2
Revert FTR: add chromium-based Edge browser support (#61684) (#63448) 2020-04-14 13:25:26 +02:00
Dmitry Lemeshko
578e443bdd
FTR: add chromium-based Edge browser support (#61684)
* bump dependency, add edge support in ftr services

* add config files

* fix browser version for msedge

* use npm ms-chromium-edge-driver

* download edge driver aside from session creation

* move dependency to dev

* update dist/index file

* bump edge-driver version

* change type to msedge to match w3c spec

* fix discover tests for Edge

* Revert "fix discover tests for Edge"

This reverts commit 87e7fdd256.

* bump driver version up

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-04-09 00:08:21 +03:00
Dmitry Lemeshko
992c502cf5
WebElementWrapper: add findByTestSubject/findAllByTestSubject to search with data-test-subj (#60568)
* [web_element_wrapper] add find/findAll to search with data-test-subj

* fixes

* fix wrong function call

* review fixes

* simplify test

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-03-20 17:18:35 +03:00
spalger
8e9a8a84dc autofix all violations 2019-12-13 23:17:13 -07:00
Spencer
158d86f842
standardize notice-comment usage (#48677)
* standardize notice-comment usage

* regenerate notice.txt
2019-10-21 11:54:45 -07:00
Alexey Antonov
8bf2a4f227
[Automation] TSVB doesn't allow to perform basic functions showing no fields available (#47860) 2019-10-11 11:33:03 +03:00
Dmitry Lemeshko
9c21ccf068
[functional/services] update webdriver lib and types (#47381)
* [functional/services] refactor using new types

* [code/history] wrap forward navigation with browser service
2019-10-07 11:32:46 +02:00
Lee Drengenberg
700a7ef576
Add option for Internet Explorer IE11 to FTR (#42967)
* Add option for Internet Explorer IE11

* WIP trying to figure out IE options/capabilities

* more attempts to get IE tests working

* more work, but still can't set font size in Dev Tools Console

* two changes for IE

* revert skip in console test

* this change *appears* to set absolute times but they don't stick

* Shakespeare passing on all 3 browsers

* add config.ie.js, change 'internet explorer' to 'ie'

* increase notifications:lifetime so ew have a chance to see the message

* fix lint error remove unused Options

* updates from PR review, remove console.log

* cleanup + reuse existing code

* make iedriver path work for x-pack tests

* try to avoid changing notification timeout

* resolve path and add correct delimiter

* remove unused code, make timepicker work on IE11

* work-around 45333 for IE11

* [WIP] removing some work-arounds

* revert work-arounds

* cleanup

* remove debugging code

* remove debugging code

* removed unused code

* reverting 2 files that didn't have any material changes
2019-10-04 11:13:58 -05:00
Lee Drengenberg
5a92dec11d
unskip dashboard_screenshot tests by using new setScreenshotSize (#46311)
* use new setScreenshotSize

* change tolerance from 1% to 2% (originally 5%)

* retake baseline without notification dialog

* close add and save notifications

* wait for render complete when going in to FullScreen mode

* add 5 second sleep to see if it ever goes to full screen mode

* add debugging screenshots and sleeps

* try reloading the Kibana index before this test

* 30 iterations with only the first test enabled

* revert multi-run changes

* ran node scripts/build_renovate_config

* fix tslint errors

* fix tslint error

* update xpack dependency to match oss

* update yarn.lock

* revert notifications:lifetime:info change by reducing some other timeouts

* remove commented-out code

* fixed and Unskipped 2nd test

* re-arrange order of dashboard tests to pass :-(

* removed commented-out sleep

Hopefully this won't be an issue

* Add comment about the order of tests

```
      loadTestFile(require.resolve('./view_edit'));
      // Order of test suites *shouldn't* be important but there's a bug for the view_edit test above
      // https://github.com/elastic/kibana/issues/46752
      // The dashboard_snapshot test below requires the timestamped URL which breaks the view_edit test.
      // If we don't use the timestamp in the URL, the colors in the charts will be different.
      loadTestFile(require.resolve('./dashboard_snapshots'));
 ```
2019-09-27 13:49:51 -05:00
Dmitry Lemeshko
3a158b9d7d
FTR: fix WebDriver Actions calls (#44605)
* [services/web_element_wrapper] add actions API methods

* fixes

* [services/browser] fix dragAnDrop to work in both w3c/non-w3c modes

* small review changes

* dragAndDrop: add default values for offset
2019-09-06 07:54:26 +02:00
Spencer
f4e39159dc
[ftr/cheerio] improve cheerio types to include test subject me… (#42534) 2019-08-02 13:08:20 -07:00
Zacqary Adam Xeper
47d9756652
[Logs UI] Make column configurations reorderable (#41035)
* [Logs UI] Make column configurations reorderable

* Improve typing aand memoize callback

* Guard against index bounds and rename reorderLogColumns

* Fix useCallback memoization

* Add functional test for reordering log columns

* Use browser.keys instead of Key in functional test
2019-07-22 13:47:47 -05:00
Dmitry Lemeshko
e9194d75ef
[services/web_element_wrapper] update clearValue function to fix Firefox tests (#41117)
* [services/web_element_wrapper] update clearValue function

* fix flaky test #40670
2019-07-15 22:50:13 +02:00
Dmitry Lemeshko
9f9d0dcbb8
WebElementWrapper: Retry WebDriver atomic calls (#40423)
* [services/lib/web_element_wrapper] use Generics in replyCall

* [services/lib/web_element_wrapper] remove redundant return types

* [services/lib/web_element_wrapper/] set retryCall timeout to 200 ms

* [services/find] explcitly pass element to have locator===null by default

* use static method to create WebElementWrapper

* missed a couple uses

* move some values to constants

* remove some unnecessary type info
2019-07-12 13:47:26 +02:00
Spencer
415e3bca27
[ts] upgrade to 3.5.3 (#40228)
* [ts] upgrade to 3.5.2

* [ts] run from cwd so that relative paths are correct

* move eslint-disable-line comment into jsx attribute

* autofix eslint violations

* avoid generic type, it's not necessary and problematic

* make elasticsearch.cluster optional, many instances don't have them

* remove invalid prop

* expand AllowUnknownProperties to cleanly handle arrays

* esfilter values can sometimes be an array of strings

* allow exception objects to have unknown properties

* define accumulator as a boolean

* fix return type

* return a 404 if beat isn't found after update

* use Object.values for better types

* define return type of get() call

* define value type for Set

* define return value of get()

* define State property type

* use less get(), so ts can infer types

* define Set item type

* map state type

* make default_operator optional, since it's not always defined

* remove seemingly unused prop

* define return type of get() fn

* define inner type for state

* don't define base types are objects with index signatues

* regenerate public api docs

* make indices privileges optional too

* remove unnecessary index-signature from Exception interface

* use variadic _arg instead

* [core/plugin] use Record<string, any> rather than {}

* replace a couple more instances of {}

* revert some unnecessary changes

* remove unused types

* [reporting] output, payload, and meta are required properties

* bump to latest patch version
2019-07-10 12:26:23 -07:00
Dmitry Lemeshko
e9f84ae83d
[ftr] replace getProperty with getAttribute (#40358)
* [ftr] replace getProperty with getAttribute

* fix failing tests

* [services/pipeline_editor] revert change
2019-07-04 21:18:14 +02:00
Peter Pisljar
444bafbe0e
updating metricvis interpreter func arguments (#34532) 2019-06-28 05:44:43 +02:00
Dmitry Lemeshko
f82e92a077 FTR: add support for Firefox browser (#32509)
* skip and adjust functional tests for Firefox

* downgrade geckodriver to 0.22.0

* [ftr] add firefox specific config file

* remove hard coded firefox adjustments

* remove firefox specific screenshot directory

* run functional tests in firefox in x-pack

* pass the logger to readConfigFile()

* rename local var

* skip xpack firefox config

* run xpack firefox functional tests in separate command

* update report name for XPack firefox results

* adjust viz shared item test

* skip shared item test

* [test/feature_controls] increase timeout to 20 sec & use forceLogout

* FF timeout on TSVB, refresh page on failure for url navigation

* [feature_controls/visualize_security] increase timeout to 20 sec

* skip dev_tools_spaces tests on FF

* run all groups 3 times

* skip more func tests

* skip more tests

* skip all feature controls tests for Firefox

* revert back changes in feature controls tests

* rename xpack report for chrome

* skip tile map for FF, wait for render before saving

* Revert "run all groups 3 times"

This reverts commit 12b4f69627.

* revert refresh on login

* apply feedback
2019-05-31 15:49:18 -07:00
Vitali Haradkou
ed29276c5f
[TSVB] markdown variables(revert fix) (#34067)
* add markdown tests
2019-05-28 00:26:28 +03:00
Vitali Haradkou
3c0bc3086a
Tsfy screenshot service and comparepng internal lib (#37177) 2019-05-28 00:09:18 +03:00
Matt Bargar
3070d25e46
Extract QueryBarInput component from QueryBar (#35827)
Solution for use cases that need a query bar without a submit button or date picker that still want KQL and autocomplete. Necessary for the KQL in TSVB and KQL in filters aggregation efforts.
2019-05-09 11:15:50 -05:00
Dmitry Lemeshko
609297bac4
Update services to support functional tests in Firefox (#35648)
* add Browsers enum & changes to support FF

* revert moveTo signature to Promise<void>
2019-05-02 15:02:59 +02:00
Vitali Haradkou
9947045f69
Ftr tsfy webelement wrapper (#35355)
* tsfy webelement wrapper
2019-04-23 19:05:46 +03:00
Dmitry Lemeshko
d37bbcfd78
update functional tests to support Firefox (#34635) 2019-04-17 09:42:54 +02:00
Dmitry Lemeshko
7a910632c0
bump chromedriver to 2.46.0 (#27302)
* bump chromedriver up to 2.46.0

* print chromedriver version

* [services/web_element_wrapper] use js to clear input field

* add clearValueWithKeyboard

* fix clearing datePattern input

* fix scripted fileds preview tests
2019-04-12 19:33:45 +02:00
Dmitry Lemeshko
f39339d9d3
Functional tests: improve waiting in combobox service (#34707)
* [services/lib/web_element_wrapper] set custom wait for findAll

* [services/remote] print browser name and version on init

* [services/combo_box] fix return statement

* fix lint error
2019-04-08 18:48:55 +02:00
Dmitry Lemeshko
8b0d1206a8
FTR: fix 10 sec timeout in waitForDeleted (#33313)
* use css selector instead of className, set implicit wait to 0

* set implicitWait to 2 sec

* set default implicitWait to WAIT_FOR_EXISTS_TIME

* set timeout to 1 sec, retry for query bar test

* sleep 5 sec waiting zoom is finished

* sleep is the only way to wait

* run x-pack-ciGroup3 20x times

* Revert "run x-pack-ciGroup3 20x times"

This reverts commit 55482de330.
2019-03-26 22:15:16 +01:00
Spencer
96206bd092
[eslint] merge custom rules into a single plugin (#33733)
I'd like to add another custom eslint rule, but there isn't a very good place to do that right now. We have the `eslint-plugin-kibana-custom` package, which is super simple but isn't in the `@kbn` namespace and isn't included in the root eslint config, and `@kbn/eslint-plugin-license-header` is too specific, so I've merged those two packages into `@kbn/eslint-plugin-eslint`, which is a little redundant but allows is to refer to the rules within it as `@kbn/eslint/{rule}`, which feels nice.

Thoughts?

_**NOTE:**_ merging the eslint rules from the two packages means enabling prettier for the code from `@kbn/eslint-plugin-license-header`, all those changes are made in 42c7da6fe2. [View the changes without the prettier updates](b647f2b...74e07a0)
2019-03-22 17:12:14 -07:00
Peter Pisljar
fec0f6c40a
adding runPipeline tests (#27015) 2019-03-21 07:12:25 +01:00
Spencer
a6afcc5b66
Restore webdriver-based functional test runner driver (#31446)
* Restore webdriver-based functional test runner driver

* run all function test suites 6 times per build, to help spot flakiness

* [tests/reporting] fix flaky click on report generation

* [#31446] stabilize x-pack-ciGroup6 (#31447)

* rerun x-pack-ciGroup6 40 times

* improve reporting tests stability (#31454)

* Revert "rerun x-pack-ciGroup6 40 times"

This reverts commit 63026b1a53.

* Fix Dashboard Save tests (#32112)

* [page_objects/dashboard_page] add waitDialogIsClosed to manage dashboard popup behaviour

* [page_objects/dashboard_page] add waitDialogIsClosed flag

* services: leadfoot -> webdriver

* [services/lib/web_element_wrapper] extend type with charByChar input (#32305)

* Revert "run all function test suites 6 times per build, to help spot flakiness"

This reverts commit 477099337a.
2019-03-01 17:53:05 -08:00
Spencer
a48a03cd3e
Revert "Replace Leadfoot with WebDriver API (#26477)" (#31382)
* Revert "Replace Leadfoot with WebDriver API (#26477)"

This reverts commit 0bd3b4fdfb.

* leadfoot expectes execute args to be an array

* disable flaky graphql tests
2019-02-17 18:59:03 -08:00
Spencer
b4f3808926
[ftr/elementWrapper] add findTestSubject/findTestSubjects helpers (#31364) 2019-02-17 18:00:21 -08:00
Dmitry Lemeshko
0bd3b4fdfb
Replace Leadfoot with WebDriver API (#26477)
* [services/browser] switch to webdriver API

* [services/find] switch to webdriver API

* [services/remote] update to use webdriver service

* rename WebDriver service

* [services/remote] remove browser_driver_api

* [services/find] update to use WebDriver element wrapper

* [services/web_element_wrapper] use wrapped elements

* [services/find] use element wrapped moveMouseTo function

* [services/find] fix webdriver service init, add missing functions

* add missing functions for Leadfoot Element API

* [services/web_element_wrapper] add search by tag name

* tune WebDriver API calls to match Leadfoot

* Fixed implementation of moveMouseTo that is causing el.getClientRect error.

* fix references to WebElementWrapper

* [services/find] fix findElement call on webElementWrapper object

* fix issues in find and test_subject services

* [web_element_wrapper] add search by partial link text

* [services/find] adjust wrapper functions with Leadfoot API to support tests

* fix dragAnDrop & filer on elements displayed

* [visualise_page] improve searching of bucket element

* [discover_page] wait for visualisation loaded + dragAndDrop

* [service/find] fix exists, add pressKey for element

* fixes for visualize tests

* [services/browser] update dragAnddrop

* Made change to test to use move() code path in drag and drop.

* tune page objects for chart tests

* fix discover & xpack tests

* [page_objects/upgrade_assistant] fix locator

* [page_objects/discover_page] retry on brushHistogram to fix staleElementException

* update dragAndDrop, retry on getHeaders

* retry on getTextTag

* [services/screenshots] fix webdriver image take

* skip histogram brushed test & remove --bail

* use legacyAction for dragAndDrop with offset

* add missing await

* page objects update

* increase mocha timeout to 5 min

* use data-rendering-count to track visualization loading completion

* adjust waitForVisualizationRenderingCompleted

* [page_objects/visualize_page] add waiting for visualization

* fixes for xpack functional tests

* improve logging in find & testSubjects

* [services/find] fix wrapped element usage

* [page_objects/visual_builder_page] use BACK_SPACE key, supported by WebDriver

* page objects fix

* [services/test_subjects] add async/await

* [visualize/_tile_map] add missing await in tests

* fix tile_map tests for webdriver

* replace bluebird.prop with async/await

* try to wait for rendering in openLegendOptionColors

* additional logs in find.allByCssSelector

* [services/find] fix implicit wait  handling

* fix mapping in getRowsFromTable

* add timeouts and waitForVisualisation in failed tests

* [services/test_subjects] set default timeout to FIND_TIME

* [services/test_subjects] replace bluebird.filter with for loop

* replace retry.try with waitForVisualisation

* add 'visualize' PO import

* [services/web_element_wrapper] add scrollIntoView support

* fixing kibana-intake

* fixes after merging master

* Switching browser temporarily to firefox to get a CI run on FF.

* set chrome back to default browser

* print logs for some WebElementWrapper functions

* fix _wrap function

* update NOTICE.txt

* Fixed some firefox config to get the browser working. Consolidated some of the calls to build out the driver.

* Cleaning driver instance creation

* Added network throttling option for chrome.

* fix implicit wait setting

* uncomment bail

* adjust waiting for timepicker popup

* [services/inspector] process table in sequence

* Added conditional for TEST_THROTTLE_NETWORK option along with updating the speed and comments.

* add cheerio checks

* [services/apps_menu] get links quicker via innerHtml

* install webdriver dependency via yarn

* [services/combo_box] wrap getComboBoxSelectedOptions with retry

* remove leadfoot

* [testSubjects] remove unnecessary method

* [ftr/browser] explicitly export specific keys, keep `BACKSPACE` name

* Revert "[ftr/browser] explicitly export specific keys, keep `BACKSPACE` name"

This reverts commit 779335f2d4.

* [ftr/filterBar] allow finding filters even if they're off the page

* [webdriver] write verbose logs

* [webdriver] shim executor to run all commands in series

Best we can tell WebDriver locks up sometimes when we send too many
commands at once, sometimes... It causes random lockups where we never
receive another response from WedDriver and we don't want to live with
that risk, so for now I've shimmed the Executor class in WebDiver to
queue all calls to Executor#send() if there is already a call in
progress.

* [webdriver] add comment about why we're shimming

* [webdriver] fix queue, actually put things there and take things off

* run all functional four times per build

* [webdriver] extract preventParallelCalls to test it

* Revert "run all functional four times per build"

This reverts commit f91996d977.
2019-02-16 08:29:29 +01:00
Dmitry Lemeshko
ce8753d711
use cheerio to parse table innerHtml in functional tests (#30640)
* use cheerio to parse table innerHtml in functional tests

* rename function to parseDomContent

* test Bar charts by parsing Dom

* test X & Y axis data by parsing Dom

* get X Axis data for dashboard tests with Dom parsing
2019-02-13 18:48:09 +01:00
Nathan Reese
908b387236
[Maps] add saved objects for all sample data sets (#28797)
* [Maps] add saved objects for all sample data sets

* add functional tests that compare sample data maps to baseline images

* add check for layer loading in functional tests

* try something out in CI

* try map without EMS regions

* add weblogs test but hide region layer

* skip tests with EMS vector layers

* gis-map to map and ES_GEOHASH_GRID to ES_GEO_GRID

* add resolution property to ES_GEO_GRID source descriptor

* move alphaValue from style descriptor to layer descriptor and rename to alpha

* terms join label change 'group by' to 'of'

* ensure sample data sets work with no internet access

* get functional tests working with updated full screen snapshots

* delete gis folder left overs

* give time for visibility to toggle to fire

* make web logs screen comparision more forgiving

* wait for layers to load on full screen
2019-02-04 20:18:11 -07:00