Comment changer la valeur d'une boîte de sélection dans un test d'unité angulaire2?

J'ai un Angular2 composant qui contient une boîte de sélection qui ressemble

<select [(ngModel)]="envFilter" class="form-control" name="envSelector" (ngModelChange)="onChangeFilter($event)">
    <option *ngFor="let env of envs" [ngValue]="env">{{env}}</option>
</select>

Je suis en train d'écrire un test unitaire pour le ngModelChange événement. Ceci est mon dernier échec de la tentative

it("should filter and show correct items", async(() => {
    fixture.detectChanges();
    fixture.whenStable().then(() => {
        el = fixture.debugElement.query(By.name("envSelector"));
        fixture.detectChanges();
        makeResponse([hist2, longhist]);
        comp.envFilter = 'env3';
        el.triggerEventHandler('change', {});
        fixture.whenStable().then(() => {
            fixture.detectChanges();
            expect(comp.displayedHistory).toEqual(longhist);
        });
    });

La partie que je vais avoir des ennuis avec, est que la modification de la valeur du sous-jacent modèle comp.envFilter = 'env3'; ne pas déclencher le changement de méthode. J'ai ajouté el.triggerEventHandler('change', {}); mais ce lève Failed: Uncaught (in promise): ReferenceError: By is not defined. Je ne trouve aucune indication dans la documentation... des idées?

source d'informationauteur Paul Becotte