IllegalStateExceptionTest.java revision cc05ad238516f1303687aba4a978e24e57c0c07a
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.luni.tests.java.lang; 19 20import dalvik.annotation.TestTargets; 21import dalvik.annotation.TestLevel; 22import dalvik.annotation.TestTargetNew; 23import dalvik.annotation.TestTargetClass; 24 25import junit.framework.TestCase; 26import org.apache.harmony.testframework.serialization.SerializationTest; 27 28@TestTargetClass(IllegalStateException.class) 29public class IllegalStateExceptionTest extends TestCase { 30 31 /** 32 * @tests java.lang.IllegalStateException#IllegalStateException() 33 */ 34 @TestTargetNew( 35 level = TestLevel.COMPLETE, 36 notes = "", 37 method = "IllegalStateException", 38 args = {} 39 ) 40 public void test_Constructor() { 41 IllegalStateException e = new IllegalStateException(); 42 assertNull(e.getMessage()); 43 assertNull(e.getLocalizedMessage()); 44 assertNull(e.getCause()); 45 } 46 47 /** 48 * @tests java.lang.IllegalStateException#IllegalStateException(java.lang.String) 49 */ 50 @TestTargetNew( 51 level = TestLevel.COMPLETE, 52 notes = "", 53 method = "IllegalStateException", 54 args = {java.lang.String.class} 55 ) 56 public void test_ConstructorLjava_lang_String() { 57 IllegalStateException e = new IllegalStateException("fixture"); 58 assertEquals("fixture", e.getMessage()); 59 assertNull(e.getCause()); 60 } 61 62 @TestTargetNew( 63 level = TestLevel.COMPLETE, 64 notes = "", 65 method = "IllegalStateException", 66 args = {java.lang.String.class, java.lang.Throwable.class} 67 ) 68 public void test_ConstructorLjava_lang_StringLThrowable() { 69 String message = "Test message"; 70 NullPointerException npe = new NullPointerException(); 71 IllegalStateException e = new IllegalStateException(message, npe); 72 assertEquals(message, e.getMessage()); 73 assertEquals(npe, e.getCause()); 74 75 e = new IllegalStateException(message, null); 76 assertEquals(message, e.getMessage()); 77 assertNull(e.getCause()); 78 } 79 80 @TestTargetNew( 81 level = TestLevel.COMPLETE, 82 notes = "", 83 method = "IllegalStateException", 84 args = {java.lang.Throwable.class} 85 ) 86 public void test_ConstructorLThrowable() { 87 NullPointerException npe = new NullPointerException(); 88 IllegalStateException e = new IllegalStateException(npe); 89 assertEquals(npe, e.getCause()); 90 91 e = new IllegalStateException((Throwable)null); 92 assertNull(e.getCause()); 93 } 94 95 /** 96 * @tests serialization/deserialization. 97 */ 98 @TestTargetNew( 99 level = TestLevel.COMPLETE, 100 notes = "Verifies serialization/deserialization.", 101 method = "!SerializationSelf", 102 args = {} 103 ) 104 public void testSerializationSelf() throws Exception { 105 106 SerializationTest.verifySelf(new IllegalStateException()); 107 } 108 109 /** 110 * @tests serialization/deserialization compatibility with RI. 111 */ 112 @TestTargetNew( 113 level = TestLevel.COMPLETE, 114 notes = "Verifies serialization/deserialization.", 115 method = "!SerializationGolden", 116 args = {} 117 ) 118 public void testSerializationCompatibility() throws Exception { 119 120 SerializationTest.verifyGolden(this, new IllegalStateException()); 121 } 122} 123