Con mis dos intentos de obtener un mensaje publicado en el JSpec Google Group habiendo aparentemente fallado, estoy publicando aquí en su lugar.JSpec - RangeError: el tamaño máximo de pila de llamadas superó
Estoy teniendo problemas con JSpec aparentemente entrando en un bucle recursivo infinito con cierto tipo de prueba (abajo). ¿Algunas ideas? ¿Hay algo mal con mi código o es JSpec? Estoy ejecutando JSpec 2.11.2 a través de Ruby Gem.
Los errores son 'RangeError: se ha excedido el tamaño máximo de pila de llamadas'. (Safari) y 'InternalError: demasiada recursividad' (FF/Mac). Puedo agregar un elemento a una habitación usando la consola Firebug, sin errores.
Para reproducir el problema, cree una plantilla de proyecto jspec usando 'jspec init test'. A continuación, edite los siguientes archivos de este modo:
yourlib.core.js
var Game = {};
Game.item = function() {
var result = {
name : 'Undefined',
room : null
}
return result;
};
Game.room = function() {
var result = {
items : [],
addItem : function (name) {
var item = Game.item();
item.name = name;
item.room = this;
this.items.push(item);
return item;
}
};
return result;
};
spec.core.js
describe 'Room'
before_each
room = Game.room()
end
describe 'addItem()'
before_each
potion = room.addItem('Potion')
key = room.addItem('Key')
end
//this is fine
it 'should return two different items'
key.should_not.be potion
end
//InternalError: too much recursion
it 'should not give recursion error'
key.should.be potion
end
end
end
nunca oído hablar de JSpec antes. lo siento :(. Casi todo su código parece lo suficientemente simple como para no hacer que nada enloquezca, excepto tal vez "item.room = this;" – Tei