Detect and resolve documentation into Doc Detective tests. This package helps you find and process tests embedded in your documentation.
This package is part of the Doc Detective ecosystem.
npm i doc-detective-resolver
const { detectTests, resolveTests, detectAndResolveTests } = require("doc-detective-resolver");
Detects and resolves tests based on the provided configuration. This function performs the complete workflow:
- Sets and validates the configuration
- Detects tests according to the configuration
- Resolves the detected tests
Returns a promise that resolves to an object of resolved tests, or null if no tests are detected.
const { detectAndResolveTests } = require("doc-detective-resolver");
const resolvedTests = await detectAndResolveTests({ config });
Detects and processes test specifications based on provided configuration without resolving them. This function:
- Resolves configuration if not already done
- Qualifies files based on configuration
- Parses test specifications from the qualified files
Returns a promise resolving to an array of test specifications.
const { detectTests } = require("doc-detective-resolver");
const detectedTests = await detectTests({ config });
Resolves previously detected test configurations according to the provided configuration.
const { detectTests, resolveTests } = require("doc-detective-resolver");
const detectedTests = await detectTests({ config });
const resolvedTests = await resolveTests({ config, detectedTests });
This package supports npm workspaces for developing doc-detective-common
alongside the resolver. This allows you to modify both packages simultaneously and test changes together.
The workspace setup happens automatically during npm install
, but you can also set it up manually:
npm run workspace:install
This will:
- Clone the
doc-detective/common
repository intoworkspaces/doc-detective-common
- Install dependencies for the workspace package
- Set up the workspace configuration
Once set up, you can use standard npm workspace commands:
# Run tests across all workspaces
npm run workspace:test
# Build all workspace packages
npm run workspace:build
# Install a dependency in the common workspace
npm install <package> -w doc-detective-common
# Run commands in specific workspaces
npm run test -w doc-detective-common
npm run build -w doc-detective-common
NO_WORKSPACE_SETUP
- Skip workspace setup during postinstallFORCE_WORKSPACE_SETUP
- Force workspace setup even in CI environments
Looking to help out? See our contributions guide for more info. If you can't contribute code, you can still help by reporting issues, suggesting new features, improving the documentation, or sponsoring the project.