consul/ui/packages/consul-ui/tests/helpers
John Cowen f111d6b3e3
ui: Dev/Test environment configurable metrics (#9345)
In order to test certain setups for our metrics visualizations we need to be able to setup several different `ui_config` settings during development/testing. Generally in the UI, we use the Web Inspector to set various cookie values to configure the UI how we need to see it whilst developing, so this PR:

1. Routes `ui_config` through a dev time only `CONSUL_UI_CONFIG` env variable so we can change it via cookies vars.
2. Adds `CONSUL_METRICS_PROXY_ENABLE`, `CONSUL_METRICS_PROVIDER` and `CONSUL_SERVICE_DASHBOARD_URL` so it's easy to set/unset these only values during development.
3. Adds an acceptance testing step so we can setup `ui_config` to whatever we want during testing.
4. Adds an async 'repository-like' method to the `UiConfig` Service so it feels like a repository - incase we ever need to get this via an HTTP API+blocking query.
5. Vaguely unrelated: we allow cookie values to be set via the location.hash whilst in development only e.g. `/ui/services#CONSUL_METRICS_PROXY_ENABLE=1` so we can link to different setups if we ever need to.

All values added here are empty/falsey by default, so in order to see how it was previously you'll need to set the appropriate cookies values, but you can now also easily preview/test the the metrics viz in different/disabled states (with differing `ui_config`)
2020-12-15 15:34:54 +00:00
..
.gitkeep ui: Move to Workspaced Structure (#8994) 2020-10-21 15:23:16 +01:00
api.js ui: Move to Workspaced Structure (#8994) 2020-10-21 15:23:16 +01:00
destroy-app.js ui: Move to Workspaced Structure (#8994) 2020-10-21 15:23:16 +01:00
flash-message.js ui: Move to Workspaced Structure (#8994) 2020-10-21 15:23:16 +01:00
get-nspace-runner.js ui: Move to Workspaced Structure (#8994) 2020-10-21 15:23:16 +01:00
measure.js ui: Move to Workspaced Structure (#8994) 2020-10-21 15:23:16 +01:00
module-for-acceptance.js ui: Move to Workspaced Structure (#8994) 2020-10-21 15:23:16 +01:00
normalizers.js ui: Move to Workspaced Structure (#8994) 2020-10-21 15:23:16 +01:00
page.js ui: Initial Intention Permission Integration and acceptance testing (#9003) 2020-10-23 17:26:06 +01:00
repo.js ui: Move to Workspaced Structure (#8994) 2020-10-21 15:23:16 +01:00
set-cookies.js ui: Move to Workspaced Structure (#8994) 2020-10-21 15:23:16 +01:00
stub-super.js ui: Move to Workspaced Structure (#8994) 2020-10-21 15:23:16 +01:00
type-to-url.js ui: Move to Workspaced Structure (#8994) 2020-10-21 15:23:16 +01:00
yadda-annotations.js ui: Dev/Test environment configurable metrics (#9345) 2020-12-15 15:34:54 +00:00