私のAngularアプリには、親と子のコンポーネントがあります。状態の子にタイトル値を供給する親constructor
。親コンポーネントのupdate
をテストしようとしています。constructor
しかし、テストコンポーネントから追加されていない値によって失敗しました。
親コンポーネント.ts:
export class ShellUserViewComponent implements OnInit {
@Output() OutwellcomeMsg: string | undefined;
@Output() newTitle: string;
@Output() users$: Observable<PropUser[]>;
title = "Welcome to user!!";
countString = "countLogic"; //static value
count: number;
constructor(private store: Store<AppState>) {
this.count = 0;
this.newTitle = this.countString; //updates the newTitle value
this.users$ = of([]);
}
}
親 component.spec.ts: (コンストラクタ値のテスト):
describe('UserViewComponent', () => {
beforeEach(async () => {
await render(ShellUserViewComponent, {
componentProperties: {
title: "Welcome to chennai",
countString: "I am new" //added new value as mock
},
declarations: [UserViewComponent],
imports: [RouterTestingModule],
providers: [provideMockStore({})]
});
})
it('should find the welcome as title', async () => {
expect(await screen.getByText(/Welcome to chennai/i)).toBeTruthy();
expect(await screen.getByText(/I am new/i)).toBeTruthy(); //expecting in screen, fails
screen.debug(); //no value finds. getting original value instead of mock value
});
});
更新されたものをテストする正しい方法は何countString
ですか?