1 package org.apache.torque.generator.configuration.outlet;
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
24 import java.util.ArrayList;
25 import java.util.List;
26
27 import org.apache.torque.generator.configuration.ConfigurationException;
28 import org.apache.torque.generator.configuration.mergepoint.MergepointMapping;
29 import org.apache.torque.generator.control.action.ApplyAction;
30 import org.apache.torque.generator.java.JavaOutlet;
31 import org.apache.torque.generator.outlet.Outlet;
32 import org.apache.torque.generator.outlet.java.PackageToPathOutlet;
33 import org.apache.torque.generator.qname.QualifiedName;
34 import org.junit.Test;
35
36 public class OutletConfigurationTest
37 {
38
39
40
41
42
43 @Test
44 public void testGetOutlets() throws ConfigurationException
45 {
46 List<Outlet> outlets = new ArrayList<Outlet>();
47 outlets.add(new JavaOutlet(
48 new QualifiedName("test.outlet.0")));
49 outlets.add(new PackageToPathOutlet(
50 new QualifiedName("test.outlet.1")));
51 List<MergepointMapping> mergepointMappings
52 = new ArrayList<MergepointMapping>();
53
54 OutletConfiguration outletConfiguration
55 = new OutletConfiguration(outlets, mergepointMappings);
56 outletConfiguration.resolveMergepointMappings();
57
58 assertEquals(2, outletConfiguration.getOutlets().size());
59 assertEquals(
60 outlets.get(0),
61 outletConfiguration.getOutlets().get(
62 new QualifiedName("test.outlet.0")));
63 assertEquals(
64 outlets.get(1),
65 outletConfiguration.getOutlets().get(
66 new QualifiedName("test.outlet.1")));
67 }
68
69
70
71
72
73
74
75 @Test(expected = ConfigurationException.class)
76 public void testConstructorWithSameOutletName()
77 throws ConfigurationException
78 {
79 List<Outlet> outlets = new ArrayList<Outlet>();
80 outlets.add(new JavaOutlet(
81 new QualifiedName("sameName")));
82 outlets.add(new PackageToPathOutlet(
83 new QualifiedName("sameName")));
84 List<MergepointMapping> mergepointMappings
85 = new ArrayList<MergepointMapping>();
86
87 new OutletConfiguration(outlets, mergepointMappings);
88 }
89
90
91
92
93
94 @Test
95 public void testResolveMergepointMappings() throws ConfigurationException
96 {
97 List<Outlet> outlets = new ArrayList<Outlet>();
98 outlets.add(new JavaOutlet(
99 new QualifiedName("test.outlet")));
100 outlets.add(new PackageToPathOutlet(
101 new QualifiedName("test.outlet.2")));
102 List<MergepointMapping> mergepointMappings
103 = new ArrayList<MergepointMapping>();
104 mergepointMappings.add(
105 new MergepointMapping("test.outlet.testMergepoint"));
106 mergepointMappings.get(0).addAction(
107 new ApplyAction(".", "test.outlet.2", false));
108
109 OutletConfiguration outletConfiguration
110 = new OutletConfiguration(outlets, mergepointMappings);
111 outletConfiguration.resolveMergepointMappings();
112
113 Outlet outlet = outletConfiguration.getOutlet(
114 new QualifiedName("test.outlet"));
115 assertEquals(1, outlet.getMergepointMappings().size());
116 assertEquals(
117 1,
118 outlet.getMergepointMapping("testMergepoint")
119 .getActions().size());
120 }
121
122
123
124
125
126 @Test(expected = ConfigurationException.class)
127 public void testResolveMergepointMappingsNotExistingOutlet()
128 throws ConfigurationException
129 {
130 List<Outlet> outlets = new ArrayList<Outlet>();
131 outlets.add(new JavaOutlet(
132 new QualifiedName("test.outlet")));
133 List<MergepointMapping> mergepointMappings
134 = new ArrayList<MergepointMapping>();
135 mergepointMappings.add(
136 new MergepointMapping("not.existing.outlet.testMergepoint"));
137
138 OutletConfiguration outletConfiguration
139 = new OutletConfiguration(outlets, mergepointMappings);
140 outletConfiguration.resolveMergepointMappings();
141 }
142
143
144
145
146
147 @Test(expected = ConfigurationException.class)
148 public void testResolveMergepointMappingsNoNamespace()
149 throws ConfigurationException
150 {
151 List<Outlet> outlets = new ArrayList<Outlet>();
152 outlets.add(new JavaOutlet(
153 new QualifiedName("test.outlet")));
154 List<MergepointMapping> mergepointMappings
155 = new ArrayList<MergepointMapping>();
156 mergepointMappings.add(
157 new MergepointMapping("testMergepoint"));
158
159 OutletConfiguration outletConfiguration
160 = new OutletConfiguration(outlets, mergepointMappings);
161 outletConfiguration.resolveMergepointMappings();
162 }
163 }