1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.exec;
19
20 import static org.junit.jupiter.api.Assertions.assertTrue;
21
22 import java.io.File;
23 import java.util.concurrent.Executors;
24
25 import org.junit.jupiter.api.Test;
26 import org.junitpioneer.jupiter.SetSystemProperty;
27
28
29
30
31 @SetSystemProperty(key = "org.apache.commons.exec.lenient", value = "false")
32 @SetSystemProperty(key = "org.apache.commons.exec.debug", value = "true")
33 public class StandAloneTest {
34
35 @Test
36 public void testDefaultExecutor() throws Exception {
37 if (OS.isFamilyUnix()) {
38 final File testScript = TestUtil.resolveScriptForOS("./src/test/scripts/standalone");
39 final Executor exec = new DefaultExecutor();
40 exec.setStreamHandler(new PumpStreamHandler());
41 final CommandLine cl = new CommandLine(testScript);
42 exec.execute(cl);
43 assertTrue(new File("./target/mybackup.gz").exists());
44 }
45 }
46
47 @Test
48 public void testDefaultExecutorBuilder() throws Exception {
49 if (OS.isFamilyUnix()) {
50 final File testScript = TestUtil.resolveScriptForOS("./src/test/scripts/standalone");
51
52 final Executor exec = DefaultExecutor.builder()
53 .setThreadFactory(Executors.defaultThreadFactory())
54 .setExecuteStreamHandler(new PumpStreamHandler())
55 .setWorkingDirectory(new File("."))
56 .get();
57
58 exec.setStreamHandler(new PumpStreamHandler());
59 final CommandLine cl = new CommandLine(testScript);
60 exec.execute(cl);
61 assertTrue(new File("./target/mybackup.gz").exists());
62 }
63 }
64
65 @Test
66 public void testDefaultExecutorDefaultBuilder() throws Exception {
67 if (OS.isFamilyUnix()) {
68 final File testScript = TestUtil.resolveScriptForOS("./src/test/scripts/standalone");
69 final Executor exec = DefaultExecutor.builder().get();
70 exec.setStreamHandler(new PumpStreamHandler());
71 final CommandLine cl = new CommandLine(testScript);
72 exec.execute(cl);
73 assertTrue(new File("./target/mybackup.gz").exists());
74 }
75 }
76 }