diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2025-10-15 14:52:26 -0300 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2025-10-15 14:52:49 -0300 |
commit | da27189f09c185089cd77b8ea5199b66a6c031c0 (patch) | |
tree | 110aa0cfa1bdfe65c0932abfb7a8e3f77e4e673a /src | |
parent | 3cb93cd6f21c2df1c79107b347e501d12b451fe2 (diff) |
test, urls: get content-function unit test infra working, probably
Diffstat (limited to 'src')
-rw-r--r-- | src/url-spec.js | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/url-spec.js b/src/url-spec.js index 75cd8006..2e8b9fc1 100644 --- a/src/url-spec.js +++ b/src/url-spec.js @@ -1,6 +1,7 @@ // Exports defined here are re-exported through urls.js, // so they're generally imported from '#urls'. +import {readFileSync} from 'node:fs'; import {readFile} from 'node:fs/promises'; import * as path from 'node:path'; import {fileURLToPath} from 'node:url'; @@ -195,6 +196,24 @@ export async function processURLSpecFromFile(file) { error => annotateErrorWithFile(error, file)); } + return processURLSpecFromFileContents(file, contents); +} + +export function processURLSpecFromFileSync(file) { + let contents; + + try { + contents = readFileSync(file, 'utf-8'); + } catch (caughtError) { + throw annotateError( + new Error(`Failed to read URL spec file`, {cause: caughtError}), + error => annotateErrorWithFile(error, file)); + } + + return processURLSpecFromFileContents(file, contents); +} + +function processURLSpecFromFileContents(file, contents) { let sourceSpec; let parseLanguage; |