パッケージ test.myproject.java.utils

クラス ClassUtilsTest

java.lang.Object
test.myproject.java.utils.ClassUtilsTest

public class ClassUtilsTest extends Object
ClassUtilsクラスのテストを実行します。
作成者:
ycookjp my project
  • コンストラクタの詳細

    • ClassUtilsTest

      public ClassUtilsTest()
  • メソッドの詳細

    • testGetClassFilePath

      public void testGetClassFilePath()
      ClassUtils.getClassDirParent(Class)メソッドのテストを実行します。
      • 引数にClassUtilsTest(テストクラス)を指定すると、結果が/targetで終わる
      • 引数にTest(Jarのクラス)を指定すると、結果に"/junit/junit/"が含まれる
      • 引数にStackOverflowErrorのクラスを指定するとnullが返る
      • 引数にnullを設定するとnullが返る
    • testFindField

      public void testFindField()
      ClassUtils.findField(Class, String, int)メソッドをテストします。
      • 引数に JTableHeader.class, "columnModel", Modifier.PUBLIC + Modifier.PROTECTEDを指定すると protectedフィールド JTableHeader.columnModel を取得できること
      • 引数に JTableHeader.class, "WIDTH", -1を指定するとpackageフィールド ImageObserver.WIDTH を 取得できること
      • 引数に JTableHeader.class, "columnModel", Modifier.PUBLIC + Modifier.PROTECTED を指定すると protectedフィールド Component.accessibleContext を取得できること
      • 引数に JTableHeader.class, "defaultRenderer", Modifier.PUBLIC + Modifier.PROTECTED + Modifier.PRIVATE を指定するとprivateフィールド JTableHeader.defaultRenderer を取得できること
      • 引数に TableHeader.class, "graphicsConfig", Modifier.PRIVATE を指定すると privateフィールド JTableHeader.defaultRenderer を取得できること
      • 引数に null, "graphicsConfig", Modifier.PRIVATE を指定すると null が返ること
      • 引数に JTableHeader.class, null, Modifier.PRIVATE を指定すると null が返ること
      • 引数に JTableHeader.class, "graphicsConfig", Modifier.PROTECTED を指定すると NoSuchFieldException例外が発生すること
      • 引数に JTableHeader.class, "foo", -1 を指定すると NoSuchFieldException例外が発生すること
    • testFindMethod

      public void testFindMethod()
      ClassUtils.findMethod(Class, String, Class[], int)メソッドをテストします。
      • 引数に JTableHeader.class, "writeObject", new Class[] {ObjectOutputStream.class}, Modifier.PUBLIC + Modifier.PROTECTED + Modifier.PRIVATE を指定すると private メソッド writeObject(java.io.ObjectOutputStream) を取得できること
      • 引数に JTableHeader.class, "getRecursivelyVisibleBounds", null, -1 を指定すると privateメソッド Component.getRecursivelyVisibleBounds() を取得できること
      • 引数に JTableHeader.class, "toString", null, Modifier.PUBLIC を指定すると publicメソッド Component.toString() を取得できること
      • 引数に SortedMap.class, "entrySet", new Class[] {}, Modifier.PUBLIC を指定すると メソッド SortedMap.entrySet() を取得できること
      • 引数に SortedMap.class, "remove", new Class[] {Object.class, Object.class}, Modifier.PUBLIC を指定すると メソッド Map.remove(Object, Object) を取得できること
      • 引数に JTableHeader.class, "addVetoableChangeListener", new Class[] {VetoableChangeListener.class}, Modifier.PUBLIC を指定すると publicメソッド JComponent.addVetoableChangeListener(VetoableChangeListener) を取得できること
      • 引数に null, "getRecursivelyVisibleBounds", null, -1 を指定すると null が返ること
      • 引数に JTableHeader.class, null, null, -1 を指定すると null が返ること
      • 引数に JTableHeader.class, "bar", null, -1 を指定すると NoSuchMethodException が発生すること
      • 引数に JTableHeader.class, "getRecursivelyVisibleBounds", null, Modifier.PUBLIC + Modifier.PROTECTED を 指定すると NoSuchMethodException が発生すること