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を返す。