aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/org/zwobble/couscous/tests/util
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2015-09-29 20:14:34 +0100
committerMichael Williamson <mike@zwobble.org>2015-09-29 20:14:34 +0100
commitccac9247fe4663874be8026ab9cc968ecec7157b (patch)
tree6e15ebf9eb130034c45f84372ce4d3776f401328 /src/test/java/org/zwobble/couscous/tests/util
Initial commit
Diffstat (limited to 'src/test/java/org/zwobble/couscous/tests/util')
-rw-r--r--src/test/java/org/zwobble/couscous/tests/util/ExtraAsserts.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/test/java/org/zwobble/couscous/tests/util/ExtraAsserts.java b/src/test/java/org/zwobble/couscous/tests/util/ExtraAsserts.java
new file mode 100644
index 0000000..8b1c16c
--- /dev/null
+++ b/src/test/java/org/zwobble/couscous/tests/util/ExtraAsserts.java
@@ -0,0 +1,21 @@
+package org.zwobble.couscous.tests.util;
+
+public class ExtraAsserts {
+ public interface Action {
+ void run();
+ }
+
+ @SuppressWarnings("unchecked")
+ public static <T extends Throwable> T assertThrows(Class<T> exceptionType, Action action) {
+ try {
+ action.run();
+ throw new AssertionError("Expected exception");
+ } catch (Exception exception) {
+ if (exceptionType.isInstance(exception)) {
+ return (T)exception;
+ } else {
+ throw exception;
+ }
+ }
+ }
+}