📄 RuleTester.test.ts
¶
📊 Analysis Summary¶
Metric | Count |
---|---|
🔧 Functions | 78 |
📦 Imports | 10 |
📊 Variables & Constants | 29 |
📚 Table of Contents¶
🛠️ File Location:¶
📂 packages/rule-tester/tests/RuleTester.test.ts
📦 Imports¶
Name | Source |
---|---|
TSESTree |
@typescript-eslint/utils |
Linter |
@typescript-eslint/utils/ts-eslint |
RuleModule |
@typescript-eslint/utils/ts-eslint |
MockInstance |
vitest |
AST_NODE_TYPES |
@typescript-eslint/typescript-estree |
InvalidTestCase |
../src |
RuleTesterConfig |
../src |
ValidTestCase |
../src |
RuleTesterTestFrameworkFunctionBase |
../src/TestFramework |
RuleTester |
../src/RuleTester |
Variables & Constants¶
Name | Type | Kind | Value | Exported |
---|---|---|---|---|
dependencyConstraints |
any |
let/var | await importOriginal() |
✗ |
actualParser |
any |
let/var | await importOriginal() |
✗ |
EMPTY_PROGRAM |
TSESTree.Program |
const | `{ | |
body: [], | ||||
comments: [], | ||||
loc: { end: { column: 0, line: 0 }, start: { column: 0, line: 0 } }, | ||||
range: [0, 0], | ||||
sourceType: 'module', | ||||
tokens: [], | ||||
type: AST_NODE_TYPES.Program, | ||||
}` | ✗ | |||
NOOP_RULE |
RuleModule<'error'> |
const | `{ | |
create() { | ||||
return {}; | ||||
}, | ||||
defaultOptions: [], | ||||
meta: { | ||||
messages: { | ||||
error: 'error', | ||||
}, | ||||
schema: [], | ||||
type: 'problem', | ||||
}, | ||||
}` | ✗ | |||
ruleTester |
RuleTester |
const | `new RuleTester({ | |
languageOptions: { | ||||
parser, | ||||
parserOptions: { | ||||
project: 'tsconfig.json', | ||||
tsconfigRootDir: '/some/path/that/totally/exists/', | ||||
}, | ||||
}, | ||||
})` | ✗ | |||
ruleTester |
RuleTester |
const | `new RuleTester({ | |
defaultFilenames: { | ||||
ts: 'set-in-constructor.ts', | ||||
tsx: 'react-set-in-constructor.tsx', | ||||
}, | ||||
languageOptions: { | ||||
parser, | ||||
parserOptions: { | ||||
project: 'tsconfig.json', | ||||
tsconfigRootDir: '/some/path/that/totally/exists/', | ||||
}, | ||||
}, | ||||
})` | ✗ | |||
callback |
any |
const | mockedAfterAll.mock.calls[0][0] |
✗ |
ruleTester |
RuleTester |
const | `new RuleTester({ | |
linterOptions: { | ||||
reportUnusedDisableDirectives: 0, | ||||
}, | ||||
})` | ✗ | |||
ruleTester |
RuleTester |
const | `new RuleTester({ | |
languageOptions: { | ||||
parser, | ||||
parserOptions: { | ||||
project: 'tsconfig.json', | ||||
tsconfigRootDir: '/some/path/that/totally/exists/', | ||||
}, | ||||
}, | ||||
})` | ✗ | |||
ruleTester |
RuleTester |
const | `new RuleTester({ | |
languageOptions: { parser }, | ||||
})` | ✗ | |||
ruleTester |
RuleTester |
const | `new RuleTester({ | |
languageOptions: { parser }, | ||||
})` | ✗ | |||
ruleTester |
RuleTester |
const | `new RuleTester({ | |
languageOptions: { parser }, | ||||
})` | ✗ | |||
ruleTester |
RuleTester |
const | `new RuleTester({ | |
languageOptions: { parser }, | ||||
})` | ✗ | |||
ruleTester |
RuleTester |
const | `new RuleTester({ | |
languageOptions: { parser }, | ||||
})` | ✗ | |||
ruleTester |
RuleTester |
const | `new RuleTester({ | |
languageOptions: { parser }, | ||||
})` | ✗ | |||
ruleTester |
RuleTester |
const | `new RuleTester({ | |
dependencyConstraints: { | ||||
'totally-real-dependency': '999', | ||||
}, | ||||
languageOptions: { parser }, | ||||
})` | ✗ | |||
ruleTester |
RuleTester |
const | `new RuleTester({ | |
dependencyConstraints: { | ||||
'totally-real-dependency': '10', | ||||
}, | ||||
languageOptions: { parser }, | ||||
})` | ✗ | |||
ruleTester |
RuleTester |
const | new RuleTester() |
✗ |
ruleTester |
RuleTester |
const | new RuleTester() |
✗ |
noFooRule |
RuleModule<'error'> |
const | `{ | |
create(context) { | ||||
return { | ||||
'Identifier[name=foo]'(node): void { | ||||
context.report({ | ||||
messageId: 'error', | ||||
node, | ||||
}); | ||||
}, | ||||
}; | ||||
}, | ||||
defaultOptions: [], | ||||
meta: { | ||||
messages: { | ||||
error: 'error', | ||||
}, | ||||
schema: [], | ||||
type: 'problem', | ||||
}, | ||||
}` | ✗ | |||
ruleTester |
RuleTester |
const | new RuleTester() |
✗ |
ruleTester |
RuleTester |
const | new RuleTester() |
✗ |
rule |
RuleModule<'error'> |
const | `{ | |
create(context) { | ||||
return { | ||||
'Identifier[name=foo]'(node): void { | ||||
context.report({ | ||||
messageId: 'error', | ||||
node, | ||||
}); | ||||
}, | ||||
}; | ||||
}, | ||||
defaultOptions: [], | ||||
meta: { | ||||
messages: { | ||||
error: 'error', | ||||
}, | ||||
schema: [], | ||||
type: 'problem', | ||||
}, | ||||
}` | ✗ | |||
ruleTester |
RuleTester |
const | new RuleTester() |
✗ |
rule |
RuleModule<'error'> |
const | `{ | |
create(context) { | ||||
return { | ||||
'Identifier[name=foo]'(node): void { | ||||
context.report({ | ||||
fix: fixer => fixer.replaceText(node, 'bar'), | ||||
messageId: 'error', | ||||
node, | ||||
}); | ||||
}, | ||||
}; | ||||
}, | ||||
defaultOptions: [], | ||||
meta: { | ||||
fixable: 'code', | ||||
messages: { | ||||
error: 'error', | ||||
}, | ||||
schema: [], | ||||
type: 'problem', | ||||
}, | ||||
}` | ✗ | |||
ruleTester |
RuleTester |
const | new RuleTester() |
✗ |
rule |
RuleModule<'error'> |
const | `{ | |
create(context) { | ||||
return { | ||||
'Identifier[name=bar]'(node): void { | ||||
context.report({ | ||||
fix: fixer => fixer.replaceText(node, 'baz'), | ||||
messageId: 'error', | ||||
node, | ||||
}); | ||||
}, | ||||
'Identifier[name=foo]'(node): void { | ||||
context.report({ | ||||
fix: fixer => fixer.replaceText(node, 'bar'), | ||||
messageId: 'error', | ||||
node, | ||||
}); | ||||
}, | ||||
}; | ||||
}, | ||||
defaultOptions: [], | ||||
meta: { | ||||
fixable: 'code', | ||||
messages: { | ||||
error: 'error', | ||||
}, | ||||
schema: [], | ||||
type: 'problem', | ||||
}, | ||||
}` | ✗ | |||
ruleTester |
RuleTester |
const | new RuleTester() |
✗ |
ruleModule |
`RuleModule< | |||
'customErrorBar' | 'customErrorFoo', | |||
[{ flag: 'bar' | 'foo' }?] | |||
>| const | { |
||||
create(context) { | ||||
const [{ flag } = {}] = context.options; | ||||
return { | ||||
Identifier(node) { | ||||
if (node.name === 'foo' && flag === 'foo') { | ||||
context.report({ messageId: 'customErrorFoo', node }); | ||||
} | ||||
if (node.name === 'bar' && flag === 'bar') { | ||||
context.report({ messageId: 'customErrorBar', node }); | ||||
} | ||||
}, | ||||
}; | ||||
}, | ||||
defaultOptions: [], | ||||
meta: { | ||||
messages: { | ||||
customErrorBar: 'Error custom Bar', | ||||
customErrorFoo: 'Error custom Foo', | ||||
}, | ||||
schema: [ | ||||
{ | ||||
additionalProperties: false, | ||||
properties: { | ||||
flag: { enum: ['foo', 'bar'], type: 'string' }, | ||||
}, | ||||
type: 'object', | ||||
}, | ||||
], | ||||
type: 'suggestion', | ||||
}, | ||||
}` | ✗ |
Functions¶
IMMEDIATE_CALLBACK(_: string, cb: () => void): void
¶
- Parameters:
_: string
cb: () => void
- Return Type:
void
- Calls:
cb
getTestConfigFromCall(): unknown[]
¶
Code
- Return Type:
unknown[]
- Calls:
runRuleForItemSpy.mock.calls.map
c[2].filename?.replaceAll
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
fix(fixer: any): any
¶
- Parameters:
fixer: any
- Return Type:
any
- Calls:
fixer.replaceText
generateValidTestCase(): ValidTestCase<[{ flag: 'foo' }]>
¶
Code
- Return Type:
ValidTestCase<[{ flag: 'foo' }]>
generateIncompatibleValidTestCase(): ValidTestCase<unknown[]>
¶
Code
- Return Type:
ValidTestCase<unknown[]>
`generateInvalidTestCase(): InvalidTestCase<¶
'customErrorBar',
[{ flag: 'bar' }]
>`
Code
- Return Type:
InvalidTestCase< 'customErrorBar', [{ flag: 'bar' }] >
`generateIncompatibleInvalidTestCase(): InvalidTestCase<¶
'customErrorBar' | 'customErrorBaz',
unknown[]
>`
Code
- Return Type:
InvalidTestCase< 'customErrorBar' | 'customErrorBaz', unknown[] >