测试ionic2组件:没有Form的提供者

时间:2016-02-17 22:48:51

标签: unit-testing angular ionic2

我有一个简单的Ionic2组件,使用以下指令:

@View({
  templateUrl: 'build/components/checkinDateInput/checkinDateInput.html',
  directives: [ FocusDirective, Item, Label, TextInput ],
})

在测试时,我收到了错误:No provider for Form! (Item -> Form)

我尝试将提供程序添加到我的规范中:

beforeEachProviders(() => [Form]);

但是,Form在Ionic中是私有的,因此我似乎无法导入它(ionic-framework/util/form.d.ts):

/**
 * @private
 */
export declare class Form {
    private _blur;
...

error TS2305: Module '".../node_modules/ionic-framework/ionic"' has no exported member 'Form'.

由于无法导入,我无法在beforeEachProviders中嘲笑它,因为Form未定义。

beforeEachProviders(() => [
    provide(Form, {useClass: MockForm})
]);

我是否可以导入Form或我是否以错误的方式进行此操作?

1 个答案:

答案 0 :(得分:3)