2016-03-07 5 views
0

В настоящее время я пытаюсь разработать свое первое приложение Магионной магии, я также использую Grunt Task бегун, а также Jasmine для тестирования.Магистраль, марионетка, грунт, жасмин-тестирование

Так что я создал свою собственную модель для входа в систему, и я хочу использовать его в моих тестах, но так или иначе я не могу заставить его работать, я получаю ошибку, что это не определено ...

Для простоты я вставил свой код на Pastebin: Вход Модель: http://pastebin.com/BGfpkNXC Состав: http://imgur.com/TRiOe5t

Grunt-жасмин

jasmine: { 
     all: { 
      src: 'app/js/modules/{,*/}*.js', 
      options: { 
       vendor: [ 
        'app/lib/jquery/dist/jquery.js', 
        'app/lib/underscore/underscore.js', 
        'app/lib/backbone/backbone.js', 
        'app/lib/marionette/lib/core/backbone.marionette.js', 
        'app/lib/backbone.babysitter/lib/backbone.babysitter.js', 
        'app/lib/backbone.wreqr/lib/backbone.wreqr.js', 
        'app/lib/bootstrap/dist/js/bootstrap.js', 
        'app/lib/leaflet/dist/leaflet.js' 
       ], 
       specs: 'app/js/test/**/*.js' 
      } 
     } 
    } 

Login.spec.js

describe('Login', function() { 
    it('Login - Create Auth', function() { 
     var App = new Backbone.Marionette.Application(); 
     var Auth = App.Auth; 

    expect(typeof Auth).toMatch('object'); 
    }); 
}); 

Надеюсь, я предоставил всю необходимую информацию.

Заранее спасибо. Feeloor

+0

Какая ошибка? Copypaste это на вопрос – kharandziuk

+0

Я продолжаю получать undefined вместо "object". Я написал это в вопросе. – feeloor

ответ

1

Я получил это работает, установив пакет хрюкать-шаблон-жасмин-requirejs, а также меняю хрюкать на:

jasmine: { 
     all: { 
      src: 'modules/**/*/*.js', 
      options: { 
       specs: 'app/js/test/**/*.js', 
       template: require('grunt-template-jasmine-requirejs'), 
       templateOptions: { 
        requireConfigFile: 'app/js/main.js', 
        requireConfig: { 
         baseUrl: "app/js/" 
        } 
       } 
      } 
     } 
    }, 

И затем на каждой спецификации:

define(['modules/login/models/auth'], function(Auth) { 

Надеюсь, это поможет кому-то.

Смежные вопросы