私の状況は、いくつかの背景として:テストを簡単にする目的だけでコードを追加してもよろしいですか?
window.requestAnimationFrame
を使用してアニメーションループを実行する小さなjavascriptライブラリを作成しています。この関数はブラウザ間で標準化されていないため、ライブラリの内部ではクロージャ内にポリフィル・アイ関数を作成します。
var requestAnim = window.requestAnimationFrame
|| window.webkitRequestAnimationFrame
|| ...
|| function() { ... };
ここでの問題は、このコードを今すぐテストすることが非常に難しいことです。以前は、setTimeout
を使用していたときに、テストでそのグローバル関数をオーバーライドして、同期して渡すフレームの数をシミュレートしました。
とにかく、質問のポイントに:私のオプションは、テストされていない私のコードの一部を残して、またはの唯一の目的でライブラリに余分な機能を追加するためのどちらかであるように
今、それはそうですテストが容易になります。これらの選択肢のどちらも、私にとって素晴らしいことではありません。
一般にという特定のケースについて心配することなく、この状況で何をすべきですか?
私が持っていた問題は、私のライブラリがユーザーに提示したインターフェイスをmuddyingすることでした。 – nickf
あなたは特定のケースについて心配することなく質問しました;)リリースバージョンに含まれていないテストラッパーライブラリを書くことができますか? – Connell