m.deps
この関数を使うと、Mithril内部で使われるwindowオブジェクトを置き換えます。このカンスを使うと、モックのwindowの依存性を注入できます。非ブラウザ環境でテストしたり、Mithrilを実行することができます。Mithril自身がテストで使っているモックは開発リポジトリの中にあります。
デフォルトではMithrilは依存先としてwindow自身を使います。MithrilはDOM APIやrequestAnimationFrameなどのブラウザAPIのためにのみモックオブジェクトを使いますが、Object.keysなどのECMAScript環境にも依存しています。
使用方法
テストファイルの最初でこの関数を呼んで、モックのwindowを設定します:
function testMithril(mockWindow) {
window = m.deps(mockWindow);
//テストはこちら
}
シグニチャ
Window m.deps(Object window)
where:
Window :: Object<any>
Object Window
この引数は
windowもしくはモックwindowオブジェクト。Mithrilは完全なテストのカバレッジを得たり、アプリケーションの機能の実現のために、特定の
windowのメソッドを呼んでいます:window.document- DOMノードオブジェクトの特定のメソッド
window.requestAnimationFrame/window.cancelAnimationFrame- 利用できないときは代わりに
window.setTimeout/window.clearTimeout window.locationwindow.historywindow.scrollTowindow.XMLHttpRequest
returns Window
引数に渡されたのと同じwindowを返す。