我有一个@Input()在实例变量上使用注解的组件,我正在尝试为该openProductPage()方法编写单元测试,但是我对设置单元测试的方式有些迷惑。我可以将该实例变量设置为公共变量,但是我认为我不必诉诸于此。
如何设置茉莉花测试,以便注射(提供?)模拟产品,然后可以测试该openProductPage()方法?
我的组件:
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}]);
    }
}