在Jasmine中测试木偶路由器

时间:2014-01-06 15:52:27

标签: jasmine marionette

我想测试我的应用程序路由在连接的控制器中有意义。 Testing Marionette Modules in isolation with Jasmine看起来它可能对我有用,但事实并非如此。 (没有调用间谍,而是调用控制器函数本身) 这是我到目前为止所得到的 测试:

it('navigates to showItem', function (){
  var instance = new PmsRouter();
  spyOn(instance.controller, "showItem");
  Backbone.history.start();
  instance.navigate("system/pms/1", {trigger:true});
  expect(instance.controller.showItem).toHaveBeenCalledWith("1");
  window.location.hash = ""
});

模块:

'use strict';


define([
  'underscore',
  'modules/admin/system/pms/PmsController',
  'marionette'

], function(_ ,PmsController) {

  var PmsRouter = Marionette.AppRouter.extend({
    controller: new PmsController(),
    appRoutes: {
      'system/pms/:pms_id': 'showItem'
    }
  });

  return PmsRouter;
});

感谢任何帮助!

0 个答案:

没有答案