UNPKG

pi-lens

Version:

Real-time code feedback for pi — LSP, linters, formatters, type-checking, structural analysis & booboo

67 lines (53 loc) • 1.37 kB
# Mockito Initialized # Detects annotated Mockito objects that may not be initialized id: mockito-initialized name: Annotated Mockito Objects Should Be Initialized severity: error category: reliability defect_class: correctness inline_tier: blocking language: java message: "@Mock/@InjectMocks object should be initialized with MockitoAnnotations.openMocks()" description: | @Mock, @Spy, @Captor, @InjectMocks fields must be initialized before use. Call MockitoAnnotations.openMocks(this) in @Before or use MockitoJUnitRunner. ✅ FIX: Add initialization in @Before method ```java @Before public void setUp() { MockitoAnnotations.openMocks(this); // GOOD } ``` query: | (field_declaration (modifiers (annotation name: (identifier) @ANNOT (#match? @ANNOT "^(Mock|Spy|Captor|InjectMocks)$"))) (variable_declarator name: (identifier) @FIELD)) metavars: - ANNOT - FIELD post_filter: missing_mockito_init tags: - reliability - java - mockito - testing examples: bad: | @Mock private Service service; // BAD - not initialized @Test public void test() { service.doSomething(); // NullPointerException! } good: | @Mock private Service service; @Before public void setUp() { MockitoAnnotations.openMocks(this); // GOOD } has_fix: false