108bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes/* 208bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes * Copyright (C) 2011 The Android Open Source Project 308bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes * 408bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes * Licensed under the Apache License, Version 2.0 (the "License"); 508bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes * you may not use this file except in compliance with the License. 608bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes * You may obtain a copy of the License at 708bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes * 808bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes * http://www.apache.org/licenses/LICENSE-2.0 908bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes * 1008bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes * Unless required by applicable law or agreed to in writing, software 1108bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes * distributed under the License is distributed on an "AS IS" BASIS, 1208bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1308bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes * See the License for the specific language governing permissions and 1408bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes * limitations under the License. 1508bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes */ 1608bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 1708bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughespackage libcore.java.lang.reflect; 1808bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 1908bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughesimport java.lang.reflect.Modifier; 2008bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 2108bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughespublic class ModifierTest extends junit.framework.TestCase { 2208bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_classModifiers() { 2308bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertEquals(0xc1f, Modifier.classModifiers()); 2408bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 2508bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 2608bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_constructorModifiers() { 2708bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertEquals(0x007, Modifier.constructorModifiers()); 2808bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 2908bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 3008bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_fieldModifiers() { 3108bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertEquals(0x0df, Modifier.fieldModifiers()); 3208bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 3308bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 3408bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_interfaceModifiers() { 3508bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertEquals(0xc0f, Modifier.interfaceModifiers()); 3608bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 3708bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 3808bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_methodModifiers() { 3908bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertEquals(0xd3f, Modifier.methodModifiers()); 4008bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 4108bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 4208bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_isAbstractI() { 4308bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(Modifier.isAbstract(Modifier.ABSTRACT)); 4408bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(!Modifier.isAbstract(-1 & ~Modifier.ABSTRACT)); 4508bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 4608bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 4708bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_isFinalI() { 4808bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(Modifier.isFinal(Modifier.FINAL)); 4908bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(!Modifier.isFinal(-1 & ~Modifier.FINAL)); 5008bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 5108bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 5208bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_isInterfaceI() { 5308bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(Modifier.isInterface(Modifier.INTERFACE)); 5408bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(!Modifier.isInterface(-1 & ~Modifier.INTERFACE)); 5508bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 5608bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 5708bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_isNativeI() { 5808bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(Modifier.isNative(Modifier.NATIVE)); 5908bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(!Modifier.isNative(-1 & ~Modifier.NATIVE)); 6008bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 6108bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 6208bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_isPrivateI() { 6308bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(Modifier.isPrivate(Modifier.PRIVATE)); 6408bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(!Modifier.isPrivate(-1 & ~Modifier.PRIVATE)); 6508bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 6608bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 6708bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_isProtectedI() { 6808bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(Modifier.isProtected(Modifier.PROTECTED)); 6908bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(!Modifier.isProtected(-1 & ~Modifier.PROTECTED)); 7008bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 7108bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 7208bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_isPublicI() { 7308bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(Modifier.isPublic(Modifier.PUBLIC)); 7408bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(!Modifier.isPublic(-1 & ~Modifier.PUBLIC)); 7508bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 7608bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 7708bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_isStaticI() { 7808bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(Modifier.isStatic(Modifier.STATIC)); 7908bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(!Modifier.isStatic(-1 & ~Modifier.STATIC)); 8008bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 8108bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 8208bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_isStrictI() { 8308bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(Modifier.isStrict(Modifier.STRICT)); 8408bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(!Modifier.isStrict(-1 & ~Modifier.STRICT)); 8508bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 8608bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 8708bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_isSynchronizedI() { 8808bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(Modifier.isSynchronized(Modifier.SYNCHRONIZED)); 8908bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(!Modifier.isSynchronized(-1 & ~Modifier.SYNCHRONIZED)); 9008bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 9108bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 9208bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_isTransientI() { 9308bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(Modifier.isTransient(Modifier.TRANSIENT)); 9408bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(!Modifier.isTransient(-1 & ~Modifier.TRANSIENT)); 9508bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 9608bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 9708bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_isVolatileI() { 9808bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(Modifier.isVolatile(Modifier.VOLATILE)); 9908bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertTrue(!Modifier.isVolatile(-1 & ~Modifier.VOLATILE)); 10008bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 10108bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes 10208bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes public void test_toStringI() { 10308bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes assertEquals("public abstract", Modifier.toString(Modifier.PUBLIC | Modifier.ABSTRACT)); 10408bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes } 10508bad46e2b61b5005eb02a401e97fec25d9d3013Elliott Hughes} 106