diff --git a/test/parser.js b/test/parser.js
index <HASH>..<HASH> 100644
--- a/test/parser.js
+++ b/test/parser.js
@@ -257,5 +257,17 @@ exports.parser = {
 
         test.ok(_.expect(expr.parse(value)).toBe(_.Failure(expected)));
         test.done();
+    },
+    'when testing `(add (mul 10 (add 3 /)) (add 7 8))` should return failure': function(test) {
+        var block = leftBracket.skip(optionalWhitespace).chain(function() {
+                return expr.many().skip(rightBracket);
+            }),
+            atom = number.orElse(id),
+            expr = block.orElse(atom).skip(optionalWhitespace),
+            value = '(add (mul 10 (add 3 /)) (add 7 8))',
+            expected = [['/', 20]];
+
+        test.ok(_.expect(expr.parse(value)).toBe(_.Failure(expected)));
+        test.done();
     }
 };
Test to make sure that we can do nested failures.