11import { test , expect } from "@playwright/test"
22
3- test ( "community events page map loads and Zurich meetup link works" , async ( {
4- page,
5- } ) => {
3+ test ( "map loads and Zurich meetup link works" , async ( { page } ) => {
64 await page . goto ( "/community/events" )
75
86 // Wait for the map canvas to be visible
@@ -43,7 +41,7 @@ test("community events page map loads and Zurich meetup link works", async ({
4341 expect ( newPage . url ( ) ) . toContain ( "meetup.com/graphql-zurich" )
4442} )
4543
46- test ( "community events map popover appears on marker hover" , async ( { page } ) => {
44+ test ( "map tooltip appears on marker hover" , async ( { page } ) => {
4745 await page . goto ( "/community/events" )
4846 const mapCanvas = page . locator ( "canvas" ) . first ( )
4947 await expect ( mapCanvas ) . toBeVisible ( { timeout : 10000 } )
@@ -53,8 +51,8 @@ test("community events map popover appears on marker hover", async ({ page }) =>
5351 return Boolean ( box && box . width > 100 && box . height > 100 )
5452 } )
5553 . toBe ( true )
56- const popover = page . locator ( '[data-testid="meetup-map-popover"]' )
57- await expect ( popover ) . toHaveCount ( 0 )
54+ const tooltip = page . getByRole ( "tooltip" )
55+ await expect ( tooltip ) . toHaveCount ( 0 )
5856 await mapCanvas . hover ( )
5957 const { clientX, clientY } = await page . evaluate ( ( ) => {
6058 const canvas = document . querySelector ( "canvas" ) as HTMLCanvasElement | null
@@ -81,7 +79,9 @@ test("community events map popover appears on marker hover", async ({ page }) =>
8179 const latToRawV = ( lat : number ) => {
8280 const clampedLat = Math . max ( - mercatorLimit , Math . min ( mercatorLimit , lat ) )
8381 const rad = ( clampedLat * Math . PI ) / 180
84- return 0.5 - Math . log ( Math . tan ( Math . PI * 0.25 + rad * 0.5 ) ) / ( 2 * Math . PI )
82+ return (
83+ 0.5 - Math . log ( Math . tan ( Math . PI * 0.25 + rad * 0.5 ) ) / ( 2 * Math . PI )
84+ )
8585 }
8686 const maxProjectedV = latToRawV ( mercatorLimit )
8787 const minProjectedV = latToRawV ( minDisplayedLatitude )
@@ -93,7 +93,9 @@ test("community events map popover appears on marker hover", async ({ page }) =>
9393 Math . min ( mercatorLimit , lat + baseLatitudeOffset ) ,
9494 )
9595 const rawV = latToRawV ( adjustedLat )
96- const normalizedV = clamp01 ( ( rawV - maxProjectedV ) / ( minProjectedV - maxProjectedV ) )
96+ const normalizedV = clamp01 (
97+ ( rawV - maxProjectedV ) / ( minProjectedV - maxProjectedV ) ,
98+ )
9799 return [ u , normalizedV ] as const
98100 }
99101 const { width, height } = canvas
@@ -117,6 +119,6 @@ test("community events map popover appears on marker hover", async ({ page }) =>
117119 return { clientX, clientY }
118120 } )
119121 await page . mouse . move ( clientX , clientY )
120- await expect ( popover ) . toHaveText ( "London GraphQL" , { timeout : 5000 } )
121- await expect ( popover ) . toBeVisible ( )
122+ await expect ( tooltip ) . toHaveText ( "London GraphQL" , { timeout : 5000 } )
123+ await expect ( tooltip ) . toBeVisible ( )
122124} )
0 commit comments