jestjs/jest

Expose project matching behaviour

オープン

#11,171 opened on 2021/03/08

 (2 件のコメント) (0 件のリアクション) (0 人の担当者)TypeScript (6,653 件のフォーク)batch import
:rocket: Feature RequestHelp WantedPinned

Repository metrics

Stars
 (45,361 個のスター)
PR merge metrics
 (PR metrics pending)

説明

🚀 Feature Proposal

Expose the logic that determines what project a file belongs to. Given a file path and a Jest configuration, what options apply?

Motivation

To allow third-party tools to understand Jest configurations. E.g: https://github.com/jest-community/eslint-plugin-jest/pull/754#issuecomment-780396777

Example

I am not sure what package this logic currently resides in, but something along the lines of:

import { resolveOptions } from '@jest/options';
import { readConfig } from '@jest/config';

const config = await readConfig('/path/to/jest.config.js');
const options = await resolveOptions('/path/to/unit.test.js', config);

Pitch

The projects logic is very specific to Jest, and recreating it externally would likely be erroneous and fall out-of-date quickly.

コントリビューターガイド