Skip to content

Commit 5900513

Browse files
authored
Merge pull request #6 from jqassistant-plugin/5-orgmockitomockedstaticverify-not-recognized-as-assertion
#5 Added MockedStatic.verify() to mockito rules
2 parents 5deef0b + 15fac5b commit 5900513

3 files changed

Lines changed: 23 additions & 5 deletions

File tree

src/main/resources/META-INF/jqassistant-rules/mockito.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
MATCH
1212
(assertType:Java:Type)-[:DECLARES]->(assertMethod:Java:Method)
1313
WHERE
14-
assertType.fqn = 'org.mockito.Mockito'
15-
and assertMethod.signature =~ '.* verify.*'
14+
assertType.fqn = 'org.mockito.Mockito' and assertMethod.signature =~ '.* verify.*'
15+
OR assertType.fqn = 'org.mockito.MockedStatic' and assertMethod.signature =~ '.* verify.*'
1616
SET
1717
assertMethod:Mockito:Assert
1818
RETURN

src/test/java/org/jqassistant/plugin/java_testing/concept/AssertExample.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,14 @@
44
import org.camunda.bpm.engine.repository.ProcessDefinition;
55
import org.camunda.bpm.engine.test.assertions.bpmn.BpmnAwareTests;
66
import org.mockito.BDDMockito;
7+
import org.mockito.MockedStatic;
78
import org.xmlunit.assertj.XmlAssert;
89
import reactor.test.StepVerifier;
910

1011
import static org.mockito.ArgumentMatchers.any;
1112
import static org.mockito.Mockito.mock;
1213
import static org.mockito.Mockito.verify;
14+
import static org.mockito.Mockito.mockStatic;
1315

1416
/**
1517
* Example class used by integration tests.
@@ -31,6 +33,14 @@ void mockitoVerifyExampleMethod() {
3133
verify(mock(Object.class).equals(any(Object.class)));
3234
}
3335

36+
private static final String test = "testString";
37+
38+
void mockedStaticVerifyExampleMethod() {
39+
try (MockedStatic<String> mocked = mockStatic(String.class)) {
40+
mocked.verify(() -> test.equals("testString"));
41+
}
42+
}
43+
3444
void bddMockitoThenShouldExampleMethod() {
3545
BDDMockito.then(mock(Object.class)).shouldHaveNoInteractions();
3646
}

src/test/java/org/jqassistant/plugin/java_testing/concept/MockitoIT.java

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313

1414
import org.junit.jupiter.api.Test;
1515
import org.mockito.BDDMockito;
16+
import org.mockito.MockedStatic;
1617
import org.mockito.Mockito;
1718

1819
import static com.buschmais.jqassistant.core.report.api.model.Result.Status.SUCCESS;
@@ -32,16 +33,23 @@ void mockitoVerifyMethod() throws Exception {
3233

3334
store.beginTransaction();
3435

35-
assertThat(conceptResult.getRows().size()).isEqualTo(1);
36+
assertThat(conceptResult.getRows().size()).isEqualTo(2);
3637
assertThat(conceptResult.getRows()
3738
.get(0)
3839
.getColumns()
3940
.get("assertMethod")
4041
.getValue()).asInstanceOf(type(MethodDescriptor.class))
4142
.is(methodDescriptor(Mockito.class, "verify", Object.class));
4243

44+
assertThat(conceptResult.getRows()
45+
.get(1)
46+
.getColumns()
47+
.get("assertMethod")
48+
.getValue()).asInstanceOf(type(MethodDescriptor.class))
49+
.is(methodDescriptor(MockedStatic.class, "verify", MockedStatic.Verification.class));
50+
4351
final TestResult methodQueryResultForMockito = getMethodQueryResultForMockito();
44-
assertThat(methodQueryResultForMockito.getRows().size()).isEqualTo(1);
52+
assertThat(methodQueryResultForMockito.getRows().size()).isEqualTo(2);
4553
verifyMockitoVerifyExampleContained(methodQueryResultForMockito);
4654

4755
store.commitTransaction();
@@ -89,7 +97,7 @@ void providedConceptAssertMethod() throws Exception {
8997
assertThat(declaringTypes).haveExactly(1, typeDescriptor(Mockito.class));
9098

9199
final TestResult methodQueryResultForMockito = getMethodQueryResultForMockito();
92-
assertThat(methodQueryResultForMockito.getRows().size()).isEqualTo(2);
100+
assertThat(methodQueryResultForMockito.getRows().size()).isEqualTo(3);
93101
verifyMockitoVerifyExampleContained(methodQueryResultForMockito);
94102
verifyBddMockitoThenShouldExampleContained(methodQueryResultForMockito);
95103
store.commitTransaction();

0 commit comments

Comments
 (0)