This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-bcel.git


The following commit(s) were added to refs/heads/master by this push:
     new 70b474d0 Add BasicTypeTest
70b474d0 is described below

commit 70b474d0c952f4bceabcc1d93f5fdf8e5bde8fce
Author: Gary David Gregory (Code signing key) <ggreg...@apache.org>
AuthorDate: Fri Nov 18 17:11:44 2022 -0500

    Add BasicTypeTest
---
 src/changes/changes.xml                            |  1 +
 .../java/org/apache/bcel/generic/ArrayType.java    |  1 +
 .../java/org/apache/bcel/generic/ObjectType.java   |  1 +
 src/main/java/org/apache/bcel/generic/Type.java    |  4 ++
 .../org/apache/bcel/generic/BasicTypeTest.java     | 58 ++++++++++++++++++++++
 5 files changed, 65 insertions(+)

diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index b4edc5af..52cca6d8 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -68,6 +68,7 @@ The <action> type attribute can be add,update,fix,remove.
       <action                  type="add" dev="ggregory" due-to="Gary 
Gregory">Add org.apache.bcel.classfile.JavaClass.EXTENSION.</action>
       <action                  type="add" dev="ggregory" due-to="Gary 
Gregory">Add org.apache.bcel.util.Args.</action>
       <action                  type="add" dev="ggregory" due-to="Gary 
Gregory">Add org.apache.bcel.generic.ArrayType.getClassName().</action>
+      <action                  type="add" dev="ggregory" due-to="Gary 
Gregory">Add org.apache.bcel.generic.Type.getClassName().</action>
       <!-- FIX -->
       <action                  type="fix" dev="ggregory" due-to="nbauma109, 
Gary Gregory">Typo in SimpleElementValue error message #161.</action>
       <action                  type="fix" dev="ggregory" due-to="Mark Roberts, 
Gary Gregory">Fix code duplication in 
org.apache.bcel.verifier.structurals.ExceptionHandlers.ExceptionHandlers(MethodGen).</action>
diff --git a/src/main/java/org/apache/bcel/generic/ArrayType.java 
b/src/main/java/org/apache/bcel/generic/ArrayType.java
index 71786417..2c7601b5 100644
--- a/src/main/java/org/apache/bcel/generic/ArrayType.java
+++ b/src/main/java/org/apache/bcel/generic/ArrayType.java
@@ -103,6 +103,7 @@ public final class ArrayType extends ReferenceType {
      * @return name of referenced class.
      * @since 6.7.0
      */
+    @Override
     public String getClassName() {
         return signature;
     }
diff --git a/src/main/java/org/apache/bcel/generic/ObjectType.java 
b/src/main/java/org/apache/bcel/generic/ObjectType.java
index 3e71cba2..3959f7df 100644
--- a/src/main/java/org/apache/bcel/generic/ObjectType.java
+++ b/src/main/java/org/apache/bcel/generic/ObjectType.java
@@ -74,6 +74,7 @@ public class ObjectType extends ReferenceType {
     /**
      * @return name of referenced class
      */
+    @Override
     public String getClassName() {
         return className;
     }
diff --git a/src/main/java/org/apache/bcel/generic/Type.java 
b/src/main/java/org/apache/bcel/generic/Type.java
index 0e935349..9ff8110f 100644
--- a/src/main/java/org/apache/bcel/generic/Type.java
+++ b/src/main/java/org/apache/bcel/generic/Type.java
@@ -119,6 +119,10 @@ public abstract class Type {
         return res;
     }
 
+    public String getClassName() {
+        return toString();
+    }
+
     /**
      * Convert type to Java method signature, e.g. int[] f(java.lang.String x) 
becomes (Ljava/lang/String;)[I
      *
diff --git a/src/test/java/org/apache/bcel/generic/BasicTypeTest.java 
b/src/test/java/org/apache/bcel/generic/BasicTypeTest.java
new file mode 100644
index 00000000..2533a31f
--- /dev/null
+++ b/src/test/java/org/apache/bcel/generic/BasicTypeTest.java
@@ -0,0 +1,58 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+
+package org.apache.bcel.generic;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import org.apache.bcel.Const;
+import org.junit.jupiter.api.Test;
+
+public class BasicTypeTest {
+
+    @Test
+    public void testClassName() {
+        assertEquals(boolean.class.getName(), 
BasicType.getType(Const.T_BOOLEAN).getClassName());
+        assertEquals(byte.class.getName(), 
BasicType.getType(Const.T_BYTE).getClassName());
+        assertEquals(char.class.getName(), 
BasicType.getType(Const.T_CHAR).getClassName());
+        assertEquals(double.class.getName(), 
BasicType.getType(Const.T_DOUBLE).getClassName());
+        assertEquals(float.class.getName(), 
BasicType.getType(Const.T_FLOAT).getClassName());
+        assertEquals(int.class.getName(), 
BasicType.getType(Const.T_INT).getClassName());
+        assertEquals(long.class.getName(), 
BasicType.getType(Const.T_LONG).getClassName());
+        assertEquals(short.class.getName(), 
BasicType.getType(Const.T_SHORT).getClassName());
+        assertEquals(void.class.getName(), 
BasicType.getType(Const.T_VOID).getClassName());
+    }
+
+    @Test
+    public void testGetType() {
+        assertEquals(Type.BYTE, BasicType.getType(Const.T_BYTE));
+    }
+
+    @Test
+    public void testSignature() {
+        assertEquals("Z", BasicType.getType(Const.T_BOOLEAN).getSignature());
+        assertEquals("B", BasicType.getType(Const.T_BYTE).getSignature());
+        assertEquals("C", BasicType.getType(Const.T_CHAR).getSignature());
+        assertEquals("D", BasicType.getType(Const.T_DOUBLE).getSignature());
+        assertEquals("F", BasicType.getType(Const.T_FLOAT).getSignature());
+        assertEquals("I", BasicType.getType(Const.T_INT).getSignature());
+        assertEquals("J", BasicType.getType(Const.T_LONG).getSignature());
+        assertEquals("S", BasicType.getType(Const.T_SHORT).getSignature());
+        assertEquals("V", BasicType.getType(Const.T_VOID).getSignature());
+    }
+}
+

Reply via email to