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 libcore.java.util.jar; 19 20import java.util.jar.Attributes; 21import junit.framework.TestCase; 22 23public class OldAttributesTest extends TestCase { 24 private Attributes a; 25 26 @Override 27 protected void setUp() { 28 a = new Attributes(); 29 a.putValue("1", "one"); 30 a.putValue("2", "two"); 31 a.putValue("3", "three"); 32 a.putValue("4", "four"); 33 } 34 35 public void test_getLjava_lang_Object() { 36 37 try { 38 a.getValue("IllegalArgumentException expected"); 39 } catch (IllegalArgumentException ee) { 40 // expected 41 } 42 } 43 44 public void test_Constructor() { 45 Attributes attr = new Attributes(); 46 assertTrue(attr.size() >= 0); 47 } 48 49 public void test_ConstructorI() { 50 Attributes attr = new Attributes(10); 51 assertTrue(attr.size() >= 0); 52 } 53 54 public void test_getLjava_lang_Object_true() { 55 assertEquals("a) Incorrect value returned", "one", a 56 .get(new Attributes.Name("1"))); 57 assertNull("b) Incorrect value returned", a.get("0")); 58 assertNull("b) Incorrect value returned", a.get("1")); 59 } 60 61 public void test_getValueLjava_util_jar_Attributes_Name() { 62 assertEquals("a) Incorrect value returned", "one", a 63 .getValue(new Attributes.Name("1"))); 64 assertNull("b) Incorrect value returned", a 65 .getValue(new Attributes.Name("0"))); 66 } 67 68 public void test_hashCode() { 69 Attributes b = (Attributes) a.clone(); 70 b.putValue("33", "Thirty three"); 71 assertNotSame(a.hashCode(), b.hashCode()); 72 b = (Attributes) a.clone(); 73 b.clear(); 74 assertNotSame(a.hashCode(), b.hashCode()); 75 } 76 77 public void test_putValueLjava_lang_StringLjava_lang_String() { 78 Attributes b = new Attributes(); 79 b.put(new Attributes.Name("1"), "one"); 80 b.putValue("2", "two"); 81 b.put(new Attributes.Name("3"), "three"); 82 b.putValue("4", "four"); 83 84 assertTrue(a.equals(b)); 85 86 try { 87 b.putValue(null, "null"); 88 fail("NullPointerException expected"); 89 } catch (NullPointerException ee) { 90 // expected 91 } 92 93 StringBuffer sb = new StringBuffer(); 94 for (int i = 0; i < 0x10000; i++) { 95 sb.append('3'); 96 } 97 try { 98 b.putValue(new String(sb), "wrong name"); 99 fail("IllegalArgumentException expected"); 100 } catch (IllegalArgumentException ee) { 101 // expected 102 } 103 } 104} 105