1561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes/* 2561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Licensed to the Apache Software Foundation (ASF) under one or more 3561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * contributor license agreements. See the NOTICE file distributed with 4561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * this work for additional information regarding copyright ownership. 5561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * The ASF licenses this file to You under the Apache License, Version 2.0 6561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * (the "License"); you may not use this file except in compliance with 7561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * the License. You may obtain a copy of the License at 83087daf498cdd64fb87f4f54b3e65661d0a6bf59Elliott Hughes * 9561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * http://www.apache.org/licenses/LICENSE-2.0 103087daf498cdd64fb87f4f54b3e65661d0a6bf59Elliott Hughes * 11561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Unless required by applicable law or agreed to in writing, software 12561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 13561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 14561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * License for the specific language governing permissions and limitations under 15561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * the License. 16561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 17561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 18561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughespackage org.apache.harmony.luni.tests.java.io; 19561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 20561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.io.File; 21561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.io.FileDescriptor; 22561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.io.FileInputStream; 23561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.io.FileNotFoundException; 24561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.io.FileOutputStream; 25561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.io.IOException; 26561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 27561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport junit.framework.TestCase; 28561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 29561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughespublic class FileOutputStreamTest extends TestCase { 30561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 31561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public String fileName; 32561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 33561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes FileOutputStream fos; 34561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 35561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes FileInputStream fis; 36561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 37561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes File f; 38561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 39561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes byte[] ibuf = new byte[4096]; 40561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 41561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 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_FileOutputStream\nTest_java_io_FilterInputStream\nTest_java_io_FilterOutputStream\nTest_java_io_InputStream\nTest_java_io_IOException\nTest_java_io_OutputStream\nTest_java_io_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"; 42561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 43561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes byte[] bytes; 44561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 45561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 46561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.io.FileOutputStream#FileOutputStream(java.io.File) 47561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 48561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_ConstructorLjava_io_File() throws IOException { 49561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes f = new File(fileName = System.getProperty("user.home"), "fos.tst"); 50561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(f); 51561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 52561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 53561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 54561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.io.FileOutputStream#FileOutputStream(java.io.FileDescriptor) 55561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 56561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_ConstructorLjava_io_FileDescriptor() throws IOException { 57561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes f = new File(fileName = System.getProperty("user.home"), "fos.tst"); 58561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fileName = f.getAbsolutePath(); 59561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(fileName); 60561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write('l'); 61561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 62561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fis = new FileInputStream(fileName); 63561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(fis.getFD()); 64561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 65561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fis.close(); 66561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 67561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 68561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 69561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.io.FileOutputStream#FileOutputStream(java.lang.String) 70561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 71561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_ConstructorLjava_lang_String() throws IOException { 72561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes f = new File(fileName = System.getProperty("user.home"), "fos.tst"); 73561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fileName = f.getAbsolutePath(); 74561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(fileName); 75561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 76561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Regression test for HARMONY-4012 77561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new FileOutputStream("nul"); 78561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 79561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 80561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 81561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.io.FileOutputStream#FileOutputStream(java.lang.String, 82561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * boolean) 83561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 84561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_ConstructorLjava_lang_StringZ() throws IOException { 85561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes f = new File(System.getProperty("user.home"), "fos.tst"); 86561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(f.getPath(), false); 87561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write("HI".getBytes(), 0, 2); 88561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 89561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(f.getPath(), true); 90561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(fileString.getBytes()); 91561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 92561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes byte[] buf = new byte[fileString.length() + 2]; 93561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fis = new FileInputStream(f.getPath()); 94561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fis.read(buf, 0, buf.length); 95561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Failed to create appending stream", new String(buf, 0, 96561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes buf.length).equals("HI" + fileString)); 97561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 98561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 99561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 100561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.io.FileOutputStream#FileOutputStream(java.lang.String) 101561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 102561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_ConstructorLjava_lang_String_I() throws IOException { 103561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 104561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(""); 105561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("should throw FileNotFoundException."); 106561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (FileNotFoundException e) { 107561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Expected 108561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } finally { 109561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes if (fos != null) { 110561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 111561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 112561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 113561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 114561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(new File("")); 115561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("should throw FileNotFoundException."); 116561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (FileNotFoundException e) { 117561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Expected 118561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } finally { 119561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes if (fos != null) { 120561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 121561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 122561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 123561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 124561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 125561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 126561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.io.FileOutputStream#close() 127561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 128561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_close() throws IOException { 129561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes f = new File(System.getProperty("user.home"), "output.tst"); 130561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(f.getPath()); 131561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 132561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 133561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 134561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(fileString.getBytes()); 135561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("Close test failed - wrote to closed stream"); 136561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IOException e) { 137561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Expected 138561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 139561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 140561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 141561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 142561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.io.FileOutputStream#getFD() 143561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 144561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_getFD() throws IOException { 145561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes f = new File(fileName = System.getProperty("user.home"), "testfd"); 146561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fileName = f.getAbsolutePath(); 147561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(f); 148561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Returned invalid fd", fos.getFD().valid()); 149561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 150561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Returned invalid fd", !fos.getFD().valid()); 151561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 152561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 153561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 154561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.io.FileOutputStream#write(byte[]) 155561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 156561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_write$B() throws IOException { 157561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes f = new File(System.getProperty("user.home"), "output.tst"); 158561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(f.getPath()); 159561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(fileString.getBytes()); 160561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fis = new FileInputStream(f.getPath()); 161561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes byte rbytes[] = new byte[4000]; 162561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fis.read(rbytes, 0, fileString.length()); 163561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Incorrect string returned", new String(rbytes, 0, 164561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fileString.length()).equals(fileString)); 165561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 166561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 167561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 168561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.io.FileOutputStream#write(byte[], int, int) 169561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 170561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_write$BII() throws IOException { 171561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes f = new File(System.getProperty("user.home"), "output.tst"); 172561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(f.getPath()); 173561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(fileString.getBytes(), 0, fileString.length()); 174561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fis = new FileInputStream(f.getPath()); 175561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes byte rbytes[] = new byte[4000]; 176561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fis.read(rbytes, 0, fileString.length()); 177561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Incorrect bytes written", new String(rbytes, 0, fileString 178561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes .length()).equals(fileString)); 179561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 180561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Regression test for HARMONY-285 181561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes File file = new File("FileOutputStream.tmp"); 182561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes file.deleteOnExit(); 183561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes FileOutputStream out = new FileOutputStream(file); 184561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 185561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes out.write(null, 0, 0); 186561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("Should throw NullPointerException"); 187561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 188561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Expected 189561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } finally { 190561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes out.close(); 191561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes file.delete(); 192561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 193561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 194561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 195561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 196561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.io.FileOutputStream#write(int) 197561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 198561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_writeI() throws IOException { 199561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes f = new File(System.getProperty("user.home"), "output.tst"); 200561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(f.getPath()); 201561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write('t'); 202561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fis = new FileInputStream(f.getPath()); 203561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Incorrect char written", 't', fis.read()); 204561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 205561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 206561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 207561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.io.FileOutputStream#write(byte[], int, int) 208561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 209561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_write$BII2() throws IOException { 210561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Regression for HARMONY-437 211561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes f = new File(System.getProperty("user.home"), "output.tst"); 212561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(f.getPath()); 213561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 214561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 215561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(null, 1, 1); 216561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("NullPointerException must be thrown"); 217561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 218561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 219561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 220561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 221561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(new byte[1], -1, 1); 222561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("IndexOutOfBoundsException must be thrown if off <0"); 223561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IndexOutOfBoundsException e) { 224561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 225561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 226561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 227561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(new byte[1], 0, -1); 228561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("IndexOutOfBoundsException must be thrown if len <0"); 229561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IndexOutOfBoundsException e) { 230561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 231561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 232561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 233561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(new byte[1], 0, 5); 234561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("IndexOutOfBoundsException must be thrown if off+len > b.length"); 235561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IndexOutOfBoundsException e) { 236561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 237561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 238561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 239561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(new byte[10], Integer.MAX_VALUE, 5); 240561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("IndexOutOfBoundsException expected"); 241561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IndexOutOfBoundsException e) { 242561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 243561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 244561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 245561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(new byte[10], 5, Integer.MAX_VALUE); 246561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("IndexOutOfBoundsException expected"); 247561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IndexOutOfBoundsException e) { 248561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 249561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 250561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 251561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 252561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 253561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.io.FileOutputStream#write(byte[], int, int) 254561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 255561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_write$BII3() throws IOException { 256561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Regression for HARMONY-834 257561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // no exception expected 258561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new FileOutputStream(new FileDescriptor()).write(new byte[1], 0, 0); 259561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 260561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 261561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 262561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.io.FileOutputStream#getChannel() 263561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 264561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_getChannel() throws IOException { 265561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Regression for HARMONY-508 266561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes File tmpfile = File.createTempFile("FileOutputStream", "tmp"); 267561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes tmpfile.deleteOnExit(); 268561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes FileOutputStream fos = new FileOutputStream(tmpfile); 269561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(bytes); 270561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.flush(); 271561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 272561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes FileOutputStream f = new FileOutputStream(tmpfile, true); 2733087daf498cdd64fb87f4f54b3e65661d0a6bf59Elliott Hughes // Harmony expected 10, but the RI and Android report 0. 2743087daf498cdd64fb87f4f54b3e65661d0a6bf59Elliott Hughes assertEquals(0, f.getChannel().position()); 275561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 276561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 277561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_getChannel_Append() throws IOException { 278561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes File tmpfile = File.createTempFile("FileOutputStream", "tmp"); 279561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes tmpfile.deleteOnExit(); 280561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes FileOutputStream fos = new FileOutputStream(tmpfile, true); 281561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fos.getChannel().position()); 282561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(bytes); 283561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(10, fos.getChannel().position()); 284561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(bytes); 285561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(20, fos.getChannel().position()); 286561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(bytes); 287561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(30, fos.getChannel().position()); 288561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 289561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 290561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 291561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.getChannel().position(); 292561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("should throw ClosedChannelException"); 293561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (java.nio.channels.ClosedChannelException e){ 294561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Expected 295561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 296561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 297561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 298561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_getChannel_UnAppend() throws IOException { 299561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes File tmpfile = File.createTempFile("FileOutputStream", "tmp"); 300561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes tmpfile.deleteOnExit(); 301561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes FileOutputStream fos = new FileOutputStream(tmpfile, false); 302561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fos.getChannel().position()); 303561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(bytes); 304561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(10, fos.getChannel().position()); 305561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(bytes); 306561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(20, fos.getChannel().position()); 307561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(bytes); 308561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(30, fos.getChannel().position()); 309561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 310561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 311561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 312561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.getChannel().position(); 313561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("should throw ClosedChannelException"); 314561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (java.nio.channels.ClosedChannelException e){ 315561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Expected 316561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 317561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 318561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 319561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_getChannel_Unappend_Unappend() throws IOException { 320561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes File tmpfile = File.createTempFile("FileOutputStream", "tmp"); 321561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes tmpfile.deleteOnExit(); 322561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes FileOutputStream fos = new FileOutputStream(tmpfile, false); 323561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fos.getChannel().position()); 324561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(bytes); 325561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(10, fos.getChannel().position()); 326561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 327561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 328561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(tmpfile, false); 329561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fos.getChannel().position()); 330561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 331561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 332561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 333561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_getChannel_Unappend_Append() throws IOException { 334561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes File tmpfile = File.createTempFile("FileOutputStream", "tmp"); 335561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes tmpfile.deleteOnExit(); 336561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes FileOutputStream fos = new FileOutputStream(tmpfile, false); 337561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fos.getChannel().position()); 338561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(bytes); 339561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(10, fos.getChannel().position()); 340561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 341561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 342561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(tmpfile, true); 3433087daf498cdd64fb87f4f54b3e65661d0a6bf59Elliott Hughes // Harmony expected 10, but the RI and Android report 0. 3443087daf498cdd64fb87f4f54b3e65661d0a6bf59Elliott Hughes assertEquals(0, fos.getChannel().position()); 345561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 346561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 347561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 348561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_getChannel_Append_Unappend() throws IOException { 349561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes File tmpfile = File.createTempFile("FileOutputStream", "tmp"); 350561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes tmpfile.deleteOnExit(); 351561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes FileOutputStream fos = new FileOutputStream(tmpfile, true); 352561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fos.getChannel().position()); 353561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(bytes); 354561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(10, fos.getChannel().position()); 355561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 3563087daf498cdd64fb87f4f54b3e65661d0a6bf59Elliott Hughes 357561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(tmpfile, false); 358561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fos.getChannel().position()); 359561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 360561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 361561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 362561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_getChanne_Append_Append() throws IOException { 363561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes File tmpfile = File.createTempFile("FileOutputStream", "tmp"); 364561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes tmpfile.deleteOnExit(); 365561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes FileOutputStream fos = new FileOutputStream(tmpfile, true); 366561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fos.getChannel().position()); 367561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.write(bytes); 368561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(10, fos.getChannel().position()); 369561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 3703087daf498cdd64fb87f4f54b3e65661d0a6bf59Elliott Hughes 371561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos = new FileOutputStream(tmpfile, true); 3723087daf498cdd64fb87f4f54b3e65661d0a6bf59Elliott Hughes // Harmony expected 10, but the RI and Android report 0. 3733087daf498cdd64fb87f4f54b3e65661d0a6bf59Elliott Hughes assertEquals(0, fos.getChannel().position()); 374561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 375561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 376561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 377561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes protected void setUp() { 378561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes bytes = new byte[10]; 379561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes for (int i = 0; i < bytes.length; i++) { 380561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes bytes[i] = (byte) i; 381561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 382561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 383561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 384561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 385561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Tears down the fixture, for example, close a network connection. This 386561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * method is called after a test is executed. 387561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 388561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes @Override 389561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes protected void tearDown() throws Exception { 390561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes super.tearDown(); 391561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes if (f != null) { 392561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes f.delete(); 393561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 394561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes if (fis != null) { 395561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fis.close(); 396561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 397561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes if (fos != null) { 398561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fos.close(); 399561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 400561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 401561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes} 402