2 * Copyright (C) 2014, United States Government, as represented by the
3 * Administrator of the National Aeronautics and Space Administration.
6 * The Java Pathfinder core (jpf-core) platform is licensed under the
7 * Apache License, Version 2.0 (the "License"); you may not use this file except
8 * in compliance with the License. You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0.
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
19 package gov.nasa.jpf.test.java.lang.reflect;
21 import gov.nasa.jpf.util.test.TestJPF;
22 import java.lang.reflect.Constructor;
23 import org.junit.Test;
25 public class ConstructorTest extends TestJPF {
27 public static void main (String[] args){
28 runTestsOfThisClass(args);
31 public static class Test1 {
32 public Test1 (Class<?>... argTypes) {
35 public Test1 (Object[] argTypes) {
40 public void equalsTest () throws SecurityException, NoSuchMethodException{
41 if (verifyNoPropertyViolation()){
42 Constructor ctor1 = String.class.getConstructor();
43 Constructor ctor2 = String.class.getConstructor();
44 assertTrue(ctor1.equals(ctor2));
45 assertFalse(ctor1 == ctor2);
50 public void isVarArgsTest () throws SecurityException, NoSuchMethodException{
51 if (verifyNoPropertyViolation()){
52 assertTrue(Test1.class.getConstructors()[0].isVarArgs());
53 assertFalse(Test1.class.getConstructors()[1].isVarArgs());
58 public void hashCodeTest (){
59 if (verifyNoPropertyViolation()){
60 Constructor ctor1 = Test1.class.getConstructors()[0];
61 Constructor ctor2 = Test1.class.getConstructors()[1];
62 assertTrue(ctor1.hashCode() == ctor2.hashCode());