1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package io.earcam.instrumental.agent.junit;
20
21 import static io.earcam.instrumental.archive.AsAgentJar.asAgentJar;
22 import static io.earcam.instrumental.archive.Archive.archive;
23
24 import java.nio.file.Path;
25 import java.nio.file.Paths;
26
27 import org.junit.AfterClass;
28 import org.junit.BeforeClass;
29 import org.junit.jupiter.api.AfterAll;
30 import org.junit.jupiter.api.BeforeAll;
31
32 import com.acme.StubAgent;
33 import com.acme.StubAgentState;
34
35
36 public abstract class AbstractAgentJarTest {
37
38
39 protected static final String DIR = "target";
40 protected static final String FILE = "AbstractAgentJarTest-stubagent.jar";
41
42 public static final String JAR_NAME = DIR + '/' + FILE;
43 public static final Path JAR_PATH = Paths.get(DIR, FILE);
44
45 public static final String AGENT_ARGUMENTS = "-Awinter=socks";
46
47
48
49 @BeforeClass
50 @BeforeAll
51 public static void begin()
52 {
53 archive()
54 .configured(asAgentJar().withAgentClass(StubAgent.class))
55 .to(JAR_PATH);
56 }
57
58
59 @AfterClass
60 @AfterAll
61 public static void reset()
62 {
63 StubAgentState.initialize();
64 }
65 }