如何在运行测试用例之前正确初始化/加载aurelia-dialog插件?

时间:2018-07-11 09:56:22

标签: javascript webpack jasmine aurelia aurelia-dialog

我有一个服务(无视图)依赖于DialogService中的aurelia-dialog,并使用它来打开对话框。我想测试我的服务。这样做时,我在dialogService.open(...)上遇到了以下错误。

  

错误:DialogRenderer必须实现getDialogContainer()。

     

在Renderer.getDialogContainer(webpack-internal:///./node_modules/aurelia-dialog/dist/native-modules/renderer.js:14:15)

     

在DialogService.open(webpack-internal:///../node_modules/aurelia-dialog/dist/native-modules/dialog-service.js:139:106)...

在运行任何测试用例之前,我都得到了idea that I need to load the plugin aurelia-dialog。为此,我尝试了以下方法。

import { bootstrap } from "aurelia-bootstrapper";
import { Aurelia, Container, PLATFORM } from "aurelia-framework";

describe("test specs", () => {
    let container: Container;

    beforeAll(async () => {

        await bootstrap(async (aurelia: Aurelia) => {
            aurelia.use
                .standardConfiguration()
                .developmentLogging()
                .plugin(PLATFORM.moduleName("aurelia-dialog"), (config) => {
                    config.useDefaults();
                    config.settings.lock = true;
                    config.settings.centerHorizontalOnly = false;
                    config.settings.startingZIndex = 5;
                    config.settings.keyboard = true;
                });

            Container.instance = container = new Container();
            aurelia.container = container;
            await aurelia.start();
        });
    });
});

但是,我在aurelia.start上遇到了以下错误。

  

错误:加载程序必须实现loadAllModules(ids)。

     

在Loader.loadAllModules(webpack-internal:///./node_modules/aurelia-loader/dist/native-modules/aurelia-loader.js:113:11)

     

在ViewEngine.importViewResources(webpack-internal:///./node_modules/aurelia-templating/dist/native-modules/aurelia-templating.js:3593:24)

     

在评估时(webpack-internal:/// aurelia-framework:646:23)

     

在<茉莉花>

     

在loadResources(webpack-internal:/// aurelia-framework:637:7)

     

评估时(webpack-internal:/// aurelia-framework:731:14)

     

接下来(webpack-internal:/// aurelia-framework:577:30)

     

在runTasks(webpack-internal:/// aurelia-framework:583:10)

     

评估时(webpack-internal:/// aurelia-framework:936:16)

     

在<茉莉花>

     

在评估时(webpack-internal:/// aurelia-framework:935:21)

     

在<茉莉花>

     

在FrameworkConfiguration.apply(webpack-internal:/// aurelia-framework:919:42)

     

在Aurelia.start(webpack-internal:/// aurelia-framework:463:37)...

因此,我的问题是在这种情况下如何正确加载aurelia-dialog插件?

0 个答案:

没有答案