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.location
window.history
window.scrollTo
window.XMLHttpRequest
returns Window
引数に渡されたのと同じwindowを返す。