51 Commits

Author SHA1 Message Date
d61af3adde Dashboards: Data source template variable options now specify a current value using uid. (#69259)
* feat: template data source option current by uid

* fix: e2e with explicit uid for "slow-prometheus"

* revert: unrelated change

* revert: unreverted the actually related change

* chore: e2e support for testing ${variable:text}

* fix: use `:raw` instead of `:value` in e2e dashboard
2023-06-12 01:05:50 -07:00
9890ff7c92 PublicDashboards: Audit table redesign (#68137) 2023-05-29 12:59:29 -03:00
4abe0249ba Chore: Clean up old navigation (#66287)
* remove code outside of the topnav feature flag

* delete NavBar folder

* remove topnav toggle from backend

* restructure AppChrome folder

* fix utils mock

* fix applinks tests

* remove tests since they're covered in e2e

* fix 1 of the approotpage tests

* Fix another dashboardpage test

* remove reverse portalling + test for plugins using deprecated onNavChanged method

* kick drone

* handle correlations
2023-04-14 09:43:11 +01:00
1261345b81 Chore: Upgrade to react 18 (#64428)
* update react 18 related deps

* fix some types

* make sure we're on react-router-dom >= 5.3.3

* Use new root API

* Remove StrictMode for now - react 18 double rendering causes issues

* fix + ignore some @grafana/ui types

* fix some more types

* use renderHook from @testing-library/react in almost all cases

* fix storybook types

* rewrite useDashboardSave to not use useEffect

* make props optional

* only render if props are provided

* add correct type for useCallback

* make resourcepicker tests more robust

* fix ModalManager rendering

* fix some more unit tests

* store the click coordinates in a ref as setState is NOT synchronous

* fix remaining e2e tests

* rewrite dashboardpage tests to avoid act warnings

* undo lint ignores

* fix ExpanderCell types

* set SymbolCell type correctly

* fix QueryAndExpressionsStep

* looks like the types were actually wrong instead :D

* undo this for now...

* remove spinner waits

* more robust tests

* rewrite errorboundary test to not explicitly count the number of renders

* make urlParam expect async

* increase timeout in waitFor

* revert ExplorePage test changes

* Update public/app/features/dashboard/containers/DashboardPage.test.tsx

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Update public/app/features/dashboard/containers/PublicDashboardPage.test.tsx

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Update public/app/features/dashboard/containers/PublicDashboardPage.test.tsx

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Update public/app/features/dashboard/containers/PublicDashboardPage.test.tsx

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* skip fakeTimer test, ignore table types for now + other review comments

* update package peerDeps

* small tweak to resourcepicker test

* update lockfile...

* increase timeout in sharepublicdashboard tests

* ensure ExplorePaneContainer passes correct queries to initializeExplore

* fix LokiContextUI test

* fix unit tests

* make importDashboard flow more consistent

* wait for dashboard name before continuing

* more test fixes

* readd dashboard name to variable e2e tests

* wait for switches to be enabled before clicking

* fix modal rendering

* don't use @testing-library/dom directly

* quick fix for rendering of panels in firefox

* make PromQueryField test more robust

* don't wait for chartData - in react 18 this can happen before the wait code even gets executed

---------

Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2023-04-11 10:51:54 +01:00
38482c90bf Build URL params and include requestId (#65742)
* add requestId and ds_type to datasource request url
2023-04-06 14:43:10 -05:00
a123e0a97c e2e tests: Add selector to close dashboard settings and use it in e2e tests (#65625)
* add selector to close dashboard settings and use it in e2e tests

* check visibility of add panel button

* check visibility of add new panel button before clicking
2023-03-31 09:32:44 +01:00
a6b2bc3997 Navigation: Enable new navigation by default (#65335)
* enable topnav by default

* rename dashboard-search to dashboard-browse

* wait for time to be set in e2e test before attempting to click button

* update toggle description
2023-03-30 10:42:43 +01:00
27e2b037ae Chore: Use DOMPurify to sanitize strings rather than js-xss (#62787)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2023-03-16 19:13:34 +02:00
5b8c2f494d Chore: convert VariableOptions to use emotion instead of scss (#64135)
convert VariableOptions to use emotion instead of scss
2023-03-07 11:13:57 +00:00
c59682fad6 PublicDashboards: Paused or deleted public dashboard screen (#63970) 2023-03-03 10:12:29 -03:00
9df4a39195 PublicDashboards: Configuration modal redesign (#63211)
Configuration modal redesign

---------

Co-authored-by: kay delaney <kay@grafana.com>
2023-02-24 12:36:29 -03:00
7005b7bf8a Navigation: Update e2e tests to work with topnav (#60910)
* turn on topnav toggle in e2e tests

* fix variable e2e tests

* fix remaining tests + remove some hardcoded waits

* speculative fixes

* wait for error to disappear

* use new selector, turn toggle back off
2023-01-04 14:59:53 +00:00
ba6d2f2a82 Chore: improve some more types (#60476)
* improve some more types

* fixes

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2022-12-20 13:07:57 +00:00
766867735d E2E: Fix flakiness for dashboard-search spec (#58950) 2022-11-18 14:55:34 +01:00
20133ec6fb Variables: Use new format registry from templateSrv (#58813)
* Variables: Use new format registry from templateSrv

* Updated comment

* Fixed e2e
2022-11-16 14:55:31 +01:00
8c585a4ebf Scene: Variables interpolation formats and multi value handling (#58591)
* Component that can cache and extract variable dependencies

* Component that can cache and extract variable dependencies

* Updates

* Refactoring

* Lots of refactoring and iterations of supporting both re-rendering and query re-execution

* Updated SceneCanvasText

* Updated name of file

* Updated

* Refactoring a bit

* Added back getName

* Added comment

* minor fix

* Minor fix

* Merge fixes

* Scene variable interpolation progress

* Merge fixes

* Added all format registeries

* Progress on multi value support

* Progress on multi value support

* Updates

* Progress on scoped vars

* Fixed circular dependency

* Updates

* Some review fixes

* Updated comment

* Added forceRender function

* Add back fail on console log

* Update public/app/features/scenes/variables/interpolation/sceneInterpolator.test.ts

* Moving functions from SceneObjectBase

* fixing tests

* Fixed e2e

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2022-11-16 11:36:30 +01:00
d4e3d47f56 Chore: Disable dashboard-time-zone e2e tests (#58320) 2022-11-07 06:37:47 -05:00
6fcc5b42c0 publicdashboards: split create/update api paths (#57940)
This PR splits the create and update paths for public dashboards and includes assorted refactors toward a proper REST API. Additionally, we removed the concept of a "public dashboard config" in favor of "public dashboard" 

Co-authored-by: juanicabanas <juan.cabanas@grafana.com>
Co-authored-by: Ezequiel Victorero <ezequiel.victorero@grafana.com>
2022-11-03 11:30:12 -08:00
6b7d6fe0cb public dashboards: rename route paths (#57787)
This PR fixes the naming of routes for public dashboards to be more accurate and descriptive.

Co-authored-by: Ezequiel Victorero <ezequiel.victorero@grafana.com>
2022-10-27 14:41:56 -08:00
45edce90d3 VariableEditor: Use new form styles (#56326) 2022-10-12 09:43:41 +01:00
7fd613ec0d E2E: Remove time zone scenario flackyness (#55458)
Co-authored-by: polinaboneva <polina.boneva@grafana.com>
2022-10-05 16:00:33 +03:00
202dce66ff Search: add basic e2e test for the folder view (#55820) 2022-09-28 09:46:24 +04:00
c7419de2e5 PublicDashboard: Add RTK Query with loading and error state. Add MSW dependency for testing. (#55518)
PublicDashboard: Add RTK Query with loading and error state. Add MSW dependency for testing.
2022-09-22 09:35:04 -03:00
6e99d8bba5 PublicDashboards: Add wait when fetching public dashboard data in e2e… (#55096) 2022-09-13 13:24:50 -03:00
76edf1a727 PublicDashboards: Fix flaky e2e test (#54864) 2022-09-08 09:18:40 -03:00
264645eecd TopNav: Dashboard settings (#52682)
* Scenes: Support new top nav

* Page: Make Page component support new and old dashboard page layouts

* Pass scrollbar props

* Fixing flex layout for dashboard

* Progress on dashboard settings working with topnav

* Updated

* Annotations working

* Starting to work fully

* Fix merge issue

* Fixed tests

* Added buttons to annotations editor

* Updating tests

* Move Page component to each page

* fixed general settings page

* Fixed versions

* Fixed annotation item page

* Variables section working

* Fixed tests

* Minor fixes to versions

* Update

* Fixing unit tests

* Adding add variable button

* Restore annotations edit form so it's the same as before

* Fixed semicolon in dashboard permissions

* Fixing unit tests

* Fixing tests

* Minor test update

* Fixing unit test

* Fixing e2e tests

* fix for e2e test

* fix a11y issues

* Changing places Settings -> General

* Trying to fix a11y

* I hope this fixes the e2e test

* Fixing merge issue

* tweak
2022-08-24 18:05:12 +02:00
0b322a0f5d fix some anys (#53789) 2022-08-19 16:46:58 +01:00
fecf4c41ad Dashboard: Spelling corrections in end-user visible dialogs (#53340) 2022-08-09 10:19:30 +02:00
7f43839813 Chore: disable flaky e2e test (#53408)
* Chore: disable flaky e2e test
2022-08-08 11:34:59 -04:00
e0d71f02b1 Public Dashboards: add e2e tests for public dashboards (#52970) 2022-08-01 11:20:49 -03:00
6781041860 Import: prevent recursion blowup in redux + reintroduce import e2e test (#52985)
* prevent recursion blowup in redux, attempt to reintroduce import e2e test

* try importing json like this instead?

* need the panel validation

* Update text so it finds Panel data instead of Dataframe JSON

* skip test for now
2022-08-01 12:53:31 +01:00
f83f05d6b3 Variables: variables in Markdown links are not interpolated (#51392)
* on a text panel first interpolate, then markdown, then sanitize;

* update devenv dashboard + e2e tests

* fix typo and undo changes in grafana/data

* handling of config option disableSanitizeHtml more readable when preparing markdown in text panel

* betterer

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-06-29 15:26:31 +03:00
94d585063e Dashboard: Prevent non-repeating panels being dropped from repeated rows when collapsed/expanded (#50764)
* Mob: fix issue with repeating panels+rows, add e2e test

Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: polibb <polina.boneva@grafana.com>

* Fix describe block description

Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: polibb <polina.boneva@grafana.com>
2022-06-15 11:07:54 +01:00
bb7e556efc Templating: Prefix variable picker element IDs (#48405) 2022-05-04 11:04:15 +02:00
3c6e0e8ef8 Chore: ESlint import order (#44959)
* Add and configure eslint-plugin-import

* Fix the lint:ts npm command

* Autofix + prettier all the files

* Manually fix remaining files

* Move jquery code in jest-setup to external file to safely reorder imports

* Resolve issue caused by circular dependencies within Prometheus

* Update .betterer.results

* Fix missing // @ts-ignore

* ignore iconBundle.ts

* Fix missing // @ts-ignore
2022-04-22 14:33:13 +01:00
ff60f39e96 Revert "DataLinks: Encode variable params for data link URLs (#46100)" (#47763)
This reverts commit b47f5433d7534ab8623d69a3fd08ea1bd09297ae.
2022-04-20 10:15:36 +01:00
b47f5433d7 DataLinks: Encode variable params for data link URLs (#46100) 2022-03-04 17:05:56 +00:00
b1125c0ba3 TextPanel: Sanitize after markdown has been rendered to html (#46166)
* Sanitize after markdown has been rendered to html

* Update e2e test
2022-03-03 16:50:09 +00:00
0036233fa6 Chore: fix flaky e2e (#45822) 2022-02-24 10:34:49 +00:00
bb5a39faef Chore: Enables flakey e2e test (#45816) 2022-02-24 09:55:00 +00:00
cbf96e6a8b remove flaky cloudwatch test (#45800)
* remove flaky cloudwatch test

* remove unused code that was only in flaking test

* okay i guess they're both flaky

* Skip flaking templating-dashboard-links-and-variables test
2022-02-23 13:59:53 -06:00
a552e7323f Improve existing e2e repeat tests a bit (#45001)
* Improve existing e2e repeat tests a bit

* nicer menu blur
2022-02-07 16:24:30 +00:00
f1b2e2b7ff Chore: More variable e2e tests (#44803)
* Add Datasource variable e2e tests

* Update other tests

* Fix names/comments in tests

* Add Interval variable tests

* fix typo
2022-02-04 12:37:01 +11:00
6211ca4d3d Chore: Move variable field selectors to data-testid (#44801)
* Chore: Move variable field selectors to data-testid

* Fix data source variable editor selector

* fix test
2022-02-04 11:55:19 +11:00
ce4d8646fd Chore: E2E tests for various variables types (#44747)
* Pass data-testid into VariableTextEditorField

* Add e2e tests for custom variables

* Rename query variable specs to match others

* Add e2e tests for Text Box variables

* manually remove id: null

* Add tests for constant variables
2022-02-03 09:58:56 +11:00
6de9d241a6 E2E: adds back missing e2e specs (#44576)
* E2E: adds back missing e2e specs

* Chore: removes wrong import directive
2022-01-28 10:39:43 +01:00
1966eba796 Chore: Add some e2e tests for repeating behaviour (#43457)
* user essentials mob! 🔱

* user essentials mob! 🔱

* WIP: Mob session work 🚧 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* mob next [ci-skip] [ci skip] [skip ci]

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* 🚧: Mob session work 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* Move repeats suite under dashboard suite

* remove these generated files

* move repeats-suite into dashboards-suite

* Reexport dashboard jsons from play and update them

* 🚧: Mob session work 🔱

* 🚧: Mob session work 🔱

* Rename dashboards to work with stripnulls

* Run stripnulls

* Add repeat to row schema

* Clean up the rest of the repeating dashboards

* Fix tooltip sorting

* Update older dashboards

* Update golden files so tests pass

* format this to ensure consistent tabs/spaces

* undo whitespace changes

* Update scripts/stripnulls.sh

Co-authored-by: sam boyer <sam.boyer@grafana.com>

* update schema versions and test

Co-authored-by: thisisobate <obasiuche62@gmail.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
Co-authored-by: sam boyer <sam.boyer@grafana.com>
2022-01-11 16:47:30 +00:00
9f4aa472cf Select: Fix input cursor position so that it is at the start for single value selects (#41693)
* Select: Fix input cursor position so that it is at the start for single value selects

* Fixing e2e tests

* Fixes cursor issue

* Fixing e2e tests

* e2e fix

* Select: ensure input always overlays singleValue, update pa11y config

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-26 15:38:48 +00:00
12d2b9e997 E2E: Skip running import dashboard test (#42270) 2021-11-25 09:43:24 +01:00
0f6ae272e9 E2E: Fix running any suite locally (#42210)
* e2e: Fix running any suite locally

* Fixed issue with testFiles filter when specifying suite name

* unrelated

* fixed import paths to shared

* Moving dashboards to root
2021-11-24 15:16:51 +01:00