1/* 2 * Licensed to the Apache Software Foundation (ASF) under one or more 3 * contributor license agreements. See the NOTICE file distributed with 4 * this work for additional information regarding copyright ownership. 5 * The ASF licenses this file to You under the Apache License, Version 2.0 6 * (the "License"); you may not use this file except in compliance with 7 * the License. You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 18package org.apache.harmony.tests.java.io; 19 20import java.io.IOException; 21 22import junit.framework.TestCase; 23 24public class IOExceptionTest extends TestCase { 25 26 /** 27 * java.io.IOException#IOException() 28 */ 29 public void test_Constructor() { 30 try { 31 if (true) { 32 throw new IOException(); 33 } 34 fail("Exception during IOException test"); 35 } catch (IOException e) { 36 // Expected 37 } 38 } 39 40 /** 41 * java.io.IOException#IOException(java.lang.String) 42 */ 43 public void test_ConstructorLjava_lang_String() { 44 try { 45 if (true) { 46 throw new IOException("Some error message"); 47 } 48 fail("Failed to generate exception"); 49 } catch (IOException e) { 50 // Expected 51 } 52 } 53 54 /** 55 * java.io.IOException#IOException(java.lang.String, 56 *java.lang.Throwable) 57 * @since 1.6 58 */ 59 public void test_ConstructorLString_LThrowable() { 60 // Test for constructor java.io.IOException(java.lang.String, java.lang.Throwable) 61 62 IOException ioException = new IOException( 63 "A dummy IOException", new Throwable("A dummy Throwable")); //$NON-NLS-1$//$NON-NLS-2$ 64 assertEquals("A dummy IOException", ioException.getMessage()); //$NON-NLS-1$ 65 66 try { 67 throw new IOException( 68 "A dummy error", new Throwable("Some error message")); //$NON-NLS-1$ //$NON-NLS-2$ 69 } catch (IOException e) { 70 return; 71 } catch (Exception e) { 72 fail("Exception during IOException test" + e.toString()); //$NON-NLS-1$ 73 } 74 fail("Failed to generate exception"); //$NON-NLS-1$ 75 } 76 77 /** 78 * java.io.IOException#IOException(java.lang.Throwable) 79 * @since 1.6 80 */ 81 public void test_Constructor_LThrowable() { 82 // Test for constructor java.io.IOException(java.lang.Throwable) 83 Throwable cause = new Throwable("A dummy Throwable"); //$NON-NLS-1$ 84 IOException ioException = new IOException(cause); 85 assertEquals(cause.toString(), ioException.getMessage()); 86 87 ioException = new IOException((Throwable) null); 88 assertNull(ioException.getMessage()); 89 90 try { 91 throw new IOException(new Throwable("Some error message")); //$NON-NLS-1$ 92 } catch (IOException e) { 93 return; 94 } catch (Exception e) { 95 fail("Exception during IOException test" + e.toString()); //$NON-NLS-1$ 96 } 97 fail("Failed to generate exception"); //$NON-NLS-1$ 98 } 99 100 /** 101 * Sets up the fixture, for example, open a network connection. This method 102 * is called before a test is executed. 103 */ 104 protected void setUp() { 105 } 106 107 /** 108 * Tears down the fixture, for example, close a network connection. This 109 * method is called after a test is executed. 110 */ 111 protected void tearDown() { 112 } 113} 114