no_alias_methods

package
v0.5.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 14, 2026 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var NoAliasMethodsRule = rule.Rule{
	Name: "jest/no-alias-methods",
	Run: func(ctx rule.RuleContext, options any) rule.RuleListeners {
		return rule.RuleListeners{
			ast.KindCallExpression: func(node *ast.Node) {
				jestFnCall := utils.ParseJestFnCall(node, ctx)
				if jestFnCall == nil {
					return
				}

				if jestFnCall.Kind != utils.JestFnTypeExpect {
					return
				}

				if isNestedCallExpressionInMemberChain(node) {
					return
				}

				if len(jestFnCall.MemberEntries) == 0 {
					return
				}

				for _, memberEntry := range jestFnCall.MemberEntries {
					if canonicalName, ok := methodNames[memberEntry.Name]; ok {
						start := memberEntry.Node.Pos()
						end := memberEntry.Node.End()

						if memberEntry.Node.Kind != ast.KindIdentifier {
							start = start + 1
							end = end - 1
						}

						ctx.ReportNodeWithFixes(
							memberEntry.Node, buildErrorAliasMethodMessage(memberEntry.Name, canonicalName),
							rule.RuleFix{
								Text:  canonicalName,
								Range: core.NewTextRange(start, end),
							},
						)
					}
				}
			},
		}
	},
}

Functions

This section is empty.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL