Skip to content

Commit fff9e87

Browse files
committed
Use temporary folder rule in tests rather than temporary files.
1 parent b6d7c21 commit fff9e87

16 files changed

+98
-125
lines changed

byte-buddy-dep/src/main/java/net/bytebuddy/dynamic/ClassFileLocator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1081,7 +1081,7 @@ class ForFolder implements ClassFileLocator {
10811081
*/
10821082
public ForFolder(File folder) throws IOException {
10831083
this.folder = folder;
1084-
int current = ClassFileVersion.ofThisVm().getMajorVersion();
1084+
int current = ClassFileVersion.ofThisVm().getJavaVersion();
10851085
if (current < 9) {
10861086
multiRelease = new int[0];
10871087
} else {

byte-buddy-dep/src/test/java/net/bytebuddy/build/PluginEngineDefaultTest.java

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@
1010
import net.bytebuddy.dynamic.scaffold.inline.MethodNameTransformer;
1111
import net.bytebuddy.implementation.LoadedTypeInitializer;
1212
import net.bytebuddy.matcher.ElementMatchers;
13+
import org.junit.Rule;
1314
import org.junit.Test;
15+
import org.junit.rules.TemporaryFolder;
1416
import org.junit.runner.RunWith;
1517
import org.junit.runners.Parameterized;
1618
import org.mockito.ArgumentMatchers;
@@ -48,6 +50,9 @@ public static Collection<Object[]> data() {
4850
});
4951
}
5052

53+
@Rule
54+
public TemporaryFolder temporaryFolder = new TemporaryFolder();
55+
5156
private final Plugin.Engine.Dispatcher.Factory dispatcherFactory;
5257

5358
private final boolean eager;
@@ -317,7 +322,7 @@ public void testManifest() throws Exception {
317322

318323
@Test
319324
public void testImplicitFileInput() throws Exception {
320-
File file = File.createTempFile("foo", "bar");
325+
File file = temporaryFolder.newFile();
321326
JarOutputStream outputStream = new JarOutputStream(new FileOutputStream(file));
322327
try {
323328
outputStream.putNextEntry(new JarEntry("dummy"));
@@ -342,9 +347,7 @@ public Plugin.Engine.Summary answer(InvocationOnMock invocationOnMock) {
342347

343348
@Test
344349
public void testImplicitFolderInput() throws Exception {
345-
File file = File.createTempFile("foo", "bar");
346-
assertThat(file.delete(), is(true));
347-
assertThat(file.mkdir(), is(true));
350+
File file = temporaryFolder.newFolder();
348351
Plugin.Engine engine = spy(new Plugin.Engine.Default());
349352
doAnswer(new Answer<Plugin.Engine.Summary>() {
350353
public Plugin.Engine.Summary answer(InvocationOnMock invocationOnMock) {
@@ -376,8 +379,7 @@ public void testOfEntryPoint() {
376379

377380
@Test
378381
public void testMain() throws Exception {
379-
File source = File.createTempFile("foo", "bar"), target = File.createTempFile("qux", "baz");
380-
assertThat(target.delete(), is(true));
382+
File source = temporaryFolder.newFile(), target = temporaryFolder.newFile();
381383
JarOutputStream outputStream = new JarOutputStream(new FileOutputStream(source));
382384
try {
383385
outputStream.putNextEntry(new JarEntry("dummy"));

byte-buddy-dep/src/test/java/net/bytebuddy/build/PluginEngineSourceForFolderTest.java

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
package net.bytebuddy.build;
22

33
import net.bytebuddy.utility.StreamDrainer;
4-
import org.junit.After;
54
import org.junit.Before;
5+
import org.junit.Rule;
66
import org.junit.Test;
7+
import org.junit.rules.TemporaryFolder;
78

89
import java.io.File;
910
import java.io.FileOutputStream;
@@ -19,18 +20,14 @@
1920

2021
public class PluginEngineSourceForFolderTest {
2122

23+
@Rule
24+
public TemporaryFolder temporaryFolder = new TemporaryFolder();
25+
2226
private File folder;
2327

2428
@Before
2529
public void setUp() throws Exception {
26-
folder = File.createTempFile("foo", "bar");
27-
assertThat(folder.delete(), is(true));
28-
assertThat(folder.mkdir(), is(true));
29-
}
30-
31-
@After
32-
public void tearDown() throws Exception {
33-
assertThat(folder.delete(), is(true));
30+
folder = temporaryFolder.newFolder();
3431
}
3532

3633
@Test

byte-buddy-dep/src/test/java/net/bytebuddy/build/PluginEngineSourceForJarFileTest.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
import net.bytebuddy.utility.StreamDrainer;
44
import org.junit.After;
55
import org.junit.Before;
6+
import org.junit.Rule;
67
import org.junit.Test;
8+
import org.junit.rules.TemporaryFolder;
79

810
import java.io.File;
911
import java.io.FileOutputStream;
@@ -16,16 +18,14 @@
1618

1719
public class PluginEngineSourceForJarFileTest {
1820

21+
@Rule
22+
public TemporaryFolder temporaryFolder = new TemporaryFolder();
23+
1924
private File file;
2025

2126
@Before
2227
public void setUp() throws Exception {
23-
file = File.createTempFile("foo", "bar");
24-
}
25-
26-
@After
27-
public void tearDown() throws Exception {
28-
assertThat(file.delete(), is(true));
28+
file = temporaryFolder.newFile();
2929
}
3030

3131
@Test

byte-buddy-dep/src/test/java/net/bytebuddy/build/PluginEngineTargetForFolderTest.java

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@
33
import net.bytebuddy.description.type.TypeDescription;
44
import net.bytebuddy.test.utility.JavaVersionRule;
55
import net.bytebuddy.utility.StreamDrainer;
6-
import org.junit.After;
76
import org.junit.Before;
87
import org.junit.Rule;
98
import org.junit.Test;
109
import org.junit.rules.MethodRule;
10+
import org.junit.rules.TemporaryFolder;
1111

1212
import java.io.*;
1313
import java.util.Collections;
@@ -26,18 +26,14 @@ public class PluginEngineTargetForFolderTest {
2626
@Rule
2727
public MethodRule javaVersionRule = new JavaVersionRule();
2828

29+
@Rule
30+
public TemporaryFolder temporaryFolder = new TemporaryFolder();
31+
2932
private File folder;
3033

3134
@Before
3235
public void setUp() throws Exception {
33-
folder = File.createTempFile("foo", "bar");
34-
assertThat(folder.delete(), is(true));
35-
assertThat(folder.mkdir(), is(true));
36-
}
37-
38-
@After
39-
public void tearDown() throws Exception {
40-
assertThat(folder.delete(), is(true));
36+
folder = temporaryFolder.newFolder();
4137
}
4238

4339
@Test
@@ -92,7 +88,7 @@ public void testWriteResourceFromFile() throws Exception {
9288
Plugin.Engine.Source.Element element = mock(Plugin.Engine.Source.Element.class);
9389
when(element.getName()).thenReturn(FOO + "/" + BAR);
9490
when(element.getInputStream()).thenReturn(new ByteArrayInputStream(new byte[]{1, 2, 3}));
95-
File original = File.createTempFile("qux", "baz");
91+
File original = temporaryFolder.newFile();
9692
try {
9793
FileOutputStream outputStream = new FileOutputStream(original);
9894
try {

byte-buddy-dep/src/test/java/net/bytebuddy/build/PluginEngineTargetForJarFileTest.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,10 @@
22

33
import net.bytebuddy.description.type.TypeDescription;
44
import net.bytebuddy.utility.StreamDrainer;
5-
import org.junit.After;
65
import org.junit.Before;
6+
import org.junit.Rule;
77
import org.junit.Test;
8+
import org.junit.rules.TemporaryFolder;
89

910
import java.io.ByteArrayInputStream;
1011
import java.io.File;
@@ -25,16 +26,14 @@ public class PluginEngineTargetForJarFileTest {
2526

2627
private static final String FOO = "foo", BAR = "bar";
2728

29+
@Rule
30+
public TemporaryFolder temporaryFolder = new TemporaryFolder();
31+
2832
private File file;
2933

3034
@Before
3135
public void setUp() throws Exception {
32-
file = File.createTempFile("foo", "bar");
33-
assertThat(file.delete(), is(true));
34-
}
35-
36-
@After
37-
public void tearDown() throws Exception {
36+
file = temporaryFolder.newFile();
3837
assertThat(file.delete(), is(true));
3938
}
4039

byte-buddy-dep/src/test/java/net/bytebuddy/dynamic/ClassFileLocatorForFolderTest.java

Lines changed: 8 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import org.junit.Before;
66
import org.junit.Rule;
77
import org.junit.Test;
8+
import org.junit.rules.TemporaryFolder;
89

910
import java.io.File;
1011
import java.io.FileOutputStream;
@@ -24,19 +25,14 @@ public class ClassFileLocatorForFolderTest {
2425
@Rule
2526
public JavaVersionRule javaVersionRule = new JavaVersionRule();
2627

28+
@Rule
29+
public TemporaryFolder temporaryFolder = new TemporaryFolder();
30+
2731
private File folder;
2832

2933
@Before
3034
public void setUp() throws Exception {
31-
File file = File.createTempFile(FOO, BAR);
32-
assertThat(file.delete(), is(true));
33-
folder = new File(file.getParentFile(), FOO + new Random().nextInt());
34-
assertThat(folder.mkdir(), is(true));
35-
}
36-
37-
@After
38-
public void tearDown() throws Exception {
39-
assertThat(folder.delete(), is(true));
35+
folder = temporaryFolder.newFolder();
4036
}
4137

4238
@Test
@@ -56,8 +52,6 @@ public void testSuccessfulLocation() throws Exception {
5652
ClassFileLocator.Resolution resolution = classFileLocator.locate(FOO + "." + BAR);
5753
assertThat(resolution.isResolved(), is(true));
5854
assertThat(resolution.resolve(), is(new byte[]{VALUE, VALUE * 2}));
59-
assertThat(file.delete(), is(true));
60-
assertThat(packageFolder.delete(), is(true));
6155
}
6256

6357
@Test
@@ -77,22 +71,17 @@ public void testClose() throws Exception {
7771
public void testSuccessfulVersionLocation() throws Exception {
7872
File metaInf = new File(folder, "META-INF");
7973
assertThat(metaInf.mkdir(), is(true));
80-
File manifestMf = new File(metaInf, "MANIFEST.MF");
8174
Manifest manifest = new Manifest();
8275
manifest.getMainAttributes().putValue("Manifest-Version", "1.0");
8376
manifest.getMainAttributes().putValue("Multi-Release", "true");
84-
OutputStream outputStream = new FileOutputStream(manifestMf);
77+
OutputStream outputStream = new FileOutputStream(new File(metaInf, "MANIFEST.MF"));
8578
try {
8679
manifest.write(outputStream);
8780
} finally {
8881
outputStream.close();
8982
}
90-
File versions = new File(metaInf, "versions");
91-
assertThat(versions.mkdir(), is(true));
92-
File version = new File(versions, "9");
93-
assertThat(version.mkdir(), is(true));
94-
File packageFolder = new File(version, FOO);
95-
assertThat(packageFolder.mkdir(), is(true));
83+
File packageFolder = new File(metaInf, "versions/9/" + FOO);
84+
assertThat(packageFolder.mkdirs(), is(true));
9685
File file = new File(packageFolder, BAR + ".class");
9786
assertThat(file.createNewFile(), is(true));
9887
outputStream = new FileOutputStream(file);
@@ -106,11 +95,5 @@ public void testSuccessfulVersionLocation() throws Exception {
10695
ClassFileLocator.Resolution resolution = classFileLocator.locate(FOO + "." + BAR);
10796
assertThat(resolution.isResolved(), is(true));
10897
assertThat(resolution.resolve(), is(new byte[]{VALUE, VALUE * 2}));
109-
assertThat(file.delete(), is(true));
110-
assertThat(packageFolder.delete(), is(true));
111-
assertThat(version.delete(), is(true));
112-
assertThat(versions.delete(), is(true));
113-
assertThat(manifestMf.delete(), is(true));
114-
assertThat(metaInf.delete(), is(true));
11598
}
11699
}

byte-buddy-dep/src/test/java/net/bytebuddy/dynamic/ClassFileLocatorForJarFileTest.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import org.junit.Rule;
88
import org.junit.Test;
99
import org.junit.rules.MethodRule;
10+
import org.junit.rules.TemporaryFolder;
1011
import org.objectweb.asm.ClassVisitor;
1112

1213
import java.io.File;
@@ -28,16 +29,14 @@ public class ClassFileLocatorForJarFileTest {
2829
@Rule
2930
public MethodRule javaVersionRule = new JavaVersionRule();
3031

32+
@Rule
33+
public TemporaryFolder temporaryFolder = new TemporaryFolder();
34+
3135
private File file;
3236

3337
@Before
3438
public void setUp() throws Exception {
35-
file = File.createTempFile(FOO, BAR);
36-
}
37-
38-
@After
39-
public void tearDown() throws Exception {
40-
assertThat(file.delete(), is(true));
39+
file = temporaryFolder.newFile();
4140
}
4241

4342
@Test

byte-buddy-dep/src/test/java/net/bytebuddy/dynamic/ClassFileLocatorForModuleFileTest.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
package net.bytebuddy.dynamic;
22

33
import net.bytebuddy.test.utility.JavaVersionRule;
4-
import org.junit.After;
54
import org.junit.Before;
65
import org.junit.Rule;
76
import org.junit.Test;
87
import org.junit.rules.MethodRule;
8+
import org.junit.rules.TemporaryFolder;
99

1010
import java.io.Closeable;
1111
import java.io.File;
@@ -27,16 +27,14 @@ public class ClassFileLocatorForModuleFileTest {
2727
@Rule
2828
public MethodRule javaVersionRule = new JavaVersionRule();
2929

30+
@Rule
31+
public TemporaryFolder temporaryFolder = new TemporaryFolder();
32+
3033
private File file;
3134

3235
@Before
3336
public void setUp() throws Exception {
34-
file = File.createTempFile(FOO, BAR);
35-
}
36-
37-
@After
38-
public void tearDown() throws Exception {
39-
assertThat(file.delete(), is(true));
37+
file = temporaryFolder.newFile();
4038
}
4139

4240
@Test

byte-buddy-dep/src/test/java/net/bytebuddy/dynamic/ClassFileLocatorForUrlTest.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
package net.bytebuddy.dynamic;
22

33
import net.bytebuddy.test.utility.JavaVersionRule;
4-
import org.junit.After;
54
import org.junit.Before;
65
import org.junit.Rule;
76
import org.junit.Test;
87
import org.junit.rules.MethodRule;
8+
import org.junit.rules.TemporaryFolder;
99

1010
import java.io.Closeable;
1111
import java.io.File;
@@ -28,16 +28,14 @@ public class ClassFileLocatorForUrlTest {
2828
@Rule
2929
public MethodRule javaVersionRule = new JavaVersionRule();
3030

31+
@Rule
32+
public TemporaryFolder temporaryFolder = new TemporaryFolder();
33+
3134
private File file;
3235

3336
@Before
3437
public void setUp() throws Exception {
35-
file = File.createTempFile(FOO, BAR);
36-
}
37-
38-
@After
39-
public void tearDown() throws Exception {
40-
assertThat(file.delete(), is(true));
38+
file = temporaryFolder.newFile();
4139
}
4240

4341
@Test

0 commit comments

Comments
 (0)