mirror of https://github.com/grafana/grafana.git
				
				
				
			Explore: Fix encoding of internal URLs (#36919)
* Encode internal explore url * Fix tests * Fix comma
This commit is contained in:
		
							parent
							
								
									8af83b8b78
								
							
						
					
					
						commit
						93b4cc7035
					
				|  | @ -644,7 +644,7 @@ describe('getLinksSupplier', () => { | |||
|     expect(links[0]).toEqual( | ||||
|       expect.objectContaining({ | ||||
|         title: 'testDS', | ||||
|         href: '/explore?left={"datasource":"testDS","queries":["12345"]}', | ||||
|         href: `/explore?left=${encodeURIComponent('{"datasource":"testDS","queries":["12345"]}')}`, | ||||
|         onClick: undefined, | ||||
|       }) | ||||
|     ); | ||||
|  |  | |||
|  | @ -31,7 +31,7 @@ describe('mapInternalLinkToExplore', () => { | |||
|     expect(link).toEqual( | ||||
|       expect.objectContaining({ | ||||
|         title: 'dsName', | ||||
|         href: '/explore?left={"datasource":"dsName","queries":[{"query":"12344"}]}', | ||||
|         href: `/explore?left=${encodeURIComponent('{"datasource":"dsName","queries":[{"query":"12344"}]}')}`, | ||||
|         onClick: undefined, | ||||
|       }) | ||||
|     ); | ||||
|  |  | |||
|  | @ -67,11 +67,13 @@ export function mapInternalLinkToExplore(options: LinkToExploreOptions): LinkMod | |||
|  */ | ||||
| function generateInternalHref<T extends DataQuery = any>(datasourceName: string, query: T, range: TimeRange): string { | ||||
|   return locationUtil.assureBaseUrl( | ||||
|     `/explore?left=${serializeStateToUrlParam({ | ||||
|     `/explore?left=${encodeURIComponent( | ||||
|       serializeStateToUrlParam({ | ||||
|         range: range.raw, | ||||
|         datasource: datasourceName, | ||||
|         queries: [query], | ||||
|     })}` | ||||
|       }) | ||||
|     )}` | ||||
|   ); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -59,7 +59,9 @@ describe('createSpanLinkFactory', () => { | |||
|       } as any); | ||||
| 
 | ||||
|       expect(linkDef.href).toBe( | ||||
|         `/explore?left={"range":{"from":"2020-10-14T01:00:00.000Z","to":"2020-10-14T01:00:01.000Z"},"datasource":"loki1","queries":[{"expr":"{cluster=\\"cluster1\\", hostname=\\"hostname1\\"}","refId":""}]}` | ||||
|         `/explore?left=${encodeURIComponent( | ||||
|           '{"range":{"from":"2020-10-14T01:00:00.000Z","to":"2020-10-14T01:00:01.000Z"},"datasource":"loki1","queries":[{"expr":"{cluster=\\"cluster1\\", hostname=\\"hostname1\\"}","refId":""}]}' | ||||
|         )}` | ||||
|       ); | ||||
|     }); | ||||
| 
 | ||||
|  | @ -91,7 +93,9 @@ describe('createSpanLinkFactory', () => { | |||
|       } as any); | ||||
| 
 | ||||
|       expect(linkDef.href).toBe( | ||||
|         `/explore?left={"range":{"from":"2020-10-14T01:00:00.000Z","to":"2020-10-14T01:00:01.000Z"},"datasource":"loki1","queries":[{"expr":"{ip=\\"192.168.0.1\\"}","refId":""}]}` | ||||
|         `/explore?left=${encodeURIComponent( | ||||
|           '{"range":{"from":"2020-10-14T01:00:00.000Z","to":"2020-10-14T01:00:01.000Z"},"datasource":"loki1","queries":[{"expr":"{ip=\\"192.168.0.1\\"}","refId":""}]}' | ||||
|         )}` | ||||
|       ); | ||||
|     }); | ||||
| 
 | ||||
|  | @ -126,7 +130,9 @@ describe('createSpanLinkFactory', () => { | |||
|       } as any); | ||||
| 
 | ||||
|       expect(linkDef.href).toBe( | ||||
|         `/explore?left={"range":{"from":"2020-10-14T01:00:00.000Z","to":"2020-10-14T01:00:01.000Z"},"datasource":"loki1","queries":[{"expr":"{ip=\\"192.168.0.1\\", host=\\"host\\"}","refId":""}]}` | ||||
|         `/explore?left=${encodeURIComponent( | ||||
|           '{"range":{"from":"2020-10-14T01:00:00.000Z","to":"2020-10-14T01:00:01.000Z"},"datasource":"loki1","queries":[{"expr":"{ip=\\"192.168.0.1\\", host=\\"host\\"}","refId":""}]}' | ||||
|         )}` | ||||
|       ); | ||||
|     }); | ||||
| 
 | ||||
|  | @ -163,7 +169,9 @@ describe('createSpanLinkFactory', () => { | |||
|       } as any); | ||||
| 
 | ||||
|       expect(linkDef.href).toBe( | ||||
|         `/explore?left={"range":{"from":"2020-10-14T01:01:00.000Z","to":"2020-10-14T01:01:01.000Z"},"datasource":"loki1","queries":[{"expr":"{hostname=\\"hostname1\\"}","refId":""}]}` | ||||
|         `/explore?left=${encodeURIComponent( | ||||
|           '{"range":{"from":"2020-10-14T01:01:00.000Z","to":"2020-10-14T01:01:01.000Z"},"datasource":"loki1","queries":[{"expr":"{hostname=\\"hostname1\\"}","refId":""}]}' | ||||
|         )}` | ||||
|       ); | ||||
|     }); | ||||
|   }); | ||||
|  |  | |||
|  | @ -49,7 +49,9 @@ describe('getFieldLinksForExplore', () => { | |||
|     const links = getFieldLinksForExplore({ field, rowIndex: 0, splitOpenFn: splitfn, range }); | ||||
| 
 | ||||
|     expect(links[0].href).toBe( | ||||
|       '/explore?left={"range":{"from":"now-1h","to":"now"},"datasource":"test_ds","queries":[{"query":"query_1"}]}' | ||||
|       `/explore?left=${encodeURIComponent( | ||||
|         '{"range":{"from":"now-1h","to":"now"},"datasource":"test_ds","queries":[{"query":"query_1"}]}' | ||||
|       )}` | ||||
|     ); | ||||
|     expect(links[0].title).toBe('test_ds'); | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue