mirror of https://github.com/grafana/grafana.git
				
				
				
			
		
			
	
	
		
			84 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
		
		
			
		
	
	
			84 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
|  | import { test, expect } from '@grafana/plugin-e2e'; | ||
|  | 
 | ||
|  | const DASHBOARD_ID = 'P2jR04WVk'; | ||
|  | 
 | ||
|  | test.describe( | ||
|  |   'Panels test: Geomap layer controls options', | ||
|  |   { | ||
|  |     tag: ['@panels'], | ||
|  |   }, | ||
|  |   () => { | ||
|  |     test('Tests map controls options', async ({ gotoDashboardPage, selectors, page }) => { | ||
|  |       const dashboardPage = await gotoDashboardPage({ | ||
|  |         uid: DASHBOARD_ID, | ||
|  |         queryParams: new URLSearchParams({ editPanel: '1' }), | ||
|  |       }); | ||
|  | 
 | ||
|  |       // Wait until the query editor has been loaded by ensuring that the QueryEditor select contains the text 'flight_info_by_state.csv'
 | ||
|  |       await expect( | ||
|  |         page.locator(selectors.components.Select.singleValue('')).getByText('flight_info_by_state.csv') | ||
|  |       ).toBeVisible(); | ||
|  | 
 | ||
|  |       const mapControlsGroup = dashboardPage.getByGrafanaSelector( | ||
|  |         selectors.components.OptionsGroup.group('Map controls') | ||
|  |       ); | ||
|  |       await expect(mapControlsGroup).toBeVisible(); | ||
|  | 
 | ||
|  |       // Show zoom field
 | ||
|  |       const showZoomField = dashboardPage.getByGrafanaSelector(selectors.components.PanelEditor.showZoomField); | ||
|  |       await expect(showZoomField).toBeVisible(); | ||
|  |       const zoomCheckbox = showZoomField.locator('input[type="checkbox"]'); | ||
|  |       await zoomCheckbox.check({ force: true }); | ||
|  |       await expect(zoomCheckbox).toBeChecked(); | ||
|  | 
 | ||
|  |       // Show attribution
 | ||
|  |       const showAttributionField = dashboardPage.getByGrafanaSelector( | ||
|  |         selectors.components.PanelEditor.showAttributionField | ||
|  |       ); | ||
|  |       await expect(showAttributionField).toBeVisible(); | ||
|  |       const attributionCheckbox = showAttributionField.locator('input[type="checkbox"]'); | ||
|  |       await attributionCheckbox.check({ force: true }); | ||
|  |       await expect(attributionCheckbox).toBeChecked(); | ||
|  | 
 | ||
|  |       // Show scale
 | ||
|  |       const showScaleField = dashboardPage.getByGrafanaSelector(selectors.components.PanelEditor.showScaleField); | ||
|  |       await expect(showScaleField).toBeVisible(); | ||
|  |       const scaleCheckbox = showScaleField.locator('input[type="checkbox"]'); | ||
|  |       await scaleCheckbox.check({ force: true }); | ||
|  |       await expect(scaleCheckbox).toBeChecked(); | ||
|  | 
 | ||
|  |       // Show measure tool
 | ||
|  |       const showMeasureField = dashboardPage.getByGrafanaSelector(selectors.components.PanelEditor.showMeasureField); | ||
|  |       await expect(showMeasureField).toBeVisible(); | ||
|  |       const measureCheckbox = showMeasureField.locator('input[type="checkbox"]'); | ||
|  |       await measureCheckbox.check({ force: true }); | ||
|  |       await expect(measureCheckbox).toBeChecked(); | ||
|  | 
 | ||
|  |       // Show debug
 | ||
|  |       const showDebugField = dashboardPage.getByGrafanaSelector(selectors.components.PanelEditor.showDebugField); | ||
|  |       await expect(showDebugField).toBeVisible(); | ||
|  |       const debugCheckbox = showDebugField.locator('input[type="checkbox"]'); | ||
|  |       await debugCheckbox.check({ force: true }); | ||
|  |       await expect(debugCheckbox).toBeChecked(); | ||
|  | 
 | ||
|  |       const panelContent = dashboardPage.getByGrafanaSelector(selectors.components.Panels.Panel.content); | ||
|  |       await expect(panelContent).toBeVisible(); | ||
|  | 
 | ||
|  |       // Verify zoom
 | ||
|  |       await expect(panelContent.locator('.ol-zoom')).toBeVisible(); | ||
|  | 
 | ||
|  |       // Verify attribution
 | ||
|  |       await expect(panelContent.locator('.ol-attribution')).toBeVisible(); | ||
|  | 
 | ||
|  |       // Verify scale
 | ||
|  |       await expect(panelContent.locator('.ol-scale-line')).toBeVisible(); | ||
|  | 
 | ||
|  |       // Verify measure tool
 | ||
|  |       await expect(dashboardPage.getByGrafanaSelector(selectors.components.PanelEditor.measureButton)).toBeVisible(); | ||
|  | 
 | ||
|  |       // Verify debug tool
 | ||
|  |       await expect(dashboardPage.getByGrafanaSelector(selectors.components.DebugOverlay.wrapper)).toBeVisible(); | ||
|  |     }); | ||
|  |   } | ||
|  | ); |