1234567891011121314151617181920212223242526272829 |
- import { loadFixture as baseLoadFixture } from '../../../astro/test/test-utils.js';
- import * as xml2js from 'xml2js';
- /**
- * @typedef {import('../../../astro/test/test-utils').Fixture} Fixture
- */
- export function loadFixture(inlineConfig) {
- if (!inlineConfig?.root) throw new Error("Must provide { root: './fixtures/...' }");
- // resolve the relative root (i.e. "./fixtures/tailwindcss") to a full filepath
- // without this, the main `loadFixture` helper will resolve relative to `packages/astro/test`
- return baseLoadFixture({
- ...inlineConfig,
- root: new URL(inlineConfig.root, import.meta.url).toString(),
- });
- }
- export function readXML(fileOrPromise) {
- const parseString = xml2js.parseString;
- return Promise.resolve(fileOrPromise).then((xml) => {
- return new Promise((resolve, reject) => {
- parseString(xml, function (err, result) {
- if (err) return reject(err);
- resolve(result);
- });
- });
- });
- }
|