1 /* 2 * Copyright 2016 Federico Tomassetti 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 com.github.javaparser.symbolsolver.javassistmodel; 18 19 import com.github.javaparser.resolution.declarations.ResolvedEnumDeclaration; 20 import com.github.javaparser.symbolsolver.AbstractTest; 21 import com.github.javaparser.symbolsolver.model.resolution.TypeSolver; 22 import com.github.javaparser.symbolsolver.resolution.typesolvers.CombinedTypeSolver; 23 import com.github.javaparser.symbolsolver.resolution.typesolvers.JarTypeSolver; 24 import com.github.javaparser.symbolsolver.resolution.typesolvers.ReflectionTypeSolver; 25 import org.junit.Before; 26 import org.junit.Test; 27 28 import java.io.IOException; 29 30 import static org.junit.Assert.assertEquals; 31 32 public class JavassistEnumDeclarationTest extends AbstractTest { 33 34 private TypeSolver typeSolver; 35 36 @Before 37 public void setup() throws IOException { 38 String pathToJar = adaptPath("src/test/resources/javaparser-core-3.0.0-alpha.2.jar"); 39 typeSolver = new CombinedTypeSolver(new JarTypeSolver(pathToJar), new ReflectionTypeSolver()); 40 } 41 42 /// 43 /// Test misc 44 /// 45 46 @Test 47 public void testIsClass() { 48 ResolvedEnumDeclaration modifier = (ResolvedEnumDeclaration) typeSolver.solveType("com.github.javaparser.ast.Modifier"); 49 assertEquals(false, modifier.isClass()); 50 } 51 52 @Test 53 public void testIsInterface() { 54 ResolvedEnumDeclaration modifier = (ResolvedEnumDeclaration) typeSolver.solveType("com.github.javaparser.ast.Modifier"); 55 assertEquals(false, modifier.isInterface()); 56 } 57 58 @Test 59 public void testIsEnum() { 60 ResolvedEnumDeclaration modifier = (ResolvedEnumDeclaration) typeSolver.solveType("com.github.javaparser.ast.Modifier"); 61 assertEquals(true, modifier.isEnum()); 62 } 63 64 @Test 65 public void testIsTypeVariable() { 66 ResolvedEnumDeclaration modifier = (ResolvedEnumDeclaration) typeSolver.solveType("com.github.javaparser.ast.Modifier"); 67 assertEquals(false, modifier.isTypeParameter()); 68 } 69 70 @Test 71 public void testIsType() { 72 ResolvedEnumDeclaration modifier = (ResolvedEnumDeclaration) typeSolver.solveType("com.github.javaparser.ast.Modifier"); 73 assertEquals(true, modifier.isType()); 74 } 75 76 @Test 77 public void testAsType() { 78 ResolvedEnumDeclaration modifier = (ResolvedEnumDeclaration) typeSolver.solveType("com.github.javaparser.ast.Modifier"); 79 assertEquals(modifier, modifier.asType()); 80 } 81 82 @Test(expected = UnsupportedOperationException.class) 83 public void testAsClass() { 84 ResolvedEnumDeclaration modifier = (ResolvedEnumDeclaration) typeSolver.solveType("com.github.javaparser.ast.Modifier"); 85 modifier.asClass(); 86 } 87 88 @Test(expected = UnsupportedOperationException.class) 89 public void testAsInterface() { 90 ResolvedEnumDeclaration modifier = (ResolvedEnumDeclaration) typeSolver.solveType("com.github.javaparser.ast.Modifier"); 91 modifier.asInterface(); 92 } 93 94 @Test 95 public void testAsEnum() { 96 ResolvedEnumDeclaration modifier = (ResolvedEnumDeclaration) typeSolver.solveType("com.github.javaparser.ast.Modifier"); 97 assertEquals(modifier, modifier.asEnum()); 98 } 99 100 @Test 101 public void testGetPackageName() { 102 ResolvedEnumDeclaration modifier = (ResolvedEnumDeclaration) typeSolver.solveType("com.github.javaparser.ast.Modifier"); 103 assertEquals("com.github.javaparser.ast", modifier.getPackageName()); 104 } 105 106 @Test 107 public void testGetClassName() { 108 ResolvedEnumDeclaration modifier = (ResolvedEnumDeclaration) typeSolver.solveType("com.github.javaparser.ast.Modifier"); 109 assertEquals("Modifier", modifier.getClassName()); 110 } 111 112 @Test 113 public void testGetQualifiedName() { 114 ResolvedEnumDeclaration modifier = (ResolvedEnumDeclaration) typeSolver.solveType("com.github.javaparser.ast.Modifier"); 115 assertEquals("com.github.javaparser.ast.Modifier", modifier.getQualifiedName()); 116 } 117 118 /// 119 /// Test ancestors 120 /// 121 122 } 123