@Published public class HttpRequestTestSupport extends TestEventDispatcher
修飾子とタイプ | クラスと説明 |
---|---|
protected class |
HttpRequestTestSupport.HtmlResourceExtensionFilter
コピー対象となるHTMLリソースの拡張子。
|
修飾子とタイプ | フィールドと説明 |
---|---|
protected java.lang.Class<?> |
testClass
テストクラス
|
testName
修飾子 | コンストラクタと説明 |
---|---|
protected |
HttpRequestTestSupport()
コンストラクタ
本メソッドはサブクラスから使用されることを想定している。 |
|
HttpRequestTestSupport(java.lang.Class<?> testClass)
コンストラクタ。
|
修飾子とタイプ | メソッドと説明 |
---|---|
void |
assertApplicationMessageId(java.lang.String[] expected,
ExecutionContext actual)
メッセージIDのアサートを行う。
|
void |
assertApplicationMessageId(java.lang.String expectedCommaSeparated,
ExecutionContext actual)
メッセージIDのアサートを行う。
|
void |
assertApplicationMessageId(java.lang.String msg,
java.lang.String[] expected,
ExecutionContext actual)
メッセージIDのアサートを行う。
|
void |
assertApplicationMessageId(java.lang.String msg,
java.lang.String expectedCommaSeparated,
ExecutionContext actual)
メッセージIDのアサートを行う。
|
void |
assertEntity(java.lang.String sheetName,
java.lang.String id,
java.lang.Object actual)
|
void |
assertForward(java.lang.String msg,
java.lang.String expectedUri)
フォワード先URIが想定通りであることを表明する。
|
void |
assertObjectArrayPropertyEquals(java.lang.String message,
java.lang.String sheetName,
java.lang.String id,
java.lang.Object[] actual)
Object配列に設定されたプロパティをアサートする。
|
void |
assertObjectListPropertyEquals(java.lang.String message,
java.lang.String sheetName,
java.lang.String id,
java.util.List<?> actual)
Object に設定されたプロパティをアサートする。
|
void |
assertObjectPropertyEquals(java.lang.String message,
java.lang.String sheetName,
java.lang.String id,
java.lang.Object actual)
Object に設定されたプロパティをアサートする。
|
void |
assertSqlResultSetEquals(java.lang.String message,
java.lang.String sheetName,
java.lang.String id,
SqlResultSet actual)
|
void |
assertSqlRowEquals(java.lang.String message,
java.lang.String sheetName,
java.lang.String id,
SqlRow actual)
|
protected void |
assertStatusCode(java.lang.String message,
int expected,
HttpResponse response)
ステータスコードが想定通りであることを表明する。
|
void |
assertTableEquals(java.lang.String sheetName)
|
void |
assertTableEquals(java.lang.String sheetName,
java.lang.String groupId)
|
void |
assertTableEquals(java.lang.String message,
java.lang.String sheetName,
java.lang.String groupId)
|
protected void |
copyHtmlResourceToDumpDir(HttpTestConfiguration config,
java.io.File destDir,
ResourceLocator warBaseLocator)
HTMLリソースをダンプファイルの出力ディレクトリへコピーする。
|
ExecutionContext |
createExecutionContext(java.lang.String userId)
ExecutionContext を生成する。 |
HttpRequest |
createHttpRequest(java.lang.String requestUri,
java.util.Map<java.lang.String,java.lang.String[]> params)
リクエストパラメータを作成する。
|
HttpRequest |
createHttpRequestWithConversion(java.lang.String requestUri,
java.util.Map<java.lang.String,java.lang.String> commaSeparated,
java.util.Map<java.lang.String,java.lang.String> cookie)
リクエストパラメータを作成する。
|
protected HttpServer |
createHttpServer()
HttpServerのインスタンスを生成する。
|
protected HttpServer |
createHttpServer(HttpTestConfiguration config)
HttpServerを生成する。
|
protected void |
deleteHtmlResourceFile(java.io.File srcDir,
java.io.File destDir)
ダンプディレクトリのHTMLリソースファイルを削除する。
|
HttpResponse |
execute(java.lang.Class<?> testClass,
java.lang.String caseName,
HttpRequest req,
ExecutionContext ctx)
自動テスト用HTTPサーバを使用して、リクエスト単体テストを実現する。
|
protected HttpResponse |
execute(java.lang.String caseName,
HttpRequest req,
ExecutionContext ctx)
自動テスト用HTTPサーバを使用して、リクエスト単体テストを実現する。
|
protected java.lang.String |
getAbsoluteCssUriPrefix(java.lang.String uri,
java.lang.String replaceAbsolutePath)
URI型の絶対パス参照文字列から、URIのプレフィックスを取得する。
|
protected java.io.File |
getDumpFile(ExecutionContext ctx)
HTTPレスポンスボディが出力されたファイルを取得する。
|
protected java.io.FileFilter |
getFileFilter(HttpTestConfiguration config)
FileFilterを取得する。
|
java.util.List<java.util.Map<java.lang.String,java.lang.String>> |
getListMap(java.lang.String sheetName,
java.lang.String id)
|
java.util.List<java.util.Map<java.lang.String,java.lang.String[]>> |
getListParamMap(java.lang.String sheetName,
java.lang.String id)
|
java.util.Map<java.lang.String,java.lang.String[]> |
getParamMap(java.lang.String sheetName,
java.lang.String id)
|
static HttpRequestTestSupportHandler |
getTestSupportHandler()
サポートハンドラを取得する。
|
protected void |
initializeIfNotYet(HttpTestConfiguration config,
java.io.File dumpDir,
java.lang.String className)
初回時のみ初期化を実行する。
|
boolean |
is3XXStatusCode(int statusCode)
300系の HTTP ステータスコードかどうか判定する
|
protected void |
prepareHandlerQueue(java.util.List<Handler> handlerQueue)
ハンドラキューの準備を行う。
|
static void |
resetHttpServer()
キャッシュした HttpServer をリセットする。
|
protected java.lang.String |
rewritePath(java.lang.String text,
java.lang.String replaceAbsolutePath)
静的リソース内のパスを置き換える。
|
protected void |
rewriteResourceFile(HttpTestConfiguration config,
java.io.File dumpDir,
ResourceLocator warBaseLocator)
HTMLリソースディレクトリ内のCSSファイルを置換する。
|
protected void |
setDumpFile(ExecutionContext ctx,
java.io.File file)
HTTPレスポンスボディが出力されたファイルを設定する。
|
protected static void |
setHttpHeader(HttpRequest req,
HttpTestConfiguration config)
HTTPHeaderを設定する。
|
void |
setToken(HttpRequest request,
ExecutionContext context,
boolean valid)
トークンをリクエストパラメータとセッションスコープに設定する。
|
void |
setUpDb(java.lang.String sheetName)
DbAccessTestSupport.setUpDb(String) への委譲メソッド。 |
void |
setUpDb(java.lang.String sheetName,
java.lang.String groupId)
|
void |
setValidToken(HttpRequest request,
ExecutionContext context)
有効なトークンをリクエストパラメータとセッションスコープに設定する。
|
dispatchEventOfAfterTestClass, dispatchEventOfAfterTestMethod, dispatchEventOfBeforeTestClassAndBeforeSuit, dispatchEventOfBeforeTestMethod, getMethodName
public HttpRequestTestSupport(java.lang.Class<?> testClass)
testClass
- テストクラスprotected HttpRequestTestSupport()
protected HttpResponse execute(java.lang.String caseName, HttpRequest req, ExecutionContext ctx)
req
- テスト対象のアクションを呼び出すためのHttpRequestcaseName
- テストケース名ctx
- ExecutionContextprotected void initializeIfNotYet(HttpTestConfiguration config, java.io.File dumpDir, java.lang.String className)
config
- HttpTestConfigurationdumpDir
- HTMLダンプ先のディレクトリclassName
- テストクラスpublic HttpResponse execute(java.lang.Class<?> testClass, java.lang.String caseName, HttpRequest req, ExecutionContext ctx)
testClass
- テストクラスreq
- テスト対象のアクションを呼び出すためのHttpRequestcaseName
- テストケース名ctx
- ExecutionContextprotected HttpServer createHttpServer(HttpTestConfiguration config)
config
- HttpTestConfigurationpublic static HttpRequestTestSupportHandler getTestSupportHandler()
protected void prepareHandlerQueue(java.util.List<Handler> handlerQueue)
handlerQueue
- ハンドラキューprotected HttpServer createHttpServer()
protected void copyHtmlResourceToDumpDir(HttpTestConfiguration config, java.io.File destDir, ResourceLocator warBaseLocator)
config
- HttpTestConfigurationdestDir
- 出力ディレクトリwarBaseLocator
- warベースディレクトリのリソースロケータprotected void deleteHtmlResourceFile(java.io.File srcDir, java.io.File destDir)
srcDir
- HTMLリソースフォルダdestDir
- HTMLリソースのコピーフォルダprotected void rewriteResourceFile(HttpTestConfiguration config, java.io.File dumpDir, ResourceLocator warBaseLocator)
config
- HttpTestConfigurationdumpDir
- 出力先ディレクトリwarBaseLocator
- warベースのリソースロケータprotected java.lang.String rewritePath(java.lang.String text, java.lang.String replaceAbsolutePath)
text
- 文字列replaceAbsolutePath
- ファイルの絶対パスからwarのルートパスを取り除いたパス。protected java.lang.String getAbsoluteCssUriPrefix(java.lang.String uri, java.lang.String replaceAbsolutePath)
uri
- URI型の絶対パス参照文字列replaceAbsolutePath
- HTMLリソースの絶対パスからwarのルートパスを取り除いたパス。protected java.io.FileFilter getFileFilter(HttpTestConfiguration config)
config
- HttpTestConfigurationprotected static void setHttpHeader(HttpRequest req, HttpTestConfiguration config)
req
- HTTPHeaderを設定するHttpRequestconfig
- HttpTestConfigurationpublic void assertForward(java.lang.String msg, java.lang.String expectedUri)
msg
- アサート失敗時のメッセージexpectedUri
- 期待するフォワード先URIprotected void assertStatusCode(java.lang.String message, int expected, HttpResponse response)
HttpRequestTestSupportHandler.getStatusCode()
のステータスコードを比較対象とする。message
- アサート失敗時のメッセージexpected
- 期待するステータスコード値response
- HTTPレスポンスHttpRequestTestSupportHandler
public boolean is3XXStatusCode(int statusCode)
statusCode
- 判定対象のHTTPステータスコードpublic void assertApplicationMessageId(java.lang.String expectedCommaSeparated, ExecutionContext actual)
expectedCommaSeparated
- 期待するメッセージID(カンマ区切り)actual
- 実行結果(メッセージIDをリクエストスコープにもつExecutionContext)public void assertApplicationMessageId(java.lang.String msg, java.lang.String expectedCommaSeparated, ExecutionContext actual)
msg
- 任意のメッセージexpectedCommaSeparated
- 期待するメッセージID(カンマ区切り)actual
- 実行結果(メッセージIDをリクエストスコープにもつExecutionContext)public void assertApplicationMessageId(java.lang.String[] expected, ExecutionContext actual)
expected
- 期待するメッセージIDの配列actual
- 実行結果(メッセージIDをリクエストスコープにもつExecutionContext)public void assertApplicationMessageId(java.lang.String msg, java.lang.String[] expected, ExecutionContext actual)
msg
- 任意のメッセージexpected
- 期待するメッセージIDの配列actual
- 実行結果(メッセージIDをリクエストスコープにもつExecutionContext)public void setValidToken(HttpRequest request, ExecutionContext context)
request
- テスト対象のアクションを呼び出すためのHttpRequestcontext
- ExecutionContextpublic void setToken(HttpRequest request, ExecutionContext context, boolean valid)
request
- テスト対象のアクションを呼び出すためのHttpRequestcontext
- ExecutionContextvalid
- 有効なトークンを設定するかどうかpublic HttpRequest createHttpRequest(java.lang.String requestUri, java.util.Map<java.lang.String,java.lang.String[]> params)
requestUri
- リクエストURIparams
- パラメータが格納されたMappublic HttpRequest createHttpRequestWithConversion(java.lang.String requestUri, java.util.Map<java.lang.String,java.lang.String> commaSeparated, java.util.Map<java.lang.String,java.lang.String> cookie)
requestUri
- リクエストURIcommaSeparated
- パラメータが格納されたMapcookie
- Cookie情報が格納されたMappublic ExecutionContext createExecutionContext(java.lang.String userId)
ExecutionContext
を生成する。userId
- セッションスコープに格納するユーザIDprotected java.io.File getDumpFile(ExecutionContext ctx)
ctx
- ExecutionContextprotected void setDumpFile(ExecutionContext ctx, java.io.File file)
ctx
- ExecutionContextfile
- ファイルpublic void setUpDb(java.lang.String sheetName)
DbAccessTestSupport.setUpDb(String)
への委譲メソッド。sheetName
- シート名DbAccessTestSupport.setUpDb(String)
public void setUpDb(java.lang.String sheetName, java.lang.String groupId)
sheetName
- シート名groupId
- グループIDDbAccessTestSupport.setUpDb(String, String)
public void assertSqlResultSetEquals(java.lang.String message, java.lang.String sheetName, java.lang.String id, SqlResultSet actual)
message
- 比較失敗時のメッセージsheetName
- 期待値を格納したシート名id
- シート内のデータを特定するためのIDactual
- 実際の値DbAccessTestSupport.assertSqlResultSetEquals(String, String, String, nablarch.core.db.statement.SqlResultSet)
public void assertSqlRowEquals(java.lang.String message, java.lang.String sheetName, java.lang.String id, SqlRow actual)
DbAccessTestSupport.assertSqlRowEquals(String, String, String, nablarch.core.db.statement.SqlRow)
への委譲メソッド。message
- 比較失敗時のメッセージsheetName
- 期待値を格納したシート名id
- シート内のデータを特定するためのIDactual
- 実際の値public java.util.List<java.util.Map<java.lang.String,java.lang.String>> getListMap(java.lang.String sheetName, java.lang.String id)
sheetName
- シート名id
- IDDbAccessTestSupport.getListMap(String, String)
public java.util.List<java.util.Map<java.lang.String,java.lang.String[]>> getListParamMap(java.lang.String sheetName, java.lang.String id)
sheetName
- シート名id
- IDDbAccessTestSupport.getListParamMap(String, String)
public java.util.Map<java.lang.String,java.lang.String[]> getParamMap(java.lang.String sheetName, java.lang.String id)
sheetName
- シート名id
- IDDbAccessTestSupport.getParamMap(String, String)
public void assertTableEquals(java.lang.String sheetName)
sheetName
- 期待値を格納したシート名DbAccessTestSupport.assertTableEquals(String)
public void assertTableEquals(java.lang.String sheetName, java.lang.String groupId)
sheetName
- 期待値を格納したシート名groupId
- グループID(オプション)DbAccessTestSupport.assertTableEquals(String, String)
public void assertTableEquals(java.lang.String message, java.lang.String sheetName, java.lang.String groupId)
message
- 比較失敗時のメッセージgroupId
- グループID(オプション)sheetName
- 期待値を格納したシート名DbAccessTestSupport.assertTableEquals(String, String, String)
public void assertEntity(java.lang.String sheetName, java.lang.String id, java.lang.Object actual)
sheetName
- シート名id
- ケース表のID(LIST_MAP=testの場合は、testを指定する。)actual
- 実行結果のオブジェクト(Java Beansオブジェクト)public void assertObjectPropertyEquals(java.lang.String message, java.lang.String sheetName, java.lang.String id, java.lang.Object actual)
Assertion.assertProperties(java.util.Map, Object)
を参照。message
- メッセージsheetName
- シート名id
- ケース表のID(LIST_MAP=testの場合は、testを指定する。)actual
- 実際の値public void assertObjectArrayPropertyEquals(java.lang.String message, java.lang.String sheetName, java.lang.String id, java.lang.Object[] actual)
Assertion.assertProperties(java.util.Map, Object)
を参照。message
- メッセージsheetName
- シート名id
- ケース表のID(LIST_MAP=testの場合は、testを指定する。)actual
- 実際の値public void assertObjectListPropertyEquals(java.lang.String message, java.lang.String sheetName, java.lang.String id, java.util.List<?> actual)
Assertion.assertProperties(java.util.Map, Object)
を参照。message
- メッセージsheetName
- シート名id
- ケース表のID(LIST_MAP=testの場合は、testを指定する。)actual
- 実際の値public static void resetHttpServer()