問題タブ [angular-unit-test]

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.

0 投票する
0 に答える
1883 参照

angular - Angular単体テスト:コンポーネントのすべてのパラメータを解決できません

わかりましたので、しばらくの間これを理解しようとしてきました.オンラインで見つけることができるのは(タイトルのエラーメッセージに関して)、DI中の循環依存関係に言及しています-しかし、それは私の問題ではないことは99%確信しています.

テストを実行すると、次のエラーが表示されます。

コンポーネント CTOR:

テストコード:

テストモジュールのセットアップを取り除き、テストランナーが要求するように何かを追加しようとしましたがAssetGalleryService、最後のビットとしてモックを追加したときにのみ、エラーがスローされ始めます。

ご覧のとおり、テストの現在の状態ではサービスから何も必要としないため、すべての依存関係をモックしました。

バレルの輸入はありません(この問題にもつながる可能性があると読みました)

「2回」AssetGalleryServiceインポートされるのは、テストファイルとコンポーネントファイルの両方にインポートされるものだけです。テスト ファイルでインポートの順序を切り替えると、次のエラーが発生します。

ハイブリッド アプリを実行しているという事実におそらく関連しているのはどれですか? コンポーネントのサービスのうち 2 つが AngularJS サービスです。

編集: コンポーネント CTOR に追加forwardRef(() => ... )すると、@Inject(AssetGalleryService)...テストの実行時に上記と同じエラーが発生します。

どんなヒントでも大歓迎です!