Angular2 Unit Test mit @Input ()

Ich habe eine Komponente, die das @ verwend@Input() Anmerkung zu einer Instanzvariablen und ich versuche, meinen Unit-Test für das @ zu schreibopenProductPage() Methode, aber ich bin ein wenig verloren, wie ich meinen Unit-Test einrichten. ICHkönnte mach diese Instanzvariable öffentlich, aber ich denke nicht, dass ich darauf zurückgreifen muss.

Wie richte ich meinen Jasmin-Test so ein, dass ein verspottetes Produkt injiziert wird (mitgeliefert?) Und ich kann denopenProductPage() Methode

Meine Komponente:

import {Component, Input} from "angular2/core";
import {Router} from "angular2/router";

import {Product} from "../models/Product";

@Component({
    selector: "product-thumbnail",
    templateUrl: "app/components/product-thumbnail/product-thumbnail.html"
})

export class ProductThumbnail {
    @Input() private product: Product;


    constructor(private router: Router) {
    }

    public openProductPage() {
        let id: string = this.product.id;
        this.router.navigate([“ProductPage”, {id: id}]);
    }
}

Antworten auf die Frage(8)

Ihre Antwort auf die Frage