This fixes some edge-cases that caused infinite loops: React thinks the tree has changed because of a new root component, effects fire off which change the state and cause a re-render, React thinks the tree has changed because of a new root component...
* [mocha] fix test selectors to get everything in packages
* fix paths in tests
* ignore test files that make it into target directories
* [@kbn/test] don't build test files
* move tests from datemath and test-subj pkgs into __tests__ dirs
* [kbn/test-subj] remove test script
* update yarn.lock
* upgrade all babel related modules, and bump lodash minors
* update kbn-pm dist
* update fetch-mock, necessary to use core-js 3
* use regenerator transform in jest tests, as required by EUI
* disable useBuiltIns rather than using regenerator plugin
* remove extra regenerator-runtime import
Since this is being imported by the UI as a package, we need to transpile for the
browsers we need to support.
Fixes#42782
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
* Run prettier on the files that will be refactored under @kbn/test, in a follow-up pr.
* Fixup all paths to mocha,
under kbn-test, with needed
exports/imports.
* Fixed borked path (bad refactor).
* Fixup one more borked path.
* Fixup tsconfig for xml.ts
* Drop setup_node_env as it's already
in KIBANA/scripts/mocha.js.
Also, fixup cwd for globby as we are
exec-ing from a different directory.
* [watcher] add missing await
* run x-pack-firefoxSmoke ciGroup 40 times, run watcher tests 20 times per job
* Fix failing watcher test
* Revert "run x-pack-firefoxSmoke ciGroup 40 times, run watcher tests 20 times per job"
This reverts commit c5d891d44d.
* Clean up watches via api
* fix linting errors
* don't swallow errors, wait for completion
* strip trailing numbers in suite tags
* run x-pack-firefoxSmoke group 40 times
* Revert "run x-pack-firefoxSmoke group 40 times"
This reverts commit cc4eb6ce54.
* run x-pack-firefoxSmoke group 40 times
# Conflicts:
# .ci/jobs.yml
* run tests 80 times
* Revert "run tests 80 times"
This reverts commit 4320c9488a.
* Revert "run x-pack-firefoxSmoke group 40 times"
This reverts commit cf0d4056d7.
The previous implementation of `schema.nullable()` ends up having
a problem - it only works right for `schema.nullable(schema.string())`.
For other types, like `schema.number()` and `schema.boolean()`, a `null`
value passed in does not validate.
I poked around a bit, but "it's complicated". So, went with the
suggested approach of using a `schema.maybe([V, null])` validation,
which works for number and boolean.
Added some additional tests on the `nullable` type.
We test each value to determine if it's a file, in which case we move it to the
config directory. This is required to support things like SSL certificates which
are required to be within the ES directory. path.isAbsolute evalues to true for
a regular expression. In order to resolve this, we also verify that the file
exists.
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
* Initial work
* Add integration tests
* Use constants
* Fix broken code
* Handle scenario where esArgs is a string
* Remove || []
* Apply PR feedback
* Use const format
The `nullable` type is very similar to the `maybe` type, except that
it validates nulls and undefined values to null, instead of undefined.
Eg,
maybe(T): T | undefined
nullable(T): T | null
Filters were never really meant to take part in scoring in the first place. This PR puts filters back in the filter context where they were in 4.x so they can benefit from the filter cache.