View Javadoc
1   package com.atlassian.dbexporter.node.stax;
2   
3   import com.atlassian.dbexporter.ImportExportErrorService;
4   import org.junit.Before;
5   import org.junit.Test;
6   import org.junit.runner.RunWith;
7   import org.mockito.Mock;
8   import org.mockito.junit.MockitoJUnitRunner;
9   
10  import javax.xml.bind.DatatypeConverter;
11  import java.io.StringWriter;
12  import java.io.Writer;
13  import java.nio.charset.Charset;
14  
15  import static org.hamcrest.CoreMatchers.containsString;
16  import static org.junit.Assert.assertThat;
17  
18  @RunWith(MockitoJUnitRunner.class)
19  public class StaxStreamWriterTest {
20      @Mock
21      private ImportExportErrorService errorService;
22      private Writer output;
23  
24      private StaxStreamWriter staxStreamWriter;
25  
26      @Before
27      public void setUp() {
28          output = new StringWriter();
29          staxStreamWriter = new StaxStreamWriter(errorService, output, Charset.forName("utf-8"), "");
30  
31      }
32  
33      @Test
34      public void nodeCreatorShouldEncodeBinaryAsBase64() {
35          final byte[] bytes = new byte[]{0, 1, 100, 2};
36  
37          staxStreamWriter.addRootNode("root").setContentAsBinary(bytes);
38          staxStreamWriter.close();
39  
40          assertThat(output.toString(), containsString(DatatypeConverter.printBase64Binary(bytes)));
41      }
42  }