Backbone e Exigir como adicionar Qunit
Estou usando o Backbone e o Require.js. Tudo funciona muito bem, mas gostaria de adicionar alguns testes de unidade ao meu aplicativo. Eu decidi usar o Qunit.js.
No meumain.js arquivo eu crio novo objetoEventsView
:
require.config({
paths: {
jquery: 'libs/jquery',
underscore: 'libs/underscore',
backbone: 'libs/backbone',
qunit: 'test/libs/qunit-1.10.0
}
});
require(['view/eventsView',
'test/eventsView_test',
'test/eventView_test' ], function(EventsView){
var events = new EventsView; //here I create first object my View
});
EmeventsView.js initialize
Eu renderizo a visão principal
define(['jquery',
'backbone',
'underscore',
'collection/eventC',
'model/eventM',
'view/eventView'], function($, Backbone,_,EventC,EventM, EventView,){
var EventsView = Backbone.View.extend({
el: $(".contener"),
initialize: function(){
this.render();
},
....//other functions
});
return EventsView;
});
Então agora eu preciso chamar funções dessa visão em outro arquivoeventsView_test.js. Eu não posso fazer assim porque o View será renderizado novamente:
define(['jquery','qunit','view/eventsView'], function($,qunit,EventsView){
//var eventsView = new EventsView(); // I can't create object here
test( "first_test_func", function() {
var result = eventsView.first_test_func(2,2);
equal( result, 4, "2 square equals 4" );
});
O que devo fazer? Eu preciso de algum tipo de singleton ou algo mais?