mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
* user essentials mob! 🔱 lastFile:public/app/plugins/panel/dashlist/DashList.tsx * DashList: Update variables in URL when they change Co-authored-by: eledobleefe <laura.fernandez@grafana.com> Co-authored-by: Joao Silva <joao.silva@grafana.com> Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com> * add e2e test to check dashlist variables are always correctly passed * add comment with link to issue * Alternative solution * Minor tweaks * revert accidental change * fix * New solution * Fix test * refinement * Added unit test * Update devenv/dev-dashboards/panel-dashlist/dashlist.json Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com> --------- Co-authored-by: Joao Silva <joao.silva@grafana.com> Co-authored-by: joshhunt <josh@trtr.co> Co-authored-by: eledobleefe <laura.fernandez@grafana.com> Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
38 lines
1.4 KiB
TypeScript
38 lines
1.4 KiB
TypeScript
import { e2e } from '../utils';
|
|
const PAGE_UNDER_TEST = 'a6801696-cc53-4196-b1f9-2403e3909185/panel-tests-dashlist-variables';
|
|
|
|
describe('DashList panel', () => {
|
|
beforeEach(() => {
|
|
e2e.flows.login(Cypress.env('USERNAME'), Cypress.env('PASSWORD'));
|
|
});
|
|
|
|
// this is to prevent the fix for https://github.com/grafana/grafana/issues/76800 from regressing
|
|
it('should pass current variable values correctly when `Include current template variable values` is set', () => {
|
|
e2e.flows.openDashboard({ uid: PAGE_UNDER_TEST });
|
|
|
|
// check the initial value of the urls contain the variable value correctly
|
|
e2e.components.Panels.Panel.title('Include time range and variables enabled')
|
|
.should('be.visible')
|
|
.within(() => {
|
|
cy.get('a').each(($el) => {
|
|
cy.wrap($el).should('have.attr', 'href').and('contain', 'var-server=A');
|
|
});
|
|
});
|
|
|
|
// update variable to b
|
|
e2e.pages.Dashboard.SubMenu.submenuItemLabels('server').click();
|
|
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownOptionTexts('B').click();
|
|
// blur the dropdown
|
|
cy.get('body').click();
|
|
|
|
// check the urls are updated with the new variable value
|
|
e2e.components.Panels.Panel.title('Include time range and variables enabled')
|
|
.should('be.visible')
|
|
.within(() => {
|
|
cy.get('a').each(($el) => {
|
|
cy.wrap($el).should('have.attr', 'href').and('contain', 'var-server=B');
|
|
});
|
|
});
|
|
});
|
|
});
|