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