1 package org.apache.torque.generator.control;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import static org.junit.Assert.assertEquals;
23 import static org.junit.Assert.assertTrue;
24
25 import java.io.File;
26 import java.io.FileReader;
27 import java.util.ArrayList;
28 import java.util.List;
29
30 import org.apache.commons.io.FileUtils;
31 import org.apache.torque.generator.BaseTest;
32 import org.apache.torque.generator.configuration.UnitDescriptor;
33 import org.apache.torque.generator.configuration.paths.CustomProjectPaths;
34 import org.apache.torque.generator.configuration.paths.DefaultTorqueGeneratorPaths;
35 import org.apache.torque.generator.configuration.paths.Maven2DirectoryProjectPaths;
36 import org.junit.Test;
37
38
39
40
41
42 public class DeeplyNestedMergepointsTest extends BaseTest
43 {
44 @Test
45 public void testDeeplyNestedMergepointsGeneration() throws Exception
46 {
47 File targetDir = new File("target/test/deeplyNestedMergepoints");
48 FileUtils.deleteDirectory(targetDir);
49 Controller controller = new Controller();
50 List<UnitDescriptor> unitDescriptors = new ArrayList<UnitDescriptor>();
51 CustomProjectPaths projectPaths = new CustomProjectPaths(
52 new Maven2DirectoryProjectPaths(
53 new File("src/test/deeplyNestedMergepoints")));
54 projectPaths.setOutputDirectory(null, targetDir);
55 unitDescriptors.add(new UnitDescriptor(
56 UnitDescriptor.Packaging.DIRECTORY,
57 projectPaths,
58 new DefaultTorqueGeneratorPaths()));
59 controller.run(unitDescriptors);
60
61 assertTrue(targetDir.exists());
62 File targetFile = new File(targetDir, "output.txt");
63 assertTrue(targetFile.exists());
64
65 FileReader fileReader = new FileReader(targetFile);
66 StringBuilder content = new StringBuilder();
67 int readChars;
68 char[] buffer = new char[50];
69 do
70 {
71 readChars = fileReader.read(buffer);
72 if (readChars != -1)
73 {
74 content.append(buffer, 0, readChars);
75 }
76 }
77 while (readChars != -1);
78 assertEquals("content", content.toString());
79 }
80 }