From f49d0a2d54a39d3b18e946c5c26d362a2459624d Mon Sep 17 00:00:00 2001 From: sbachinin Date: Mon, 29 Jan 2024 15:06:59 +0700 Subject: [PATCH 1/2] Test opacity of a partly visible marker --- src/ui/marker.test.ts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/ui/marker.test.ts b/src/ui/marker.test.ts index 542a94d720..b7b2af7c03 100644 --- a/src/ui/marker.test.ts +++ b/src/ui/marker.test.ts @@ -926,6 +926,23 @@ describe('marker', () => { map.remove(); }); + test('Applies options.opacity when marker\'s base is hidden by 3d terrain but its center is visible', () => { + const map = createMap(); + map.transform.lngLatToCameraDepth = () => .95; // Mocking distance to marker + const marker = new Marker({opacity: '0.7', opacityWhenCovered: '0.3'}) + .setLngLat([0, 0]) + .addTo(map); + + map.terrain = { + getElevationForLngLatZoom: () => 0, + depthAtPoint: (p) => p.y === 256 ? .95 : .92 // return "far" given the marker's center coord; return "near" otherwise + } as any as Terrain; + map.fire('terrain'); + + expect(marker.getElement().style.opacity).toMatch('.7'); + map.remove(); + }); + test('Applies options.opacityWhenCovered when marker is hidden by 3d terrain', () => { const map = createMap(); map.transform.lngLatToCameraDepth = () => .95; // Mocking distance to marker From ef6fed092325b8a7f1b3ea53de2a075689894efa Mon Sep 17 00:00:00 2001 From: sbachinin Date: Mon, 29 Jan 2024 18:06:00 +0700 Subject: [PATCH 2/2] Commit to trigger gh action --- src/ui/marker.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ui/marker.test.ts b/src/ui/marker.test.ts index b7b2af7c03..07c36679ab 100644 --- a/src/ui/marker.test.ts +++ b/src/ui/marker.test.ts @@ -929,7 +929,7 @@ describe('marker', () => { test('Applies options.opacity when marker\'s base is hidden by 3d terrain but its center is visible', () => { const map = createMap(); map.transform.lngLatToCameraDepth = () => .95; // Mocking distance to marker - const marker = new Marker({opacity: '0.7', opacityWhenCovered: '0.3'}) + const marker = new Marker({opacity: '0.7'}) .setLngLat([0, 0]) .addTo(map);