Skip to content

Commit 6c7cefd

Browse files
authored
GH-3383: Modernize mockito (#3384)
1 parent 7148464 commit 6c7cefd

File tree

12 files changed

+76
-76
lines changed

12 files changed

+76
-76
lines changed

parquet-avro/pom.xml

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -112,25 +112,7 @@
112112
<dependency>
113113
<groupId>org.mockito</groupId>
114114
<artifactId>mockito-core</artifactId>
115-
<version>2.23.0</version>
116-
<scope>test</scope>
117-
</dependency>
118-
<dependency>
119-
<groupId>org.powermock</groupId>
120-
<artifactId>powermock-module-junit4</artifactId>
121-
<version>${powermock.version}</version>
122-
<scope>test</scope>
123-
</dependency>
124-
<dependency>
125-
<groupId>org.powermock</groupId>
126-
<artifactId>powermock-core</artifactId>
127-
<version>${powermock.version}</version>
128-
<scope>test</scope>
129-
</dependency>
130-
<dependency>
131-
<groupId>org.powermock</groupId>
132-
<artifactId>powermock-api-mockito2</artifactId>
133-
<version>${powermock.version}</version>
115+
<version>${mockito.version}</version>
134116
<scope>test</scope>
135117
</dependency>
136118
</dependencies>

parquet-avro/src/test/java/org/apache/parquet/avro/TestAvroRecordConverter.java

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -34,22 +34,25 @@
3434
import org.apache.avro.Schema;
3535
import org.apache.avro.SchemaBuilder;
3636
import org.apache.avro.specific.SpecificData;
37+
import org.junit.After;
3738
import org.junit.Before;
3839
import org.junit.Test;
39-
import org.junit.runner.RunWith;
40+
import org.mockito.MockedStatic;
4041
import org.mockito.Mockito;
41-
import org.powermock.api.mockito.PowerMockito;
42-
import org.powermock.core.classloader.annotations.PrepareForTest;
43-
import org.powermock.modules.junit4.PowerMockRunner;
4442

45-
@RunWith(PowerMockRunner.class)
46-
@PrepareForTest(AvroRecordConverter.class)
4743
public class TestAvroRecordConverter {
4844

45+
private MockedStatic<AvroRecordConverter> avroRecordConverterMock;
46+
4947
@Before
5048
public void setup() {
5149
// Default to calling real methods unless overridden in specific test
52-
PowerMockito.mockStatic(AvroRecordConverter.class, CALLS_REAL_METHODS);
50+
avroRecordConverterMock = Mockito.mockStatic(AvroRecordConverter.class, CALLS_REAL_METHODS);
51+
}
52+
53+
@After
54+
public void tearDown() {
55+
avroRecordConverterMock.close();
5356
}
5457

5558
@Test
@@ -86,7 +89,7 @@ public void testModelForGenericRecord() {
8689
// Test logical type support for older Avro versions
8790
@Test
8891
public void testModelForSpecificRecordWithLogicalTypesWithDeprecatedAvro1_8() {
89-
Mockito.when(AvroRecordConverter.getRuntimeAvroVersion()).thenReturn("1.8.2");
92+
avroRecordConverterMock.when(AvroRecordConverter::getRuntimeAvroVersion).thenReturn("1.8.2");
9093

9194
// Test that model is generated correctly when record contains both top-level and nested logical types
9295
SpecificData model = AvroRecordConverter.getModelForSchema(LogicalTypesTestDeprecated.SCHEMA$);
@@ -108,7 +111,7 @@ public void testModelForSpecificRecordWithLogicalTypesWithDeprecatedAvro1_8() {
108111

109112
@Test
110113
public void testModelForSpecificRecordWithLogicalTypesWithDeprecatedAvro1_7() {
111-
Mockito.when(AvroRecordConverter.getRuntimeAvroVersion()).thenReturn("1.7.7");
114+
avroRecordConverterMock.when(AvroRecordConverter::getRuntimeAvroVersion).thenReturn("1.7.7");
112115

113116
// Test that model is generated correctly
114117
final SpecificData model = AvroRecordConverter.getModelForSchema(LogicalTypesTestDeprecated.SCHEMA$);

parquet-avro/src/test/java/org/apache/parquet/avro/TestAvroSchemaConverter.java

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -62,25 +62,27 @@
6262
import org.apache.parquet.schema.PrimitiveType.PrimitiveTypeName;
6363
import org.apache.parquet.schema.Type;
6464
import org.apache.parquet.schema.Types;
65+
import org.junit.After;
6566
import org.junit.Assert;
6667
import org.junit.Before;
6768
import org.junit.BeforeClass;
6869
import org.junit.Test;
69-
import org.junit.runner.RunWith;
70+
import org.mockito.MockedStatic;
7071
import org.mockito.Mockito;
71-
import org.powermock.api.mockito.PowerMockito;
72-
import org.powermock.core.classloader.annotations.PrepareForTest;
73-
import org.powermock.modules.junit4.PowerMockRunner;
7472

75-
@RunWith(PowerMockRunner.class)
76-
@PrepareForTest(AvroRecordConverter.class)
7773
public class TestAvroSchemaConverter {
7874

7975
private static final Configuration NEW_BEHAVIOR = new Configuration(false);
76+
private MockedStatic<AvroRecordConverter> avroRecordConverterMock;
8077

8178
@Before
8279
public void setupMockito() {
83-
PowerMockito.mockStatic(AvroRecordConverter.class, CALLS_REAL_METHODS);
80+
avroRecordConverterMock = Mockito.mockStatic(AvroRecordConverter.class, CALLS_REAL_METHODS);
81+
}
82+
83+
@After
84+
public void tearDown() {
85+
avroRecordConverterMock.close();
8486
}
8587

8688
@BeforeClass
@@ -706,7 +708,9 @@ public void testTimestampMillisType() throws Exception {
706708

707709
// Test that conversions for timestamp types only use APIs that are available in the user's Avro version
708710
for (String avroVersion : ImmutableSet.of("1.7.0", "1.8.0", "1.9.0", "1.10.0", "1.11.0")) {
709-
Mockito.when(AvroRecordConverter.getRuntimeAvroVersion()).thenReturn(avroVersion);
711+
avroRecordConverterMock
712+
.when(AvroRecordConverter::getRuntimeAvroVersion)
713+
.thenReturn(avroVersion);
710714
final Schema converted = new AvroSchemaConverter()
711715
.convert(Types.buildMessage()
712716
.addField(Types.primitive(INT64, Type.Repetition.REQUIRED)
@@ -792,7 +796,9 @@ public void testTimestampMicrosType() throws Exception {
792796

793797
// Test that conversions for timestamp types only use APIs that are available in the user's Avro version
794798
for (String avroVersion : ImmutableSet.of("1.7.0", "1.8.0", "1.9.0", "1.10.0", "1.11.0")) {
795-
Mockito.when(AvroRecordConverter.getRuntimeAvroVersion()).thenReturn(avroVersion);
799+
avroRecordConverterMock
800+
.when(AvroRecordConverter::getRuntimeAvroVersion)
801+
.thenReturn(avroVersion);
796802
final Schema converted = new AvroSchemaConverter()
797803
.convert(Types.buildMessage()
798804
.addField(Types.primitive(INT64, Type.Repetition.REQUIRED)

parquet-column/pom.xml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@
9090
</dependency>
9191
<dependency>
9292
<groupId>org.mockito</groupId>
93-
<artifactId>mockito-all</artifactId>
93+
<artifactId>mockito-core</artifactId>
9494
<version>${mockito.version}</version>
9595
<scope>test</scope>
9696
</dependency>
@@ -100,6 +100,12 @@
100100
<version>${commons-lang3.version}</version>
101101
<scope>test</scope>
102102
</dependency>
103+
<dependency>
104+
<groupId>org.hamcrest</groupId>
105+
<artifactId>hamcrest-core</artifactId>
106+
<version>1.3</version>
107+
<scope>test</scope>
108+
</dependency>
103109
</dependencies>
104110

105111
<build>

parquet-common/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464

6565
<dependency>
6666
<groupId>org.mockito</groupId>
67-
<artifactId>mockito-all</artifactId>
67+
<artifactId>mockito-core</artifactId>
6868
<version>${mockito.version}</version>
6969
<scope>test</scope>
7070
</dependency>

parquet-common/src/test/java/org/apache/parquet/bytes/TestBytesInput.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@
2121
import static org.junit.Assert.assertArrayEquals;
2222
import static org.junit.Assert.assertEquals;
2323
import static org.junit.Assert.fail;
24-
import static org.mockito.Matchers.anyInt;
25-
import static org.mockito.Matchers.anyObject;
24+
import static org.mockito.ArgumentMatchers.any;
25+
import static org.mockito.ArgumentMatchers.anyInt;
2626
import static org.mockito.Mockito.never;
2727
import static org.mockito.Mockito.verify;
2828
import static org.mockito.Mockito.when;
@@ -401,6 +401,6 @@ private void validateToByteBufferIsInternal(Supplier<BytesInput> factory) {
401401
Consumer<ByteBuffer> callbackMock = Mockito.mock(Consumer.class);
402402
factory.get().toByteBuffer(allocatorMock, callbackMock);
403403
verify(allocatorMock, never()).allocate(anyInt());
404-
verify(callbackMock, never()).accept(anyObject());
404+
verify(callbackMock, never()).accept(any());
405405
}
406406
}

parquet-hadoop/pom.xml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@
170170
</dependency>
171171
<dependency>
172172
<groupId>org.mockito</groupId>
173-
<artifactId>mockito-all</artifactId>
173+
<artifactId>mockito-core</artifactId>
174174
<version>${mockito.version}</version>
175175
<scope>test</scope>
176176
</dependency>
@@ -191,6 +191,12 @@
191191
<artifactId>slf4j-api</artifactId>
192192
<version>${slf4j.version}</version>
193193
</dependency>
194+
<dependency>
195+
<groupId>org.hamcrest</groupId>
196+
<artifactId>hamcrest-core</artifactId>
197+
<version>1.3</version>
198+
<scope>test</scope>
199+
</dependency>
194200
<dependency>
195201
<groupId>commons-io</groupId>
196202
<artifactId>commons-io</artifactId>

parquet-hadoop/src/test/java/org/apache/parquet/filter2/dictionarylevel/DictionaryFilterTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
import static org.junit.Assert.assertFalse;
4646
import static org.junit.Assert.assertTrue;
4747
import static org.mockito.Mockito.mock;
48-
import static org.mockito.Mockito.verifyZeroInteractions;
48+
import static org.mockito.Mockito.verifyNoInteractions;
4949

5050
import com.google.common.collect.ImmutableSet;
5151
import com.google.common.collect.Sets;
@@ -731,7 +731,7 @@ public void testColumnWithoutDictionary() throws Exception {
731731
"Should never drop block using plain encoding",
732732
canDrop(notEq(plain, nElements + 10), ccmd, dictionaryStore));
733733

734-
verifyZeroInteractions(dictionaryStore);
734+
verifyNoInteractions(dictionaryStore);
735735
}
736736

737737
@Test
@@ -757,7 +757,7 @@ public void testColumnWithDictionaryAndPlainEncodings() throws Exception {
757757
"Should never drop block using plain encoding",
758758
canDrop(notEq(plain, nElements + 10), ccmd, dictionaryStore));
759759

760-
verifyZeroInteractions(dictionaryStore);
760+
verifyNoInteractions(dictionaryStore);
761761
}
762762

763763
@Test

parquet-hadoop/src/test/java/org/apache/parquet/hadoop/TestColumnChunkPageWriteStore.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,10 @@
3232
import static org.junit.Assert.assertArrayEquals;
3333
import static org.junit.Assert.assertEquals;
3434
import static org.junit.Assert.assertFalse;
35-
import static org.mockito.Matchers.any;
36-
import static org.mockito.Matchers.eq;
37-
import static org.mockito.Matchers.isNull;
38-
import static org.mockito.Matchers.same;
35+
import static org.mockito.ArgumentMatchers.any;
36+
import static org.mockito.ArgumentMatchers.eq;
37+
import static org.mockito.ArgumentMatchers.isNull;
38+
import static org.mockito.ArgumentMatchers.same;
3939
import static org.mockito.Mockito.inOrder;
4040

4141
import java.io.ByteArrayInputStream;

parquet-thrift/pom.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,12 @@
7777
<version>${guava.version}</version>
7878
<scope>test</scope>
7979
</dependency>
80+
<dependency>
81+
<groupId>org.mockito</groupId>
82+
<artifactId>mockito-core</artifactId>
83+
<version>${mockito.version}</version>
84+
<scope>test</scope>
85+
</dependency>
8086
<dependency>
8187
<groupId>com.twitter.elephantbird</groupId>
8288
<artifactId>elephant-bird-core</artifactId>

0 commit comments

Comments
 (0)