0
親コンポーネント:親コンポーネントのプロパティをチェックするテストケースを書くには?
export class PlayerListComponent {
flag = false;
}
子コンポーネント:
export class PlayerAddComponent {
@Output() notifyParent: EventEmitter<any> = new EventEmitter();
clkCancle() {
this.notifyParent.emit(false);
// this will set parent component property 'flag' to false.
}
}
今、私はジャスミンのspecファイルでテストケースを書くことができますか?二つの成分を一緒にテストするには
it('cancel button click should set flag to false', function() {
// Act
component.clkCancle();
// Assert
// Since component do not have flag property. It will be set in parent while by Emitter.
expect(???).toBe(false);
});
* "これは、親コンポーネントのプロパティ 'flag'をfalseに設定します* *いいえ、それは*子の*仕事ではありません。子供はちょうど発射します、あなたは子供のユニットテストでテストすることができます。必要に応じて対応するのは*親*の責任です。 2つのコンポーネントを一緒にテストしたい場合は、 'TestBed'で*両方を宣言し、親をインスタンス化します。 – jonrsharpe
テストで、 ' 'のようなテンプレートを持つコンポーネントを作成し、キャンセルボタンをクリックするとコンポーネントのフラグが確かにテストされますfalseに設定します。また、親とその子の統合をテストする場合は、テストで実際の親コンポーネントを使用します。 –
私は、子コンポーネント用のスペックファイルを作成し、それをバインドするために親コンポーネントにhtml以下で使用しました。 app-addplayer> –