package net.varkhan.base.conversion.character; import junit.framework.TestCase; import java.io.ByteArrayInputStream; import java.nio.ByteBuffer; import java.nio.charset.Charset; /** * <b></b>. * <p/> * * @author varkhan * @date 11/23/13 * @time 4:00 PM */ public class Base64DecoderTest extends TestCase { public void testDecode() throws Exception { Base64Decoder<Object> dec = new Base64Decoder<Object>(); assertEquals("Rg==",dec.decode("F".getBytes(Charset.forName("US-ASCII")),null)); assertEquals("Rm8=",dec.decode("Fo".getBytes(Charset.forName("US-ASCII")),null)); assertEquals("Rm9vIEJhcg==",dec.decode("Foo Bar".getBytes(Charset.forName("US-ASCII")),null)); assertEquals("Rm9vIEJhciB+",dec.decode("Foo Bar ~".getBytes(Charset.forName("US-ASCII")),null)); assertEquals("Rm9vIEJhcg==",dec.decode(new ByteArrayInputStream("Foo Bar".getBytes(Charset.forName("US-ASCII"))),null)); assertEquals("Rm9vIEJhciB+",dec.decode(ByteBuffer.wrap("Foo Bar ~".getBytes(Charset.forName("US-ASCII"))),null)); Base64Decoder<Object> decn = new Base64Decoder<Object>(Base64Decoder.CHARMAP_UTF7,Base64Decoder.NO_PADDING); assertEquals("Rg",decn.decode("F".getBytes(Charset.forName("US-ASCII")),null)); assertEquals("Rm8",decn.decode("Fo".getBytes(Charset.forName("US-ASCII")),null)); assertEquals("Rm9vIEJhcg",decn.decode("Foo Bar".getBytes(Charset.forName("US-ASCII")),null)); assertEquals("Rm9vIEJhciB+",decn.decode("Foo Bar ~".getBytes(Charset.forName("US-ASCII")),null)); assertEquals("Rm9vIEJhcg",decn.decode(new ByteArrayInputStream("Foo Bar".getBytes(Charset.forName("US-ASCII"))),null)); assertEquals("Rm9vIEJhciB+",decn.decode(ByteBuffer.wrap("Foo Bar ~".getBytes(Charset.forName("US-ASCII"))),null)); } }