Angulaire de 5 essais de: comment faire pour obtenir une référence vers le composant enfant

Je suis en train de tester l'interaction entre un composant hôte et un composant enfant dans Angulaire de l'application. Je ne sais pas comment faire pour obtenir une référence à l'enfant composant créé lorsque le parent est créé. Voici la configuration:

enfant.composante.spec.ts

@Component({template: `<child [data]="model"></child>`})
class HostComponent {
  public model:any;
}

describe('ChildComponent', () => {
  let hostFixture: ComponentFixture<HostComponent>;
  let childFixture: ComponentFixture<ChildComponent>;

  beforeEach(async(() => {
    TestBed.configureTestingModule({
      declarations: [ChildComponent, HostComponent]
    });
  }));

  beforeEach(() => {
    //this creates the child component as well, but how to get to it?
    hostFixture = TestBed.createComponent(HostComponent);

    //this creates a NEW instance of child component, not the one from the Host template
    //so it's not the instance I actually want to test
    childFixture = TestBed.createComponent(ChildComponent);
  });
});

La modification de la model valeur dans hostFixture.componentInstance ne change en fait la data valeur d'entrée de childFixture.componentInstance; c'est pourquoi j'ai réalisé qu'il y a deux instances de composant enfant.

Ma question est simple, comment puis-je obtenir childFixture pour désigner le composant luminaire trouvé dans les HostComponent modèle, au lieu d'une instance à l'autre que j'ai actuellement?

Les docs n'ai pas été utile.

  • Généralement, vous pouvez accéder à l'enfant de l'afficher à l'aide du composant parent luminaire.Pourquoi la nécessité, pour Enfant composant de luminaire?
  • Parce que je suis intéressé à tester les propriétés du composant et les méthodes en réaction à des changements dans les valeurs d'entrée de jeu dans le modèle hôte. Un exemple serait de tester les deux sens de la liaison de données entre l'hôte et l'enfant.
  • Comment se fait que les documents n'étaient pas utiles? C'est exactement le scénario qui y est décrite.
InformationsquelleAutor BeetleJuice | 2017-12-13