org.seasar.framework.unit.impl
クラス AnnotationTestIntrospector

java.lang.Object
  上位を拡張 org.seasar.framework.unit.impl.AnnotationTestIntrospector
すべての実装されたインタフェース:
S2TestIntrospector
直系の既知のサブクラス:
ConventionTestIntrospector

public class AnnotationTestIntrospector
extends java.lang.Object
implements S2TestIntrospector

アノテーションを解釈してテストクラスを分析するイントロスペクターです。

作成者:
taedium

フィールドの概要
protected  java.lang.Class<? extends java.lang.annotation.Annotation> afterAnnotation
          全テストケースに共通の解放メソッドに注釈可能なアノテーションクラス
protected  java.lang.Class<? extends java.lang.annotation.Annotation> afterClassAnnotation
          テストクラスの解放メソッドに注釈可能なアノテーションクラス
protected  java.lang.Class<? extends java.lang.annotation.Annotation> beforeAnnotation
          全テストケースに共通の初期化メソッドに注釈可能なアノテーションクラス
protected  java.lang.Class<? extends java.lang.annotation.Annotation> beforeClassAnnotation
          テストクラスの初期化メソッドに注釈可能なアノテーションクラス
protected  boolean enableIgnore
          テストケースを無視する処理が有効かどうかを表すフラグ。
protected  boolean enablePrerequisite
          テストケースの事前条件チェック処理が有効かどうかを表すフラグ。
protected  java.lang.Class<? extends java.lang.annotation.Annotation> postBindFieldsAnnotation
          テストクラスのバインドフィールド直後のメソッドに注釈可能なアノテーションクラス
protected  java.lang.Class<? extends java.lang.annotation.Annotation> preUnbindFieldsAnnotation
          テストクラスのアンバインドフィールド直前のメソッドメソッドに注釈可能なアノテーションクラス
 
コンストラクタの概要
AnnotationTestIntrospector()
           
 
メソッドの概要
protected  Expression createExpression(java.lang.String source, java.lang.reflect.Method method, java.lang.Object test)
          式を作成します。
 void createMock(java.lang.reflect.Method method, java.lang.Object test, InternalTestContext context)
          MockInterceptorを利用したモックを作成します。
protected  void createMock(Mock mock, java.lang.reflect.Method method, java.lang.Object test, InternalTestContext context)
          mockからモックインターセプターを作成し、contextに登録します。
 java.lang.Class<? extends java.lang.Throwable> expectedException(java.lang.reflect.Method method)
          メソッドがスローすると期待される例外もしくはエラーのクラスを返します。
 java.util.List<java.lang.reflect.Method> getAfterClassMethods(java.lang.Class<?> clazz)
          テストクラスの解放メソッドのリストを返します。
 java.util.List<java.lang.reflect.Method> getAfterMethods(java.lang.Class<?> clazz)
          すべてのテストケース共通の解放メソッドのリストを返します。
protected  java.util.List<java.lang.reflect.Method> getAnnotatedMethods(java.lang.Class<?> clazz, java.lang.Class<? extends java.lang.annotation.Annotation> annotationClass)
          アノテーションが付与されたメソッドのリストを返します。
 java.util.List<java.lang.reflect.Method> getBeforeClassMethods(java.lang.Class<?> clazz)
          テストクラスの初期化メソッドのリストを返します。
 java.util.List<java.lang.reflect.Method> getBeforeMethods(java.lang.Class<?> clazz)
          すべてのテストケース共通の初期化メソッドのリストを返します。
 java.lang.reflect.Method getEachAfterMethod(java.lang.Class<?> clazz, java.lang.reflect.Method method)
          テストケース個別の解放メソッドを返します。
 java.lang.reflect.Method getEachBeforeMethod(java.lang.Class<?> clazz, java.lang.reflect.Method method)
          テストケース個別の初期化メソッドを返します。
 java.lang.reflect.Method getEachRecordMethod(java.lang.Class<?> clazz, java.lang.reflect.Method method)
          テストケース個別の記録メソッドを返します。
 java.util.List<java.lang.reflect.Method> getPostBindFieldsMethods(java.lang.Class<?> clazz)
          すべてのテストケース共通のバインドフィールド直後のメソッドのリストを返します。
 java.util.List<java.lang.reflect.Method> getPreUnbindFieldsMethods(java.lang.Class<?> clazz)
          すべてのテストケース共通のアンバインドフィールド直前のメソッドのリストを返します。
 java.lang.String getRootDicon(java.lang.Class<?> clazz, java.lang.reflect.Method method)
          ルートコンテナを表すdiconファイルのパスを返します。
 java.util.List<java.lang.reflect.Method> getTestMethods(java.lang.Class<?> clazz)
          指定されたテストクラス内のすべてのテストメソッドを返します。
 long getTimeout(java.lang.reflect.Method method)
          メソッドの実行のタイムアウトを表すミリ秒を返します。
protected  TxBehaviorType getTxBehaviorType(java.lang.Class<?> clazz, java.lang.reflect.Method method)
          トランザクションの振る舞いを返します。
 boolean isFulfilled(java.lang.Class<?> clazz, java.lang.reflect.Method method, java.lang.Object test)
          テストケース実行の事前条件が満たされている場合trueを返します。
protected  boolean isFulfilled(Expression expression)
          事前条件が満たされた場合trueを返します。
 boolean isIgnored(java.lang.reflect.Method method)
          メソッドが無視の対象の場合trueを返します。
 boolean isRegisterNamingConvention(java.lang.Class<?> clazz, java.lang.reflect.Method method)
          NamingConventionが登録される場合trueを返します。
 boolean needsTransaction(java.lang.Class<?> clazz, java.lang.reflect.Method method)
          トランザクションが必要とされる場合trueを返します。
 boolean needsWarmDeploy(java.lang.Class<?> clazz, java.lang.reflect.Method method)
          WARM deployが必要とされる場合trueを返します。
 boolean requiresTransactionCommitment(java.lang.Class<?> clazz, java.lang.reflect.Method method)
          トランザクションのコミットが必要とされる場合trueを返します。
protected  boolean runsTopToBottom(java.lang.Class<? extends java.lang.annotation.Annotation> annotation)
          クラスの階層構造の上位から実行するならばtrueを返します。
 void setAfterAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> afterAnnotation)
          全テストケースに共通の初期化メソッドに注釈可能なアノテーションクラスを設定します。
 void setAfterClassAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> afterClassAnnotation)
          テストクラスの解放メソッドに注釈可能なアノテーションクラスを設定します。
 void setBeforeAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> beforeAnnotation)
          全テストケースに共通の初期化メソッドに注釈可能なアノテーションクラスを設定します。
 void setBeforeClassAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> beforeClassAnnotation)
          テストクラスの初期化メソッドに注釈可能なアノテーションクラスを設定します。
 void setEnableIgnore(boolean enableIgnore)
          テストケースを無視する処理を有効とするかどうかを設定します。
 void setEnablePrerequisite(boolean enablePrerequisite)
          テストケースの事前条件チェックの処理を有効とするかどうかを設定します。
 void setPostBindFieldsAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> postBindFieldsAnnotation)
          テストクラスのバインドフィールド直後のメソッドに注釈可能なアノテーションクラスを設定します。
 void setPreUnbindFieldsAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> preUnbindFieldsAnnotation)
          テストクラスのアンバインドフィールド直前のメソッドに注釈可能なアノテーションクラスを設定します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

beforeClassAnnotation

protected java.lang.Class<? extends java.lang.annotation.Annotation> beforeClassAnnotation
テストクラスの初期化メソッドに注釈可能なアノテーションクラス


afterClassAnnotation

protected java.lang.Class<? extends java.lang.annotation.Annotation> afterClassAnnotation
テストクラスの解放メソッドに注釈可能なアノテーションクラス


beforeAnnotation

protected java.lang.Class<? extends java.lang.annotation.Annotation> beforeAnnotation
全テストケースに共通の初期化メソッドに注釈可能なアノテーションクラス


afterAnnotation

protected java.lang.Class<? extends java.lang.annotation.Annotation> afterAnnotation
全テストケースに共通の解放メソッドに注釈可能なアノテーションクラス


postBindFieldsAnnotation

protected java.lang.Class<? extends java.lang.annotation.Annotation> postBindFieldsAnnotation
テストクラスのバインドフィールド直後のメソッドに注釈可能なアノテーションクラス


preUnbindFieldsAnnotation

protected java.lang.Class<? extends java.lang.annotation.Annotation> preUnbindFieldsAnnotation
テストクラスのアンバインドフィールド直前のメソッドメソッドに注釈可能なアノテーションクラス


enableIgnore

protected boolean enableIgnore
テストケースを無視する処理が有効かどうかを表すフラグ。デフォルトはtrue


enablePrerequisite

protected boolean enablePrerequisite
テストケースの事前条件チェック処理が有効かどうかを表すフラグ。デフォルトはtrue

コンストラクタの詳細

AnnotationTestIntrospector

public AnnotationTestIntrospector()
メソッドの詳細

setBeforeClassAnnotation

public void setBeforeClassAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> beforeClassAnnotation)
テストクラスの初期化メソッドに注釈可能なアノテーションクラスを設定します。

パラメータ:
beforeClassAnnotation - アノテーションクラス

setAfterClassAnnotation

public void setAfterClassAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> afterClassAnnotation)
テストクラスの解放メソッドに注釈可能なアノテーションクラスを設定します。

パラメータ:
afterClassAnnotation - アノテーションクラス

setBeforeAnnotation

public void setBeforeAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> beforeAnnotation)
全テストケースに共通の初期化メソッドに注釈可能なアノテーションクラスを設定します。

パラメータ:
beforeAnnotation - アノテーションクラス

setAfterAnnotation

public void setAfterAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> afterAnnotation)
全テストケースに共通の初期化メソッドに注釈可能なアノテーションクラスを設定します。

パラメータ:
afterAnnotation - アノテーションクラス

setPostBindFieldsAnnotation

public void setPostBindFieldsAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> postBindFieldsAnnotation)
テストクラスのバインドフィールド直後のメソッドに注釈可能なアノテーションクラスを設定します。

パラメータ:
postBindFieldsAnnotation - アノテーションクラス

setPreUnbindFieldsAnnotation

public void setPreUnbindFieldsAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> preUnbindFieldsAnnotation)
テストクラスのアンバインドフィールド直前のメソッドに注釈可能なアノテーションクラスを設定します。

パラメータ:
preUnbindFieldsAnnotation - アノテーションクラス

setEnableIgnore

public void setEnableIgnore(boolean enableIgnore)
テストケースを無視する処理を有効とするかどうかを設定します。

パラメータ:
enableIgnore - 無視する処理が有効の場合true、そうでない場合false

setEnablePrerequisite

public void setEnablePrerequisite(boolean enablePrerequisite)
テストケースの事前条件チェックの処理を有効とするかどうかを設定します。

パラメータ:
enablePrerequisite - 事前条件チェックの処理が有効の場合true、そうでない場合false

getBeforeClassMethods

public java.util.List<java.lang.reflect.Method> getBeforeClassMethods(java.lang.Class<?> clazz)
インタフェース S2TestIntrospector の記述:
テストクラスの初期化メソッドのリストを返します。

定義:
インタフェース S2TestIntrospector 内の getBeforeClassMethods
パラメータ:
clazz - テストクラス
戻り値:
初期化メソッドのリスト

getAfterClassMethods

public java.util.List<java.lang.reflect.Method> getAfterClassMethods(java.lang.Class<?> clazz)
インタフェース S2TestIntrospector の記述:
テストクラスの解放メソッドのリストを返します。

定義:
インタフェース S2TestIntrospector 内の getAfterClassMethods
パラメータ:
clazz - テストクラス
戻り値:
解放メソッドのリスト

getPostBindFieldsMethods

public java.util.List<java.lang.reflect.Method> getPostBindFieldsMethods(java.lang.Class<?> clazz)
インタフェース S2TestIntrospector の記述:
すべてのテストケース共通のバインドフィールド直後のメソッドのリストを返します。

定義:
インタフェース S2TestIntrospector 内の getPostBindFieldsMethods
パラメータ:
clazz - テストクラス
戻り値:
バインドフィールドメソッド

getPreUnbindFieldsMethods

public java.util.List<java.lang.reflect.Method> getPreUnbindFieldsMethods(java.lang.Class<?> clazz)
インタフェース S2TestIntrospector の記述:
すべてのテストケース共通のアンバインドフィールド直前のメソッドのリストを返します。

定義:
インタフェース S2TestIntrospector 内の getPreUnbindFieldsMethods
戻り値:

getBeforeMethods

public java.util.List<java.lang.reflect.Method> getBeforeMethods(java.lang.Class<?> clazz)
インタフェース S2TestIntrospector の記述:
すべてのテストケース共通の初期化メソッドのリストを返します。

定義:
インタフェース S2TestIntrospector 内の getBeforeMethods
パラメータ:
clazz - テストクラス
戻り値:
初期化メソッドのリスト

getAfterMethods

public java.util.List<java.lang.reflect.Method> getAfterMethods(java.lang.Class<?> clazz)
インタフェース S2TestIntrospector の記述:
すべてのテストケース共通の解放メソッドのリストを返します。

定義:
インタフェース S2TestIntrospector 内の getAfterMethods
パラメータ:
clazz - テストクラス
戻り値:
解放メソッドのリスト

getTestMethods

public java.util.List<java.lang.reflect.Method> getTestMethods(java.lang.Class<?> clazz)
インタフェース S2TestIntrospector の記述:
指定されたテストクラス内のすべてのテストメソッドを返します。

定義:
インタフェース S2TestIntrospector 内の getTestMethods
パラメータ:
clazz - テストクラス
戻り値:
テストメソッドのリスト

getAnnotatedMethods

protected java.util.List<java.lang.reflect.Method> getAnnotatedMethods(java.lang.Class<?> clazz,
                                                                       java.lang.Class<? extends java.lang.annotation.Annotation> annotationClass)
アノテーションが付与されたメソッドのリストを返します。

パラメータ:
clazz - テストクラス
annotationClass - アノテーションクラス
戻り値:
アノテーションが付与されたメソッドのリスト

runsTopToBottom

protected boolean runsTopToBottom(java.lang.Class<? extends java.lang.annotation.Annotation> annotation)
クラスの階層構造の上位から実行するならばtrueを返します。

パラメータ:
annotation - アノテーション
戻り値:
クラスの階層構造の上位から実行するならばtrue

getEachBeforeMethod

public java.lang.reflect.Method getEachBeforeMethod(java.lang.Class<?> clazz,
                                                    java.lang.reflect.Method method)
インタフェース S2TestIntrospector の記述:
テストケース個別の初期化メソッドを返します。

定義:
インタフェース S2TestIntrospector 内の getEachBeforeMethod
パラメータ:
clazz - テストクラス
method - テストメソッド
戻り値:
初期化メソッド

getEachAfterMethod

public java.lang.reflect.Method getEachAfterMethod(java.lang.Class<?> clazz,
                                                   java.lang.reflect.Method method)
インタフェース S2TestIntrospector の記述:
テストケース個別の解放メソッドを返します。

定義:
インタフェース S2TestIntrospector 内の getEachAfterMethod
パラメータ:
clazz - テストクラス
method - テストメソッド
戻り値:
解放メソッド

getEachRecordMethod

public java.lang.reflect.Method getEachRecordMethod(java.lang.Class<?> clazz,
                                                    java.lang.reflect.Method method)
インタフェース S2TestIntrospector の記述:
テストケース個別の記録メソッドを返します。

記録メソッドはEasyMockを利用して作成されたモックの振る舞いを記録するメソッドです。

定義:
インタフェース S2TestIntrospector 内の getEachRecordMethod
パラメータ:
clazz - テストクラス
method - テストメソッド
戻り値:
記録メソッド

expectedException

public java.lang.Class<? extends java.lang.Throwable> expectedException(java.lang.reflect.Method method)
インタフェース S2TestIntrospector の記述:
メソッドがスローすると期待される例外もしくはエラーのクラスを返します。

定義:
インタフェース S2TestIntrospector 内の expectedException
パラメータ:
method - テストメソッド
戻り値:
期待される例外もしくはエラーがある場合はそのクラス、ない場合はnull

getTimeout

public long getTimeout(java.lang.reflect.Method method)
インタフェース S2TestIntrospector の記述:
メソッドの実行のタイムアウトを表すミリ秒を返します。

定義:
インタフェース S2TestIntrospector 内の getTimeout
パラメータ:
method - テストメソッド
戻り値:
タイムアウトを表すミリ秒

isIgnored

public boolean isIgnored(java.lang.reflect.Method method)
インタフェース S2TestIntrospector の記述:
メソッドが無視の対象の場合trueを返します。

定義:
インタフェース S2TestIntrospector 内の isIgnored
パラメータ:
method - テストメソッド
戻り値:
メソッドが無視の対象の場合true、そうでない場合false

isFulfilled

public boolean isFulfilled(java.lang.Class<?> clazz,
                           java.lang.reflect.Method method,
                           java.lang.Object test)
インタフェース S2TestIntrospector の記述:
テストケース実行の事前条件が満たされている場合trueを返します。

定義:
インタフェース S2TestIntrospector 内の isFulfilled
パラメータ:
clazz - テストクラス
method - テストメソッド
test - テストオブジェクト
戻り値:
事前条件が満たされている場合true、そうでない場合false

isFulfilled

protected boolean isFulfilled(Expression expression)
事前条件が満たされた場合trueを返します。

パラメータ:
expression - 事前条件を表す式
戻り値:
事前条件が満たされた場合true、満たされない場合false

needsTransaction

public boolean needsTransaction(java.lang.Class<?> clazz,
                                java.lang.reflect.Method method)
インタフェース S2TestIntrospector の記述:
トランザクションが必要とされる場合trueを返します。

定義:
インタフェース S2TestIntrospector 内の needsTransaction
パラメータ:
clazz - テストクラス
method - テストメソッド
戻り値:
トランザクションが必要とされる場合true、そうでない場合false

requiresTransactionCommitment

public boolean requiresTransactionCommitment(java.lang.Class<?> clazz,
                                             java.lang.reflect.Method method)
インタフェース S2TestIntrospector の記述:
トランザクションのコミットが必要とされる場合trueを返します。

定義:
インタフェース S2TestIntrospector 内の requiresTransactionCommitment
パラメータ:
clazz - テストクラス
method - テストメソッド
戻り値:
トランザクションのコミットが必要とされる場合true、そうでない場合false

getTxBehaviorType

protected TxBehaviorType getTxBehaviorType(java.lang.Class<?> clazz,
                                           java.lang.reflect.Method method)
トランザクションの振る舞いを返します。

パラメータ:
clazz - テストクラス
method - テストメソッド
戻り値:
トランザクションの振る舞い

needsWarmDeploy

public boolean needsWarmDeploy(java.lang.Class<?> clazz,
                               java.lang.reflect.Method method)
インタフェース S2TestIntrospector の記述:
WARM deployが必要とされる場合trueを返します。

定義:
インタフェース S2TestIntrospector 内の needsWarmDeploy
パラメータ:
clazz - テストクラス
method - テストメソッド
戻り値:
WARM deployが必要とされる場合true、そうでない場合false

isRegisterNamingConvention

public boolean isRegisterNamingConvention(java.lang.Class<?> clazz,
                                          java.lang.reflect.Method method)
インタフェース S2TestIntrospector の記述:
NamingConventionが登録される場合trueを返します。

定義:
インタフェース S2TestIntrospector 内の isRegisterNamingConvention
パラメータ:
clazz - テストクラス
method - テストメソッド
戻り値:
NamingConventionが登録される場合true、登録されない場合falseを返します。

createMock

public void createMock(java.lang.reflect.Method method,
                       java.lang.Object test,
                       InternalTestContext context)
インタフェース S2TestIntrospector の記述:
MockInterceptorを利用したモックを作成します。

定義:
インタフェース S2TestIntrospector 内の createMock
パラメータ:
method - テストメソッド
test - テストクラスのインスタンス
context - テストコンテキスト

createMock

protected void createMock(Mock mock,
                          java.lang.reflect.Method method,
                          java.lang.Object test,
                          InternalTestContext context)
mockからモックインターセプターを作成し、contextに登録します。

パラメータ:
mock - モックインターセプターの定義
method - テストメソッド
test - テストクラスのインスタンス
context - S2JUnit4の内部的なテストコンテキスト

createExpression

protected Expression createExpression(java.lang.String source,
                                      java.lang.reflect.Method method,
                                      java.lang.Object test)
式を作成します。

パラメータ:
source - 式の文字列表現
method - テストメソッド
test - テストクラスのインスタンス
戻り値:

getRootDicon

public java.lang.String getRootDicon(java.lang.Class<?> clazz,
                                     java.lang.reflect.Method method)
インタフェース S2TestIntrospector の記述:
ルートコンテナを表すdiconファイルのパスを返します。

定義:
インタフェース S2TestIntrospector 内の getRootDicon
パラメータ:
clazz - テストクラス
method - テストメソッド
戻り値:
ルートコンテナを表すdiconファイルのパス


Copyright © 2004-2014 The Seasar Foundation. All Rights Reserved.