ava/use-t-well

April 6, 2026 ยท View on GitHub

๐Ÿ“ Disallow incorrect use of t.

๐Ÿ’ผ This rule is enabled in the โœ… recommended config.

๐Ÿ”ง This rule is automatically fixable by the --fix CLI option.

Translations: Franรงais

Prevent the use of unknown assertion methods and the access to members other than the assertion methods and .context, as well as some known misuses of t.

This rule is partly fixable. It can fix most misspelled assertion method names, suggest AVA equivalents for common assertion names from other test frameworks (tape, Jest, node:assert), and fix duplicate .skip modifiers on supported assertion chains.

Examples

import test from 'ava';

test('main', t => {
	// โŒ
	t(value); // `t` is not a function
	t.depEqual(value, [2]); // Misspelled `.deepEqual` as `.depEqual`, fixable
	t.ok(value); // Unknown assertion method `.ok`. Did you mean `.truthy`?, fixable
	t.equal(a, b); // Unknown assertion method `.equal`. Did you mean `.is`?, fixable
	t.contxt.foo = 100; // Misspelled `.context` as `.contxt`, fixable
	t.deepEqual.skip.skip(); // Too many chained uses of `.skip`, fixable
	t.skip.deepEqual(1, 1); // Unknown assertion method `.skip`
	t.foo = 1000; // Unknown member `.foo`. Use `.context.foo` instead
	t.deepEqual.is(value, value); // Can't chain assertion methods
	t.skip(); // Missing assertion method

	// โœ…
	t.deepEqual(value, [2]);
	t.context.a = 100;
	require(`fixtures/${t.title}`);
	t.deepEqual.skip();
});