1 /* 2 * Copyright (C) 2011 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package libcore.java.lang; 18 19 import java.util.Arrays; 20 import java.util.List; 21 import junit.framework.TestCase; 22 23 public final class PackageTest extends TestCase { 24 /** assign packages immediately so that Class.getPackage() calls cannot side-effect it */ 25 private static final List<Package> packages = Arrays.asList(Package.getPackages()); 26 test_getAnnotations()27 public void test_getAnnotations() throws Exception { 28 // Pre-ICS we crashed. To pass, the package-info and TestPackageAnnotation classes must be 29 // on the classpath. 30 assertEquals(1, getClass().getPackage().getAnnotations().length); 31 assertEquals(1, getClass().getPackage().getDeclaredAnnotations().length); 32 } 33 testGetPackage()34 public void testGetPackage() { 35 Package libcoreJavaLang = Package.getPackage("libcore.java.lang"); 36 assertEquals("libcore.java.lang", libcoreJavaLang.getName()); 37 assertEquals(getClass().getPackage(), libcoreJavaLang); 38 } 39 40 // http://b/28057303 test_toString()41 public void test_toString() throws Exception { 42 Package libcoreJavaLang = Package.getPackage("libcore.java.lang"); 43 assertEquals("package libcore.java.lang", libcoreJavaLang.toString()); 44 } 45 46 // http://b/5171136 testGetPackages()47 public void testGetPackages() { 48 assertTrue(packages.contains(getClass().getPackage())); 49 } 50 } 51