1cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath/* 2cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * Licensed to the Apache Software Foundation (ASF) under one or more 3cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * contributor license agreements. See the NOTICE file distributed with 4cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * this work for additional information regarding copyright ownership. 5cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * The ASF licenses this file to You under the Apache License, Version 2.0 6cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * (the "License"); you may not use this file except in compliance with 7cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * the License. You may obtain a copy of the License at 8cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * 9cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * http://www.apache.org/licenses/LICENSE-2.0 10cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * 11cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * Unless required by applicable law or agreed to in writing, software 12cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * distributed under the License is distributed on an "AS IS" BASIS, 13cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * See the License for the specific language governing permissions and 15cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * limitations under the License. 16cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 17cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 18ab762bb740405d0fefcccf4a0899a234f995be13Narayan Kamathpackage org.apache.harmony.tests.java.io; 19cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 20cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamathimport java.io.ByteArrayInputStream; 21cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamathimport java.io.ByteArrayOutputStream; 22cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamathimport java.io.InputStreamReader; 23cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamathimport java.io.DataInputStream; 24cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamathimport java.io.File; 25cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamathimport java.io.FileNotFoundException; 26cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamathimport java.io.IOException; 27cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamathimport java.io.OutputStream; 28cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamathimport java.io.PrintStream; 29cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamathimport java.io.UnsupportedEncodingException; 30cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamathimport java.util.Locale; 31cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 32cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamathpublic class PrintStreamTest extends junit.framework.TestCase { 33cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 34cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayOutputStream bos = new ByteArrayOutputStream(); 35cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 36cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] ibuf = new byte[4096]; 37cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 38cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath private File testFile = null; 39cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 40cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath private String testFilePath = null; 41cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 42cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public String fileString = "Test_All_Tests\nTest_java_io_BufferedInputStream\nTest_java_io_BufferedOutputStream\nTest_java_io_ByteArrayInputStream\nTest_java_io_ByteArrayOutputStream\nTest_java_io_DataInputStream\nTest_java_io_File\nTest_java_io_FileDescriptor\nTest_java_io_FileInputStream\nTest_java_io_FileNotFoundException\nTest_java_io_FileOutputStream\nTest_java_io_FilterInputStream\nTest_java_io_FilterOutputStream\nTest_java_io_InputStream\nTest_java_io_IOException\nTest_java_io_OutputStream\nTest_PrintStream\nTest_java_io_RandomAccessFile\nTest_java_io_SyncFailedException\nTest_java_lang_AbstractMethodError\nTest_java_lang_ArithmeticException\nTest_java_lang_ArrayIndexOutOfBoundsException\nTest_java_lang_ArrayStoreException\nTest_java_lang_Boolean\nTest_java_lang_Byte\nTest_java_lang_Character\nTest_java_lang_Class\nTest_java_lang_ClassCastException\nTest_java_lang_ClassCircularityError\nTest_java_lang_ClassFormatError\nTest_java_lang_ClassLoader\nTest_java_lang_ClassNotFoundException\nTest_java_lang_CloneNotSupportedException\nTest_java_lang_Double\nTest_java_lang_Error\nTest_java_lang_Exception\nTest_java_lang_ExceptionInInitializerError\nTest_java_lang_Float\nTest_java_lang_IllegalAccessError\nTest_java_lang_IllegalAccessException\nTest_java_lang_IllegalArgumentException\nTest_java_lang_IllegalMonitorStateException\nTest_java_lang_IllegalThreadStateException\nTest_java_lang_IncompatibleClassChangeError\nTest_java_lang_IndexOutOfBoundsException\nTest_java_lang_InstantiationError\nTest_java_lang_InstantiationException\nTest_java_lang_Integer\nTest_java_lang_InternalError\nTest_java_lang_InterruptedException\nTest_java_lang_LinkageError\nTest_java_lang_Long\nTest_java_lang_Math\nTest_java_lang_NegativeArraySizeException\nTest_java_lang_NoClassDefFoundError\nTest_java_lang_NoSuchFieldError\nTest_java_lang_NoSuchMethodError\nTest_java_lang_NullPointerException\nTest_java_lang_Number\nTest_java_lang_NumberFormatException\nTest_java_lang_Object\nTest_java_lang_OutOfMemoryError\nTest_java_lang_RuntimeException\nTest_java_lang_SecurityManager\nTest_java_lang_Short\nTest_java_lang_StackOverflowError\nTest_java_lang_String\nTest_java_lang_StringBuffer\nTest_java_lang_StringIndexOutOfBoundsException\nTest_java_lang_System\nTest_java_lang_Thread\nTest_java_lang_ThreadDeath\nTest_java_lang_ThreadGroup\nTest_java_lang_Throwable\nTest_java_lang_UnknownError\nTest_java_lang_UnsatisfiedLinkError\nTest_java_lang_VerifyError\nTest_java_lang_VirtualMachineError\nTest_java_lang_vm_Image\nTest_java_lang_vm_MemorySegment\nTest_java_lang_vm_ROMStoreException\nTest_java_lang_vm_VM\nTest_java_lang_Void\nTest_java_net_BindException\nTest_java_net_ConnectException\nTest_java_net_DatagramPacket\nTest_java_net_DatagramSocket\nTest_java_net_DatagramSocketImpl\nTest_java_net_InetAddress\nTest_java_net_NoRouteToHostException\nTest_java_net_PlainDatagramSocketImpl\nTest_java_net_PlainSocketImpl\nTest_java_net_Socket\nTest_java_net_SocketException\nTest_java_net_SocketImpl\nTest_java_net_SocketInputStream\nTest_java_net_SocketOutputStream\nTest_java_net_UnknownHostException\nTest_java_util_ArrayEnumerator\nTest_java_util_Date\nTest_java_util_EventObject\nTest_java_util_HashEnumerator\nTest_java_util_Hashtable\nTest_java_util_Properties\nTest_java_util_ResourceBundle\nTest_java_util_tm\nTest_java_util_Vector\n"; 43cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 44cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath private static class MockPrintStream extends PrintStream { 45cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 46cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public MockPrintStream(String fileName) throws FileNotFoundException { 47cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath super(fileName); 48cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 49cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 50cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public MockPrintStream(String fileName, String csn) throws FileNotFoundException, UnsupportedEncodingException { 51cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath super(fileName, csn); 52cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 53cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 54cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public MockPrintStream(OutputStream os) { 55cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath super(os); 56cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 57cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 58cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath @Override 59cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void clearError() { 60cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath super.clearError(); 61cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 62cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 63cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath @Override 64cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void setError() { 65cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath super.setError(); 66cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 67cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 68cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 69cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 70cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * {@link java.io.PrintStream#PrintStream(String)} 71cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 72cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_Constructor_Ljava_lang_String() throws IOException { 73cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath MockPrintStream os = new MockPrintStream(testFilePath); 74cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertNotNull(os); 75cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.close(); 76cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 77cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 78cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 79cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * {@link java.io.PrintStream#PrintStream(String, String)} 80cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 81cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_Constructor_Ljava_lang_String_Ljava_lang_String() throws Exception { 82cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath MockPrintStream os = new MockPrintStream(testFilePath, "utf-8"); 83cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertNotNull(os); 84cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.close(); 85cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 86cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test that a bogus charset is mentioned in the exception 87cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath try { 88cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath new PrintStream(testFilePath, "Bogus"); 89cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath fail("Exception expected"); 90cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } catch (UnsupportedEncodingException e) { 91cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertNotNull(e.getMessage()); 92cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 93cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 94cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 95cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 96cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#PrintStream(java.io.OutputStream) 97cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 98cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_ConstructorLjava_io_OutputStream() throws Exception { 99cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method java.io.PrintStream(java.io.OutputStream) 100cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos); 101cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print(2345.76834720202); 102cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.close(); 103cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 104cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // regression for HARMONY-1195 105cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath try { 106cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os = new PrintStream(bos, true, null); 107cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath fail("Should throw NPE"); 108cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } catch (NullPointerException e) { 109cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 110cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 111cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 112cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 113cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#PrintStream(java.io.OutputStream, boolean) 114cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 115cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_ConstructorLjava_io_OutputStreamZ() { 116cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method java.io.PrintStream(java.io.OutputStream, boolean) 117cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos); 118cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.println(2345.76834720202); 119cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.flush(); 120cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Bytes not written", bos.size() > 0); 121cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.close(); 122cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 123cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 124cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 125cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#PrintStream(java.io.OutputStream, boolean, String) 126cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 127cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_ConstructorLjava_io_OutputStreamZLjava_lang_String() { 128cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath try { 129cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath new PrintStream(new ByteArrayOutputStream(), false, 130cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath "%Illegal_name!"); 131cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath fail("Expected UnsupportedEncodingException"); 132cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } catch (UnsupportedEncodingException e) { 133cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // expected 134cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 135cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 136cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 137cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 138cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#checkError() 139cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 140cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_checkError() throws Exception { 141cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method boolean java.io.PrintStream.checkError() 142cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(new OutputStream() { 143cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 144cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void write(int b) throws IOException { 145cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath throw new IOException(); 146cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 147cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 148cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void write(byte[] b, int o, int l) throws IOException { 149cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath throw new IOException(); 150cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 151cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath }); 152cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print(fileString.substring(0, 501)); 153cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 154cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Checkerror should return true", os.checkError()); 155cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 156cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 157cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 158cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * {@link java.io.PrintStream#clearError()} 159cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 160cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_clearError() throws FileNotFoundException { 161cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath MockPrintStream os = new MockPrintStream(testFilePath); 162cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertFalse(os.checkError()); 163cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.setError(); 164cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue(os.checkError()); 165cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.clearError(); 166cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertFalse(os.checkError()); 167cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.close(); 168cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 169cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 170cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 171cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#close() 172cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 173cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_close() throws Exception { 174cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.close() 175cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos); 176cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.close(); 177cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bos.close(); 178cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 179cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 180cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 181cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#flush() 182cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 183cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_flush() throws Exception { 184cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.flush() 185cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos); 186cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print(fileString.substring(0, 501)); 187cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.flush(); 188cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Bytes not written after flush", 501, bos.size()); 189cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bos.close(); 190cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.close(); 191cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 192cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 193cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 194cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#print(char[]) 195cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 196cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_print$C() { 197cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.print(char []) 198cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 199cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath try { 200cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print((char[]) null); 201cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath fail("NPE expected"); 202cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } catch (NullPointerException ok) { 203cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 204cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 205cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os = new PrintStream(bos, true); 206cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath char[] sc = new char[4000]; 207cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath fileString.getChars(0, fileString.length(), sc, 0); 208cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print(sc); 209cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 210cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.close(); 211cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 212cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbytes = new byte[4000]; 213cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbytes, 0, fileString.length()); 214cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect char[] written", fileString, new String(rbytes, 215cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 0, fileString.length())); 216cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 217cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 218cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 219cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#print(char) 220cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 221cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printC() throws Exception { 222cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.print(char) 223cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 224cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print('t'); 225cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 226cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath InputStreamReader isr = new InputStreamReader(bis); 227cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect char written", 't', isr.read()); 228cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 229cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 230cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 231cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#print(double) 232cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 233cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printD() { 234cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.print(double) 235cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbuf = new byte[100]; 236cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 237cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print(2345.76834720202); 238cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 239cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbuf, 0, 16); 240cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect double written", "2345.76834720202", 241cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath new String(rbuf, 0, 16)); 242cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 243cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 244cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 245cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#print(float) 246cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 247cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printF() { 248cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.print(float) 249cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 250cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte rbuf[] = new byte[10]; 251cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print(29.08764f); 252cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.flush(); 253cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 254cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbuf, 0, 8); 255cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect float written", "29.08764", new String(rbuf, 0, 256cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 8)); 257cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 258cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 259cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 260cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 261cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#print(int) 262cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 263cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printI() { 264cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.print(int) 265cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 266cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print(768347202); 267cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbuf = new byte[18]; 268cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 269cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbuf, 0, 9); 270cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect int written", "768347202", new String(rbuf, 0, 271cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 9)); 272cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 273cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 274cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 275cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#print(long) 276cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 277cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printJ() { 278cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.print(long) 279cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbuf = new byte[100]; 280cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 281cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print(9875645283333L); 282cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.close(); 283cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 284cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbuf, 0, 13); 285cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect long written", "9875645283333", new String( 286cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath rbuf, 0, 13)); 287cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 288cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 289cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 290cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#print(java.lang.Object) 291cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 292cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printLjava_lang_Object() throws Exception { 293cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.print(java.lang.Object) 294cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 295cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print((Object) null); 296cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.flush(); 297cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 298cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] nullbytes = new byte[4]; 299cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(nullbytes, 0, 4); 300cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("null should be written", "null", new String(nullbytes, 0, 301cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 4)); 302cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 303cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.close(); 304cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bos.close(); 305cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.close(); 306cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 307cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayOutputStream bos1 = new ByteArrayOutputStream(); 308cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os = new PrintStream(bos1, true); 309cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print(new java.util.Vector()); 310cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis = new ByteArrayInputStream(bos1.toByteArray()); 311cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbytes = new byte[2]; 312cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbytes, 0, 2); 313cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect Object written", "[]", new String(rbytes, 0, 2)); 314cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 315cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 316cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 317cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#print(java.lang.String) 318cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 319cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printLjava_lang_String() throws Exception { 320cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.print(java.lang.String) 321cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 322cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print((String) null); 323cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 324cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] nullbytes = new byte[4]; 325cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(nullbytes, 0, 4); 326cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("null should be written", "null", new String(nullbytes, 0, 327cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 4)); 328cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 329cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.close(); 330cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bos.close(); 331cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.close(); 332cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 333cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayOutputStream bos1 = new ByteArrayOutputStream(); 334cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os = new PrintStream(bos1, true); 335cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print("Hello World"); 336cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis = new ByteArrayInputStream(bos1.toByteArray()); 337cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte rbytes[] = new byte[100]; 338cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbytes, 0, 11); 339cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect string written", "Hello World", new String( 340cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath rbytes, 0, 11)); 341cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 342cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 343cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 344cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#print(boolean) 345cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 346cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printZ() throws Exception { 347cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.print(boolean) 348cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 349cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.print(true); 350cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath DataInputStream dis = new DataInputStream(new ByteArrayInputStream(bos 351cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath .toByteArray())); 352cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 353cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Incorrect boolean written", dis.readBoolean()); 354cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 355cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 356cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 357cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#println() 358cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 359cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_println() throws Exception { 360cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.println() 361cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath char c; 362cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 363cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.println(""); 364cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 365cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath InputStreamReader isr = new InputStreamReader(bis); 366cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Newline not written", (c = (char) isr.read()) == '\r' 367cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath || c == '\n'); 368cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 369cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 370cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 371cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#println(char[]) 372cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 373cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_println$C() throws Exception { 374cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.println(char []) 375cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 376cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath char[] sc = new char[4000]; 377cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath fileString.getChars(0, fileString.length(), sc, 0); 378cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.println(sc); 379cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 380cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath InputStreamReader isr = new InputStreamReader(bis); 381cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbytes = new byte[4000]; 382cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbytes, 0, fileString.length()); 383cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect char[] written", fileString, new String(rbytes, 384cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 0, fileString.length())); 385cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 386cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // In this particular test method, the end of data is not immediately 387cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // followed by newLine separator in the reading buffer, instead its 388cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // followed by zeros. The newline is written as the last entry 389cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // in the inputStream buffer. Therefore, we must keep reading until we 390cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // hit a new line. 391cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath int r; 392cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath boolean newline = false; 393cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath while ((r = isr.read()) != -1) { 394cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath if (r == '\r' || r == '\n') 395cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath newline = true; 396cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 397cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Newline not written", newline); 398cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 399cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 400cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 401cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#println(char) 402cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 403cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printlnC() throws Exception { 404cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.println(char) 405cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath int c; 406cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 407cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.println('t'); 408cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 409cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath InputStreamReader isr = new InputStreamReader(bis); 410cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect char written", 't', isr.read()); 411cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Newline not written", (c = isr.read()) == '\r' || c == '\n'); 412cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 413cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 414cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 415cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#println(double) 416cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 417cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printlnD() throws Exception { 418cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.println(double) 419cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath int c; 420cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 421cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.println(2345.76834720202); 422cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 423cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath InputStreamReader isr = new InputStreamReader(bis); 424cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbuf = new byte[100]; 425cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbuf, 0, 16); 426cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect double written", "2345.76834720202", 427cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath new String(rbuf, 0, 16)); 428cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Newline not written", (c = isr.read()) == '\r' || c == '\n'); 429cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 430cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 431cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 432cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#println(float) 433cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 434cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printlnF() throws Exception { 435cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.println(float) 436cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath int c; 437cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbuf = new byte[100]; 438cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 439cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.println(29.08764f); 440cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 441cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath InputStreamReader isr = new InputStreamReader(bis); 442cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbuf, 0, 8); 443cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect float written", "29.08764", new String(rbuf, 0, 444cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 8)); 445cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Newline not written", (c = isr.read()) == '\r' || c == '\n'); 446cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 447cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 448cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 449cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#println(int) 450cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 451cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printlnI() throws Exception { 452cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.println(int) 453cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath int c; 454cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 455cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.println(768347202); 456cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbuf = new byte[100]; 457cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 458cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath InputStreamReader isr = new InputStreamReader(bis); 459cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbuf, 0, 9); 460cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect int written", "768347202", new String(rbuf, 0, 461cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 9)); 462cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Newline not written", (c = isr.read()) == '\r' || c == '\n'); 463cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 464cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 465cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 466cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#println(long) 467cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 468cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printlnJ() throws Exception { 469cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.println(long) 470cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath int c; 471cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 472cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.println(9875645283333L); 473cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 474cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath InputStreamReader isr = new InputStreamReader(bis); 475cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbuf = new byte[100]; 476cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbuf, 0, 13); 477cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect long written", "9875645283333", new String( 478cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath rbuf, 0, 13)); 479cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Newline not written", (c = isr.read()) == '\r' || c == '\n'); 480cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 481cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 482cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 483cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#println(java.lang.Object) 484cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 485cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printlnLjava_lang_Object() throws Exception { 486cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.println(java.lang.Object) 487cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath char c; 488cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 489cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.println(new java.util.Vector()); 490cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 491cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath InputStreamReader isr = new InputStreamReader(bis); 492cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbytes = new byte[2]; 493cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbytes, 0, 2); 494cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect Vector written", "[]", new String(rbytes, 0, 2)); 495cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Newline not written", (c = (char) isr.read()) == '\r' 496cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath || c == '\n'); 497cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 498cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 499cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 500cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#println(java.lang.String) 501cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 502cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printlnLjava_lang_String() throws Exception { 503cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.println(java.lang.String) 504cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath char c; 505cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 506cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.println("Hello World"); 507cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 508cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath InputStreamReader isr = new InputStreamReader(bis); 509cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte rbytes[] = new byte[100]; 510cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbytes, 0, 11); 511cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect string written", "Hello World", new String( 512cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath rbytes, 0, 11)); 513cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Newline not written", (c = (char) isr.read()) == '\r' 514cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath || c == '\n'); 515cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 516cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 517cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 518cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#println(boolean) 519cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 520cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printlnZ() throws Exception { 521cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.println(boolean) 522cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath int c; 523cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 524cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.println(true); 525cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 526cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath InputStreamReader isr = new InputStreamReader(bis); 527cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbuf = new byte[100]; 528cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbuf, 0, 4); 529cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect boolean written", "true", 530cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath new String(rbuf, 0, 4)); 531cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Newline not written", (c = isr.read()) == '\r' || c == '\n'); 532cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 533cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 534cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 535cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#write(byte[], int, int) 536cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 537cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_write$BII() { 538cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.write(byte [], int, int) 539cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 540cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.write(fileString.getBytes(), 0, fileString.length()); 541cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 542cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte rbytes[] = new byte[4000]; 543cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbytes, 0, fileString.length()); 544cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertTrue("Incorrect bytes written", new String(rbytes, 0, fileString 545cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath .length()).equals(fileString)); 546cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 547cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 548cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 549cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#write(int) 550cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 551cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_writeI() { 552cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath // Test for method void java.io.PrintStream.write(int) 553cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, true); 554cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.write('t'); 555cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 556cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Incorrect char written", 't', bis.read()); 557cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 558cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 559cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 560cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#append(char) 561cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 562cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_appendChar() throws IOException { 563cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath char testChar = ' '; 564cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayOutputStream out = new ByteArrayOutputStream(); 565cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream printStream = new PrintStream(out); 566cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath printStream.append(testChar); 567cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath printStream.flush(); 568cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals(String.valueOf(testChar), out.toString()); 569cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath printStream.close(); 570cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 571cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 572cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 573cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#append(CharSequence) 574cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 575cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_appendCharSequence() { 576cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath String testString = "My Test String"; 577cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayOutputStream out = new ByteArrayOutputStream(); 578cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream printStream = new PrintStream(out); 579cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath printStream.append(testString); 580cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath printStream.flush(); 581cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals(testString, out.toString()); 582cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath printStream.close(); 583cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 584cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 585cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 586cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#append(CharSequence, int, int) 587cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 588cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_appendCharSequenceIntInt() { 589cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath String testString = "My Test String"; 590cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayOutputStream out = new ByteArrayOutputStream(); 591cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream printStream = new PrintStream(out); 592cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath printStream.append(testString, 1, 3); 593cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath printStream.flush(); 594cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals(testString.substring(1, 3), out.toString()); 595cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath printStream.close(); 596cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 597cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 598cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 599cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#format(java.lang.String, java.lang.Object...) 600cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 601cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_formatLjava_lang_String$Ljava_lang_Object() { 602cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, false); 603cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.format("%s %s", "Hello", "World"); 604cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.flush(); 605cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 606cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbytes = new byte[11]; 607cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbytes, 0, rbytes.length); 608cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Wrote incorrect string", "Hello World", 609cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath new String(rbytes)); 610cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 611cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 612cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 613cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 614cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#format(java.util.Locale, java.lang.String, 615cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath *java.lang.Object...) 616cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 617cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_formatLjava_util_Locale_Ljava_lang_String_$Ljava_lang_Object() { 618cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, false); 619cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.format(Locale.US, "%s %s", "Hello", "World"); 620cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.flush(); 621cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 622cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbytes = new byte[11]; 623cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbytes, 0, rbytes.length); 624cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Wrote incorrect string", "Hello World", 625cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath new String(rbytes)); 626cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 627cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 628cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 629cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#printf(java.lang.String, java.lang.Object...) 630cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 631cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printfLjava_lang_String$Ljava_lang_Object() { 632cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, false); 633cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.printf("%s %s", "Hello", "World"); 634cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.flush(); 635cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 636cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbytes = new byte[11]; 637cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbytes, 0, rbytes.length); 638cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Wrote incorrect string", "Hello World", 639cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath new String(rbytes)); 640cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 641cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 642cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath /** 643cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath * java.io.PrintStream#printf(java.util.Locale, java.lang.String, 644cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath *java.lang.Object...) 645cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath */ 646cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath public void test_printfLjava_util_Locale_Ljava_lang_String_$Ljava_lang_Object() { 647cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath PrintStream os = new PrintStream(bos, false); 648cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.printf(Locale.US, "%s %s", "Hello", "World"); 649cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath os.flush(); 650cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); 651cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath byte[] rbytes = new byte[11]; 652cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath bis.read(rbytes, 0, rbytes.length); 653cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath assertEquals("Wrote incorrect string", "Hello World", 654cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath new String(rbytes)); 655cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 656cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 657cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath @Override 658cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath protected void setUp() throws Exception { 659cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath super.setUp(); 660cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath testFile = File.createTempFile("test", null); 661cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath testFilePath = testFile.getAbsolutePath(); 662cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 663cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 664cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath @Override 665cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath protected void tearDown() throws Exception { 666cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath testFile.delete(); 667cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath testFile = null; 668cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath testFilePath = null; 669cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath super.tearDown(); 670cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath } 671cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 672cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath 673cb318c6f4fe5b0e20099fa85f1b95ccb2d24119fNarayan Kamath} 674