Skip to content

unused-test-factory-option

A private test factory exposes an invariant literal or unexercised local callable option.

Why

Unused customization obscures the values that actually distinguish test scenarios.

Fix

Consider keeping the invariant literal or stable local callable in the construction instead of exposing an unexercised option. Preserve intentional dependency contracts and callable default binding timing.

Examples

Before — flagged A private test helper's callers never vary a singleton option
tests/test_widget.py
def _widget(*, enabled=True):
return Widget(enabled=enabled)
_widget()
_widget(enabled=True)
After — preferred Keep customization that a caller exercises
tests/test_widget.py
def test_widgets():
def _make_widget(*, size=3):
return Widget(size=size)
_make_widget()
_make_widget(size=4)