HTML Выберите значение элемента в угловых тестовых бросках с индексом

#javascript #angular #jasmine #karma-jasmine

Вопрос:

Я пытаюсь написать модульный тест для динамического элемента выбора в angular, как показано ниже. Но каким-то образом я получаю значение из select с индексом, а не только из текста.

Мой КОД:

   type= "x";
  temp: any;
  ngOnInit() {
    this.temp =
      this.type === 'x' ? ['one', 'two'] : ['three', 'two'];
  } 
 <select id="type" 
  (change)="change($event)">
  <option *ngFor="let lt of temp" [value]="lt">
    {{ lt }}
  </option>
</select> 

Мой тест.ts

  describe("test", () => {
    it("type", () => {
      fixture.detectChanges();
      const select: HTMLSelectElement = fixture.debugElement.query(By.css("select#type")).nativeElement;
      expect(select.options[0].value).toEqual("one");
    });
  }); 

Когда я запускаю тест в angular, он выдает мне следующую ошибку:
Error: Expected '0: one' to equal 'one'.

Есть идеи, почему это происходит? Я знаю, что могу исправить это, изменив его на «0: один». Но, хочу знать, что я делаю не так.