|
@@ -27,6 +27,8 @@ import com.dmdirc.plugins.PluginManager;
|
27
|
27
|
import com.dmdirc.plugins.PluginMetaData;
|
28
|
28
|
import com.dmdirc.ui.themes.ThemeManager;
|
29
|
29
|
|
|
30
|
+import com.google.common.eventbus.EventBus;
|
|
31
|
+
|
30
|
32
|
import java.net.MalformedURLException;
|
31
|
33
|
import java.net.URL;
|
32
|
34
|
|
|
@@ -51,6 +53,7 @@ public class URLBuilderTest {
|
51
|
53
|
@Mock private ThemeManager themeManager;
|
52
|
54
|
@Mock private PluginInfo pluginInfo;
|
53
|
55
|
@Mock private PluginMetaData pluginMetaData;
|
|
56
|
+ @Mock private EventBus eventBus;
|
54
|
57
|
|
55
|
58
|
@Before
|
56
|
59
|
public void setup() throws MalformedURLException {
|
|
@@ -64,43 +67,50 @@ public class URLBuilderTest {
|
64
|
67
|
|
65
|
68
|
@Test
|
66
|
69
|
public void testGetUrlForFileWithoutFilePrefix() throws MalformedURLException {
|
67
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
70
|
+ URLBuilder urlBuilder
|
|
71
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
68
|
72
|
Assert.assertEquals(new URL("file://test"), urlBuilder.getUrlForFile("test"));
|
69
|
73
|
}
|
70
|
74
|
|
71
|
75
|
@Test
|
72
|
76
|
public void testGetUrlForFileWithFilePrefix() throws MalformedURLException {
|
73
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
77
|
+ URLBuilder urlBuilder
|
|
78
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
74
|
79
|
Assert.assertEquals(new URL("file://test"), urlBuilder.getUrlForFile("file://test"));
|
75
|
80
|
}
|
76
|
81
|
|
77
|
82
|
@Test
|
78
|
83
|
public void testGetUrlInvalid() throws MalformedURLException {
|
79
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
84
|
+ URLBuilder urlBuilder
|
|
85
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
80
|
86
|
Assert.assertNull(urlBuilder.getUrlForFile("file://[test"));
|
81
|
87
|
}
|
82
|
88
|
|
83
|
89
|
@Test
|
84
|
90
|
public void testGetUrlForJarFile() throws MalformedURLException {
|
85
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
91
|
+ URLBuilder urlBuilder
|
|
92
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
86
|
93
|
Assert.assertEquals(new URL("jar:file:/jarFile!/test"), urlBuilder.getUrlForJarFile("jarFile", "test"));
|
87
|
94
|
}
|
88
|
95
|
|
89
|
96
|
@Test
|
90
|
97
|
public void testGetUrlForJarFileInvalud() throws MalformedURLException {
|
91
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
98
|
+ URLBuilder urlBuilder
|
|
99
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
92
|
100
|
Assert.assertNull(urlBuilder.getUrlForJarFile("[jarFile", "test"));
|
93
|
101
|
}
|
94
|
102
|
|
95
|
103
|
@Test
|
96
|
104
|
public void testGetUrlForDMDircResourceNonExistant() {
|
97
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
105
|
+ URLBuilder urlBuilder
|
|
106
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
98
|
107
|
Assert.assertNull(urlBuilder.getUrlForDMDircResource("test"));
|
99
|
108
|
}
|
100
|
109
|
|
101
|
110
|
@Test
|
102
|
111
|
public void testGetUrlForDMDircResource() throws MalformedURLException {
|
103
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
112
|
+ URLBuilder urlBuilder
|
|
113
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
104
|
114
|
URL url = urlBuilder.getUrlForDMDircResource("com/dmdirc/Main.class");
|
105
|
115
|
Assert.assertEquals("file", url.getProtocol());
|
106
|
116
|
Assert.assertTrue(url.getFile().endsWith("com/dmdirc/Main.class"));
|
|
@@ -108,19 +118,22 @@ public class URLBuilderTest {
|
108
|
118
|
|
109
|
119
|
@Test
|
110
|
120
|
public void testGetUrlForThemeResource() throws MalformedURLException {
|
111
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
121
|
+ URLBuilder urlBuilder
|
|
122
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
112
|
123
|
Assert.assertEquals(new URL("jar:file:/themes/testTheme.zip!/testFile"), urlBuilder.getUrlForThemeResource("testTheme", "testFile"));
|
113
|
124
|
}
|
114
|
125
|
|
115
|
126
|
@Test
|
116
|
127
|
public void testGetUrlForPluginResource() throws MalformedURLException {
|
117
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
128
|
+ URLBuilder urlBuilder
|
|
129
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
118
|
130
|
Assert.assertEquals(new URL("jar:file:/testPlugin!/testFile"), urlBuilder.getUrlForPluginResource("testPlugin", "testFile"));
|
119
|
131
|
}
|
120
|
132
|
|
121
|
133
|
@Test
|
122
|
134
|
public void testGetUrlDMDirc() {
|
123
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
135
|
+ URLBuilder urlBuilder
|
|
136
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
124
|
137
|
URL url = urlBuilder.getUrl("dmdirc://com/dmdirc/Main.class");
|
125
|
138
|
Assert.assertEquals("file", url.getProtocol());
|
126
|
139
|
Assert.assertTrue(url.getFile().endsWith("com/dmdirc/Main.class"));
|
|
@@ -128,73 +141,85 @@ public class URLBuilderTest {
|
128
|
141
|
|
129
|
142
|
@Test
|
130
|
143
|
public void testGetUrlJar() throws MalformedURLException {
|
131
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
144
|
+ URLBuilder urlBuilder
|
|
145
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
132
|
146
|
Assert.assertEquals(new URL("jar:file:/jarFile!/testFile"), urlBuilder.getUrl("jar://jarFile:testFile"));
|
133
|
147
|
}
|
134
|
148
|
|
135
|
149
|
@Test
|
136
|
150
|
public void testGetUrlJarWithoutFile() throws MalformedURLException {
|
137
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
151
|
+ URLBuilder urlBuilder
|
|
152
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
138
|
153
|
Assert.assertNull(urlBuilder.getUrl("jar://jarFile"));
|
139
|
154
|
}
|
140
|
155
|
|
141
|
156
|
@Test
|
142
|
157
|
public void testGetUrlZip() throws MalformedURLException {
|
143
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
158
|
+ URLBuilder urlBuilder
|
|
159
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
144
|
160
|
Assert.assertEquals(new URL("jar:file:/zipFile!/testFile"), urlBuilder.getUrl("zip://zipFile:testFile"));
|
145
|
161
|
}
|
146
|
162
|
|
147
|
163
|
@Test
|
148
|
164
|
public void testGetUrlZipWithoutFile() throws MalformedURLException {
|
149
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
165
|
+ URLBuilder urlBuilder
|
|
166
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
150
|
167
|
Assert.assertNull(urlBuilder.getUrl("zip://zipFile"));
|
151
|
168
|
}
|
152
|
169
|
|
153
|
170
|
@Test
|
154
|
171
|
public void testGetUrlPlugin() throws MalformedURLException {
|
155
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
172
|
+ URLBuilder urlBuilder
|
|
173
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
156
|
174
|
Assert.assertEquals(new URL("jar:file:/testPlugin!/testFile"), urlBuilder.getUrl("plugin://pluginFile:testFile"));
|
157
|
175
|
}
|
158
|
176
|
|
159
|
177
|
@Test
|
160
|
178
|
public void testGetUrlPluginWithoutFile() throws MalformedURLException {
|
161
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
179
|
+ URLBuilder urlBuilder
|
|
180
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
162
|
181
|
Assert.assertNull(urlBuilder.getUrl("plugin://pluginFile"));
|
163
|
182
|
}
|
164
|
183
|
|
165
|
184
|
@Test
|
166
|
185
|
public void testGetUrlTheme() throws MalformedURLException {
|
167
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
186
|
+ URLBuilder urlBuilder
|
|
187
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
168
|
188
|
Assert.assertEquals(new URL("jar:file:/themes/themeFile.zip!/testFile"), urlBuilder.getUrl("theme://themeFile:testFile"));
|
169
|
189
|
}
|
170
|
190
|
|
171
|
191
|
@Test
|
172
|
192
|
public void testGetUrlThemeWithoutFile() throws MalformedURLException {
|
173
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
193
|
+ URLBuilder urlBuilder
|
|
194
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
174
|
195
|
Assert.assertNull(urlBuilder.getUrl("theme://themeFile"));
|
175
|
196
|
}
|
176
|
197
|
|
177
|
198
|
@Test
|
178
|
199
|
public void testGetUrlHTTP() throws MalformedURLException {
|
179
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
200
|
+ URLBuilder urlBuilder
|
|
201
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
180
|
202
|
Assert.assertEquals(new URL("http://testDomain"), urlBuilder.getUrl("http://testDomain"));
|
181
|
203
|
}
|
182
|
204
|
|
183
|
205
|
@Test
|
184
|
206
|
public void testGetUrlHTTPInvalid() throws MalformedURLException {
|
185
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
207
|
+ URLBuilder urlBuilder
|
|
208
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
186
|
209
|
Assert.assertNull(urlBuilder.getUrl("http://[testDomain"));
|
187
|
210
|
}
|
188
|
211
|
|
189
|
212
|
@Test
|
190
|
213
|
public void testGetUrlFileWithPrefix() throws MalformedURLException {
|
191
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
214
|
+ URLBuilder urlBuilder
|
|
215
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
192
|
216
|
Assert.assertEquals(new URL("file://testFile"), urlBuilder.getUrl("file://testFile"));
|
193
|
217
|
}
|
194
|
218
|
|
195
|
219
|
@Test
|
196
|
220
|
public void testGetUrlFileWithoutPrefix() throws MalformedURLException {
|
197
|
|
- URLBuilder urlBuilder = new URLBuilder(pluginManagerProvider, themeManagerProvider);
|
|
221
|
+ URLBuilder urlBuilder
|
|
222
|
+ = new URLBuilder(pluginManagerProvider, themeManagerProvider, eventBus);
|
198
|
223
|
Assert.assertEquals(new URL("file://testFile"), urlBuilder.getUrl("testFile"));
|
199
|
224
|
}
|
200
|
225
|
}
|