@@ -0,0 +1,837 @@
+package nl.dvberkel.kata.base64;%0A%0Aimport org.junit.Before;%0Aimport org.junit.experimental.theories.DataPoint;%0Aimport org.junit.experimental.theories.Theories;%0Aimport org.junit.experimental.theories.Theory;%0Aimport org.junit.runner.RunWith;%0A%0A%0Aimport static org.hamcrest.Matchers.greaterThan;%0Aimport static org.hamcrest.Matchers.is;%0Aimport static org.junit.Assert.assertThat;%0Aimport static org.junit.Assume.assumeThat;%0A%0A@RunWith(Theories.class)%0Apublic class Base64Theories %7B%0A    private Kata kata;%0A%0A    @Before%0A    public void createKata() %7B%0A        kata = new Kata();%0A    %7D%0A%0A    @DataPoint%0A    public static byte%5B%5D input = new byte%5B%5D %7B0b0%7D;%0A%0A    @Theory%0A    public void decodeIsTheInverseOfEncode(byte%5B%5D input) %7B%0A        assumeThat(input.length, is(greaterThan(0)));%0A%0A        assertThat(kata.decode(kata.encode(input)), is(input));%0A    %7D%0A%7D%0A

create an inverse theory