mirror of
https://github.com/maputnik/editor.git
synced 2026-07-14 01:47:27 +00:00
f14eeae38b
## Launch Checklist This PR increases coverage by adding unit tests to lib folde, replace the skipped end to end placeholder with actual tests and adds more end to end tests. This was mostly done by AI (Claude opus 4.8) and I reviewed it and requested changes where needed. - [x] Briefly describe the changes in this PR. - [x] Link to related issues. - [x] Include before/after visuals or gifs if this PR includes visual changes. - [x] Write tests for all new functionality. - [x] Add an entry to `CHANGELOG.md` under the `## main` section. --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
61 lines
1.7 KiB
TypeScript
61 lines
1.7 KiB
TypeScript
import { test, expect, describe, beforeEach } from "./utils/fixtures";
|
|
import { MaputnikDriver } from "./maputnik-driver";
|
|
import tokens from "../src/config/tokens.json" with { type: "json" };
|
|
|
|
describe("access tokens", () => {
|
|
const { given, when } = new MaputnikDriver();
|
|
|
|
const tileJson = {
|
|
tilejson: "2.2.0",
|
|
tiles: ["https://example.local/{z}/{x}/{y}.pbf"],
|
|
minzoom: 0,
|
|
maxzoom: 14,
|
|
};
|
|
|
|
beforeEach(async () => {
|
|
await given.setupMockBackedResponses();
|
|
});
|
|
|
|
test("uses the thunderforest token for a thunderforest source", async () => {
|
|
await given.interceptAndMockResponse({
|
|
method: "GET",
|
|
url: /tile\.thunderforest\.com\/.*/,
|
|
response: tileJson,
|
|
alias: "thunderforest",
|
|
});
|
|
|
|
await when.setStyle("access_tokens");
|
|
|
|
const request = await when.waitForResponse("thunderforest");
|
|
expect(request.url()).toContain(`apikey=${tokens.thunderforest}`);
|
|
});
|
|
|
|
test("uses the locationiq token for a locationiq source", async () => {
|
|
await given.interceptAndMockResponse({
|
|
method: "GET",
|
|
url: /tiles\.locationiq\.com\/.*/,
|
|
response: tileJson,
|
|
alias: "locationiq",
|
|
});
|
|
|
|
await when.setStyle("access_tokens");
|
|
|
|
const request = await when.waitForResponse("locationiq");
|
|
expect(request.url()).toContain(`key=${tokens.locationiq}`);
|
|
});
|
|
|
|
test("appends the stadia token as a query parameter", async () => {
|
|
await given.interceptAndMockResponse({
|
|
method: "GET",
|
|
url: /tiles\.stadiamaps\.com\/.*/,
|
|
response: tileJson,
|
|
alias: "stadia",
|
|
});
|
|
|
|
await when.setStyle("access_tokens");
|
|
|
|
const request = await when.waitForResponse("stadia");
|
|
expect(request.url()).toContain("?api_key=stadia-test-token");
|
|
});
|
|
});
|