samples/delegatingwriter/test/org/apidesign/delegatingwriter/BufferedWriterCryptoTest.java
1.1 --- a/samples/delegatingwriter/test/org/apidesign/delegatingwriter/BufferedWriterCryptoTest.java Sat Jun 14 09:53:05 2008 +0200
1.2 +++ b/samples/delegatingwriter/test/org/apidesign/delegatingwriter/BufferedWriterCryptoTest.java Sat Jun 14 09:53:07 2008 +0200
1.3 @@ -14,7 +14,8 @@
1.4 */
1.5 public class BufferedWriterCryptoTest {
1.6 private StringWriter writer;
1.7 -
1.8 + private String fromCode;
1.9 + private String toCode;
1.10
1.11 public BufferedWriterCryptoTest() {
1.12 }
1.13 @@ -22,6 +23,14 @@
1.14 @Before
1.15 public void setUp() {
1.16 writer = new StringWriter();
1.17 + StringBuffer f = new StringBuffer();
1.18 + StringBuffer t = new StringBuffer();
1.19 + for (int i = 0; i < 500; i++) {
1.20 + f.append("VMS");
1.21 + t.append("WNT");
1.22 + }
1.23 + fromCode = f.toString();
1.24 + toCode = t.toString();
1.25 }
1.26
1.27 @Test
1.28 @@ -35,13 +44,21 @@
1.29 }
1.30
1.31 @Test
1.32 + public void testBehaviourOfRealBufferInJDKWorksFineOnLongSentences() throws IOException {
1.33 + CryptoWriter bufferedWriter = new CryptoWriter(writer);
1.34 + bufferedWriter.append(fromCode);
1.35 + bufferedWriter.flush();
1.36 + assertEquals("Converted", toCode, writer.toString());
1.37 + }
1.38 +
1.39 + @Test
1.40 public void testBehaviourOfBufferThatDelegatesToAppendFails() throws IOException {
1.41 CryptoWriter bufferedWriter = new CryptoWriter(writer, CryptoWriter.Behaviour.DELEGATE_TO_OUT);
1.42 - bufferedWriter.append("VMS");
1.43 + bufferedWriter.append(fromCode);
1.44 bufferedWriter.flush();
1.45 assertEquals("This will fail, as the direct delegation from append to " +
1.46 "the underlaying writer will skip all the crypto methods",
1.47 - "WNT", writer.toString()
1.48 + toCode, writer.toString()
1.49 );
1.50 }
1.51