問題タブ [squirejs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - Jasmine単体テストでグローバル変数が割り当てられていない
Jasmine 単体テストでグローバル変数が未定義として表示されるという問題が発生しています。Squire を使用して、RequireJS を介して注入された依存関係を持ついくつかのクラスをモックしています。これは、私の単体テストの縮小された例です。
私の「サービス」クラス (service.js)
「キャッシュ」依存関係をモックするための私のフィクスチャ。
そして私の仕様:
私の「存在すべき」テストでは、dataserviceModule は定義されていません。ただし、フィクスチャ (上記のコンテナー) がそれを取り込むときはそうなると思います。ここで、define() の仕様の上部にある「サービス」を取り込み、そこに dataserviceModule を設定すると、テストはそれを定義済みと見なします。 .
私の container.require が変数を 1 つ上のスコープに設定していないか、それとテストの実行の間で失われているのはなぜですか? 巻き上げに関するこの質問を読みましたが、container.require 内で同じ変数名を再宣言していません。