私はAngular 2プロジェクトを持っています。そのプロジェクトでは、Angulartics npmパッケージをインポートし、それを私のコンポーネントの1つに注入しました。 私のコンポーネントでは、私は既存の単体テストを模擬する必要がある単一の呼び出しを行っています。AngularticsのネストしたオブジェクトのJasmine Mock
は
beforeEach
でこれを追加しました::mockAngulartics2 = jasmine.createSpyObj<Angulartics2>('angulartics2', ['eventTrack']);
プロバイダにこれを追加しました:
{ provide: Angulartics2, useValue: mockAngulartics2 },
this.angulartics2.eventTrack.next({ action: 'Track my event'});
テストを実行すると、次のエラーが返されます。 angulartics2.eventTrack.next
オブジェクトを模擬する正しい方法は何ですか?
TypeError: undefined is not a constructor (evaluating 'this.angulartics2.eventTrack.next({ action: 'Track my event' })') in config/spec-bundle.js (line 145931)