Issue 99: Add a test with redefined !!binary tag
diff --git a/src/test/java/org/yaml/snakeyaml/issues/issue99/YamlBase64Test.java b/src/test/java/org/yaml/snakeyaml/issues/issue99/YamlBase64Test.java
index cd77c54..c3f103e 100644
--- a/src/test/java/org/yaml/snakeyaml/issues/issue99/YamlBase64Test.java
+++ b/src/test/java/org/yaml/snakeyaml/issues/issue99/YamlBase64Test.java
@@ -26,6 +26,11 @@
 import org.yaml.snakeyaml.Util;
 import org.yaml.snakeyaml.Yaml;
 import org.yaml.snakeyaml.YamlDocument;
+import org.yaml.snakeyaml.constructor.AbstractConstruct;
+import org.yaml.snakeyaml.constructor.Constructor;
+import org.yaml.snakeyaml.nodes.Node;
+import org.yaml.snakeyaml.nodes.ScalarNode;
+import org.yaml.snakeyaml.nodes.Tag;
 
 import biz.source_code.base64Coder.Base64Coder;
 
@@ -92,4 +97,33 @@
                     .getMessage());
         }
     }
+
+    @SuppressWarnings("unchecked")
+    public void testRedefineBinaryTag() throws IOException {
+        Yaml yaml = new Yaml(new SpecialContructor());
+        InputStream inputStream = YamlBase64Test.class
+                .getResourceAsStream("/issues/issue99-base64_literal.yaml");
+        Map<String, Object> bean = (Map<String, Object>) yaml.load(inputStream);
+        byte[] jpeg = (byte[]) bean.get("jpegPhoto");
+        checkBytes(jpeg);
+    }
+
+    /**
+     * Redefine the !!binary global tag in a way that it ignores all the white
+     * spaces
+     */
+    private class SpecialContructor extends Constructor {
+        public SpecialContructor() {
+            this.yamlConstructors.put(Tag.BINARY, new MyBinaryConstructor());
+        }
+
+        private class MyBinaryConstructor extends AbstractConstruct {
+            public Object construct(Node node) {
+                String contentWithNewLines = constructScalar((ScalarNode) node).toString();
+                String noNewLines = contentWithNewLines.replaceAll("\\s", "");
+                byte[] decoded = Base64Coder.decode(noNewLines.toCharArray());
+                return decoded;
+            }
+        }
+    }
 }
diff --git a/src/test/resources/issues/issue99-base64_literal.yaml b/src/test/resources/issues/issue99-base64_literal.yaml
index dc03a87..d6f1c6a 100644
--- a/src/test/resources/issues/issue99-base64_literal.yaml
+++ b/src/test/resources/issues/issue99-base64_literal.yaml
@@ -1,4 +1,4 @@
-jpegPhoto: !!binary |-
+jpegPhoto: !!binary |
     /9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8L
     CwkMEQ8SEhEPERETFhwXExQaFRERGCEYGh0dHx8fExciJCIeJBweHx7/2wBDAQUF
     BQcGBw4ICA4eFBEUHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4e