在匿名异步函数中测试局部范围变量

时间:2016-07-29 09:36:24

标签: javascript angularjs unit-testing ionic-framework karma-jasmine

在网上搜索了关于使用jasmine进行测试的示例和教程以及文档但仍无法使其工作之后,我转向stackoverflow寻求帮助:

我的Angular JS控制器中有以下功能:

function setupMenuPopover() {
      $ionicPopover.fromTemplateUrl('views/menu-popover.html', {
          scope: $scope
        }).then(function (popover) {
          vm.menuPopover = popover;
        });
    }

如何测试menuPopover变量是否已定义? (我应该测试一下吗?)

目前我使用jasmine 2.4(& Karma)获得如下内容:

describe('testing the menuPopover', function () {
  var menuPop;
  beforeEach(function (done) {
    HomeController.menuPopover = HomeController.setupMenuPopover();
    setTimeout(function () {
      done();
    }, 3000);
  });

  it('this.menuPopover should be initialized and defined', function (done) {
    expect(HomeController.menuPopover).toBeDefined();
    done();
  });
});

但它仍未定义......

非常感谢任何帮助。 提前谢谢!

0 个答案:

没有答案