public void checkExportParamTest03() throws Exception {
JobFlowParamLoader loader = new JobFlowParamLoader();
// 設定
Map<String, ExportTargetTableBean> targetTable = new LinkedHashMap<String, ExportTargetTableBean>();
ExportTargetTableBean table1 = new ExportTargetTableBean();
// 重複チェックを行うか否か
table1.setDuplicateCheck(true);
// Export対象テーブルに対応する異常データテーブル
table1.setErrorTableName("XXX_ERROR");
// Export中間TSVファイルに対応するカラム名
table1.setExportTsvColumns(null);
// Export対象テーブルのカラム名
table1.setExportTableColumns(Arrays.asList(new String[]{"TEXTDATA1", "INTDATA1"}));
// 異常データテーブルのカラム名
table1.setErrorTableColumns(Arrays.asList(new String[]{"INTDATA1"}));
// キー項目のカラム名
table1.setKeyColumns(Arrays.asList(new String[]{"TEXTDATA1"}));
// エラーコードを格納するカラム名
table1.setErrorCodeColumn("ERROR_CODE");
// 重複チェックエラーのエラーコードの値
table1.setErrorCode("ERR01");
// Export対象テーブルに対応するJavaBeanのクラス名
table1.setExportTargetType(this.getClass());
// Export対象テーブルのデータをHDFS上に書き出す際のファイルパス
List<String> list1 = new ArrayList<String>();
list1.add("hdfs://localhost/user/asakusa/import/11/XXX_1");
table1.setDfsFilePaths(list1);
targetTable.put("EXP_TARGET1", table1);
// テスト実行1
boolean result = loader.checkExportParam(targetTable, targetName, "1", "dummyFileName");
assertFalse(result);
// 設定変更
table1.setExportTsvColumns(Arrays.asList(new String[]{"TEXTDATA1", "INTDATA1", null}));
// テスト実行2
result = loader.checkExportParam(targetTable, "1", targetName, "dummyFileName");
assertFalse(result);
// 設定変更
table1.setExportTsvColumns(Arrays.asList(new String[]{"TEXTDATA1", "INTDATA1", ""}));
// テスト実行3
result = loader.checkExportParam(targetTable, "1", targetName, "dummyFileName");
assertFalse(result);
// 設定変更
table1.setExportTsvColumns(Arrays.asList(new String[]{}));
// テスト実行4
result = loader.checkExportParam(targetTable, "1", targetName, "dummyFileName");
assertFalse(result);
}