#317 abortTest,
skipTestで引数を取るようにし、失敗扱いするかどうかと、アサーションのメッセージを指定できるようにしました。
#314 条件を満たしているかどうかを非同期でチェックできる共通関数をtestuitls.async.gateに作成しました。
testuitls.jsを作成し、各runnerでtestutils.jsを読み込むようにしました。
h5.uiのテストについて、gateを使うようにしました。
h5.uiのテストのリファクタを行いました。
#314 jqmのテストについて、条件を満たすまで待機している箇所についてgateを使うように修正。
不要な待機処理を行っているところについてリファクタ。
#320 コントローラのテストについて不要な待機時間を無くしました。
#321 pipeの実装を修正して、引数なし(引数が非関数)の場合にプロミスの連鎖が続くように修正しました。
テストケースを追加しました。
#322 thenとpipeのテストについてリファクタしました。
- then!==pipeのjQueryについてはそのthenの挙動をテスト
- プロミスチェーンを作るメソッドを、then===pipeならthen、そうでないならpipeメソッドを使うようにし、
  プルミスチェーンの動作を確認するテスト扱いとし、統一しました。
  (変数thenCompatMethodを作成し、then===pipeなら"then"、そうでないなら"pipe"として、thenCompatMethodでテストするよう統一)
- then,pipeを使っているテストはモジュールに切り分けました
  - ただしCFHのテストについてはCFHのモジュールのままで、then!==pipeの場合のthenのテストをやるケースについてはフィルタを掛けました
  - then!==pipeなthenのテストはフィルタを掛けた別のモジュールを作成しました

notify/progress, reject/fail のテストの整理を行いました
- それぞれモジュールに分けました
- 動作順、引数のチェック、thisのチェックを一つのケースでやっているものについて、別々のケースへと切り分けました。
- failフィルタのthisを確認するケースが無かったため追加しました
#322 テストの記述ミス及び、フィルタが間違えていたので修正。
#323 thenがpipeを呼ぶ関数にしていた実装を、then===pipeとする実装に変更
#324 ライフサイクルのイベント実行順を変更。テストケースを記述。
テストケースは、h5.core.controller_lifecycle.jsを作成して、既存のコントローラのテストのファイルと分けて記述しました。
(masterへマージする時に必要ならマージします。)
#324 コントローラのテストを整理(順序変更、モジュール切り分け)
h5.core.controller_lifecycleのテストをマージ
#324 ライフサイクルの実行順をチェックするテストについて、__postInit,postInitPromiseの実行順のチェックを追加
コントローラのバインド先をテスト内で作って消していたものについて、モジュールで作るように修正
ソースコード修正
　コントローラそれぞれでコールバックを実行する関数の動作がおかしかったので修正
　rejectしていくdfdの順序を制御
　リファクタ
#324 __metaのテストを追加。
不要なDOM生成及び、不要なDOM削除(QUnitによってテスト毎に削除されるもの)処理を削除。
popupWindow内のコントローラがgetAllControllers
で取得できることを確認するアサートを追加。
iframeを使用するテストで、iframe内のコントローラをdisposeできていなかったのでteardownに処理を追加。
#324 __metaチェックのタイミングを修正
__metaチェック(__metaの記述構成のチェック)は同期で行い、rootElementの判定については子の__initの前のタイミングで行っています。
#324 window.openを使用するテストで、window.close()する前にコントローラをdispose()するように変更
(リファクタで、順序が逆になっていたので、修正しました)
#326 jQueryのthenが新しいプロミスを返すかどうかの判定をFW読み込み時１度だけ行うように変更。
thenReturnsNewPromise→isThenReturnsNewPromise　に変数名変更
#324 以下、リファクタしました。

isLifecyclePropertyで$.isFunction()による判定を削除
(ここでチェックしていてもライフサイクルイベントに関数以外が指定された場合、not a function呼び出し時にはエラーになるため)

checkXXX -> validateXXX にリネーム

validate関数は一カ所にまとめました

controllerGroupEach, childControllerEachを使用できるところはそれらを使用するように修正

getAncestorControllerPromise,getDescendantControllerPromise,setExecuteListenersFlagで、走査するターゲットが重複することはないので重複チェック処理を削除

useHandlersを参照するのは、bindByBindMap時に参照するように変更。
bindDecendantHandlersはcontrollerGroupEachを使用するように変更

createCallbackForInitで作成するコールバックでvalidateエラーが起きた時にcontroller.dispose()していた箇所を、controller.rootController.dispose()に変更

bindAndTriggerReadyは、triggerReadyに変更し、bindAndTriggerReadyを呼んでいた箇所は、bindByBindMapをcontrollerGroupEachを使って呼ぶのと、triggerReadyを呼ぶように記述しました。
triggerReadyで、postInitPromiseを待つ必要はない(executeLifecycleEventChainで待っているため)ので、whenでの待機処理を削除しました。

initRootAndParentControllerを使っていないので削除
#327 __metaのチェックを行わないようにしました。
Merge branch 'controller-lifecycle'
#330 キャッシュを利用するようにしました。
h5.core.controllerCacheManager及びh5.core.logicCacheManagerの作成。
#330 以下リファクタを行いました。

controllerManager,controllerCacheManager,logicCahceManagerを先頭で宣言してキャッシュ化
controller/logicCacheManagerを一旦非公開にしました。
controllerPropertyMapは値にnullを持つマップにして、key inでチェックするようにしました。
(その方が早いため)
isChildLogic内の不要な変数宣言を削除
createBindObjは必ず配列を返すように修正し、createBindObjectsにリネームしました。
registerUnbindList->registerWithUnbindListにリネーム
getXXXBindObj → getXXXBindObjectsにして、配列を返すようにしました。
bindByBindObjectは第3引数にdocumentを受け取るようにして、毎回getDcoumentOfを行わないでいいようにしｍさいた。
bindByBindObject内の変数event→eventNameに変更
cacheManagerのregisterはDefObjを受け取って、作成、登録を行うようにしました。
cacheManager.createでのプロパティアクセスを減らしました。
コントローラのcacheはControllerCacheEntryクラスのインスタンスにしました
createAndBindController内でのプロパティアクセスを減らしました。