单元测试以查看是否定义了 class 方法

Unit Test to see if class methods are defined

我只是想测试我的 class 方法是否已定义,例如:

export class GoalSettingsPage {

    public goal: Goal;

    constructor(
    ) {
        this.goal = this.navParams.get('goal');
    }

    saveForm(event) {
        this.viewCtrl.dismiss(this.goal);
    }

单元测试诸如:

xit('should have methods defined', () => {

    let g = new Goal()
    let np = new NavParams()
    let vc = new ViewController()
    let e = new Events()
    let fb = new FormBuilder()

    let settingModal = new GoalSettingsPage(np,vc,fb,e);

    expect (settingModal.saveForm(e).toBeDefined;
})

不工作。

要测试 class 实例中方法的存在,它应该是

expect(settingModal.saveForm).toBeDefined()

或者,更准确地说,

expect(settingModal.saveForm).toBe(jasmine.any(Function));