[tor-commits] [collector/master] Adapt tests to changes in task-19894.
karsten at torproject.org
karsten at torproject.org
Fri Sep 2 14:38:06 UTC 2016
commit fe6fbb554d68ab9072412f680a2ebd6d3f2c363b
Author: iwakeh <iwakeh at torproject.org>
Date: Wed Aug 31 11:51:18 2016 +0200
Adapt tests to changes in task-19894.
---
.../java/org/torproject/collector/MainTest.java | 53 +++++++++++++++-------
1 file changed, 36 insertions(+), 17 deletions(-)
diff --git a/src/test/java/org/torproject/collector/MainTest.java b/src/test/java/org/torproject/collector/MainTest.java
index 5453dd4..f65d2fa 100644
--- a/src/test/java/org/torproject/collector/MainTest.java
+++ b/src/test/java/org/torproject/collector/MainTest.java
@@ -8,17 +8,21 @@ import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
+import org.torproject.collector.conf.Configuration;
import org.torproject.collector.conf.ConfigurationException;
import org.torproject.collector.conf.Key;
import org.torproject.collector.cron.Scheduler;
+import org.hamcrest.Matchers;
import org.junit.Rule;
import org.junit.Test;
+import org.junit.rules.ExpectedException;
import org.junit.rules.TemporaryFolder;
import java.io.BufferedWriter;
import java.io.File;
import java.nio.file.Files;
+import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.List;
import java.util.Properties;
@@ -28,13 +32,19 @@ public class MainTest {
@Rule
public TemporaryFolder tmpf = new TemporaryFolder();
- @Test(expected = ConfigurationException.class)
+ @Rule
+ public ExpectedException thrown = ExpectedException.none();
+
+ @Test()
public void testInitializationConfigException() throws Exception {
- File conf = new File(Main.CONF_FILE);
- checkCleanEnv(conf);
- Main.main(new String[] {"/tmp/"});
- assertTrue(conf.exists());
- assertTrue(conf.delete());
+ File tmpFolder = tmpf.newFolder();
+ Configuration conf = new Configuration();
+ thrown.expect(ConfigurationException.class);
+ thrown.expectMessage(Matchers
+ .containsString("Cannot watch configuration file."));
+
+ // dir instead of file; the following should throw a ConfigurationException
+ conf.setWatchableSourceAndLoad(tmpFolder.toPath());
}
private void checkCleanEnv(File conf) {
@@ -51,10 +61,15 @@ public class MainTest {
assertTrue(conf.delete());
}
- @Test(expected = RuntimeException.class)
+ @Test()
public void testInitializationUnwritable() throws Exception {
File conf = tmpf.newFolder("folder");
+ thrown.expect(RuntimeException.class);
+ thrown.expectMessage(Matchers
+ .allOf(Matchers.containsString("NoSuchFileException"),
+ Matchers.containsString("/x/y/z")));
+
Main.main(new String[] {
Paths.get(conf.toString(), "x", "y", "z").toString()});
}
@@ -171,18 +186,22 @@ public class MainTest {
}
}
- @Test(expected = ConfigurationException.class)
+ @Test()
public void testNoModuleActivated() throws Exception {
- File conf = tmpf.newFile("test.conf");
- try {
- assertEquals(0L, conf.length());
- // create default configuration
- Main.main(new String[]{conf.toString()});
- } catch (ConfigurationException ce) {
- fail("This should not cause a ConfigurationException: " + ce);
- }
+ Path confPath = tmpf.newFile("test.conf").toPath();
+ assertEquals(0L, confPath.toFile().length());
+
+ // create default configuration
+ Main.main(new String[]{confPath.toFile().toString()});
+ assertTrue(0L < confPath.toFile().length());
+
+ Configuration conf = new Configuration();
+
+ thrown.expect(ConfigurationException.class);
+ thrown.expectMessage(Matchers.containsString("Nothing is activated!"));
+
// no module activated; the following should throw a ConfigurationException
- Main.main(new String[]{conf.toString()});
+ conf.setWatchableSourceAndLoad(confPath);
}
}
More information about the tor-commits
mailing list