Skip to content

Partial mocking of global MockUps causes NullPointerException #62

@borisbrodski

Description

@borisbrodski

Reproduction steps:

Create following files:
  • Tool.java
public class Tool {
    public void doIt() {
    }
}
  • ToolMock.java:
import mockit.Invocation;
import mockit.Mock;
import mockit.MockUp;

public class ToolMock extends MockUp<Tool>{
    @Mock
    public void doIt(Invocation e){
    }
}
  • jmockit.properties:
mocks=test.ToolMock
  • Test1.java:
import mockit.NonStrictExpectations;

import org.junit.Test;

public class Test1 {
    @Test
    public void test1() {
        new NonStrictExpectations(Tool.class) {{
        }};
    }

    @Test
    public void test2() {
        new Tool().doIt();
    }
}
Run Test1.

Result:

  • Test1.test1 OK
  • Test1.test2 FAILS. Exception:
java.lang.NullPointerException
    at test.Tool.doIt(Tool.java)
    at test.Test1.test2(Test1.java:16)

Also all consequent tests getting the same NullPointerException, if Tool class get used.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions