32 lines
1.1 KiB
TypeScript
32 lines
1.1 KiB
TypeScript
import { expect, test } from '@playwright/test';
|
|
|
|
test('viewer2d resolves DWG WASM, font, and sample under a production subpath', async ({
|
|
page,
|
|
}) => {
|
|
const failedRequests: string[] = [];
|
|
const responseUrls: string[] = [];
|
|
page.on('requestfailed', (request) => failedRequests.push(request.url()));
|
|
page.on('response', (response) => responseUrls.push(response.url()));
|
|
|
|
await page.goto(
|
|
'http://127.0.0.1:45173/viewer-2d/?model=/viewer-2d/samples/BasicSample.dwg',
|
|
);
|
|
await expect(page.locator('#status')).toContainText('7309 entities', { timeout: 20_000 });
|
|
await expect.poll(
|
|
() =>
|
|
({
|
|
font: responseUrls.some((url) =>
|
|
url.endsWith('/viewer-2d/fonts/NanumGothic-Regular.ttf'),
|
|
),
|
|
sample: responseUrls.some((url) =>
|
|
url.endsWith('/viewer-2d/samples/BasicSample.dwg'),
|
|
),
|
|
wasm: responseUrls.some(
|
|
(url) => url.includes('/viewer-2d/assets/') && url.endsWith('.wasm'),
|
|
),
|
|
}),
|
|
{ timeout: 20_000 },
|
|
).toEqual({ font: true, sample: true, wasm: true });
|
|
expect(failedRequests).toEqual([]);
|
|
});
|