mirror of
https://github.com/exane/not-gwent-online
synced 2025-08-06 20:53:36 +00:00
fix morale boost + improved events
This commit is contained in:
assets/data
client/js
server
test
@@ -1,96 +1,98 @@
|
||||
describe("pubsub", function() {
|
||||
var battle;
|
||||
var Battle = require("../../server/Battle");
|
||||
var Card = require("../../server/Card");
|
||||
var data = require("../../assets/data/abilities");
|
||||
|
||||
beforeEach(function() {
|
||||
battle = Battle();
|
||||
describe("pubsub", function(){
|
||||
var battle, card1, card2;
|
||||
|
||||
beforeEach(function(){
|
||||
battle = {};
|
||||
battle.runEvent = Battle.prototype.runEvent;
|
||||
battle.on = Battle.prototype.on;
|
||||
battle.off = Battle.prototype.off;
|
||||
battle.events = {};
|
||||
battle.update = function() {};
|
||||
|
||||
card1 = Card("kaedweni_siege_expert");
|
||||
card2 = Card("dun_banner_medic");
|
||||
});
|
||||
|
||||
it("on: has correct arguments", function() {
|
||||
it("on: has correct arguments", function(){
|
||||
//this.on("EachTurn", ability.onEachTurn, this, [card])
|
||||
var CARD = {
|
||||
_id: 1,
|
||||
_name: "cardy"
|
||||
}
|
||||
|
||||
battle.on("EachTurn", function(card) {
|
||||
expect(card).toEqual(CARD);
|
||||
}, this, [CARD]);
|
||||
battle.on("EachTurn", function(card){
|
||||
expect(card).toEqual(card1);
|
||||
}, this, [card1]);
|
||||
battle.runEvent("EachTurn");
|
||||
})
|
||||
it("runEvent: has correct arguments", function() {
|
||||
//this.on("EachTurn", ability.onEachTurn, this, [card])
|
||||
var CARD = {
|
||||
_id: 1,
|
||||
_name: "cardy"
|
||||
}
|
||||
|
||||
battle.on("EachTurn", function(card) {
|
||||
expect(card).toEqual(CARD);
|
||||
|
||||
})
|
||||
it("runEvent: has correct arguments", function(){
|
||||
//this.on("EachTurn", ability.onEachTurn, this, [card])
|
||||
battle.on("EachTurn", function(c){
|
||||
expect(c).toEqual(card1);
|
||||
});
|
||||
battle.runEvent("EachTurn", null, [CARD]);
|
||||
battle.runEvent("EachTurn", null, [card1]);
|
||||
})
|
||||
it("on + runEvent: has correct arguments", function() {
|
||||
it("on + runEvent: has correct arguments", function(){
|
||||
//this.on("EachTurn", ability.onEachTurn, this, [card])
|
||||
var CARD = {
|
||||
_id: 1,
|
||||
_name: "cardy"
|
||||
}
|
||||
var CARD2 = {
|
||||
_id: 2,
|
||||
_name: "cardooo"
|
||||
}
|
||||
|
||||
battle.on("EachTurn", function(card1, card2) {
|
||||
expect(card1).toEqual(CARD);
|
||||
expect(card2).toEqual(CARD2);
|
||||
}, null, [CARD]);
|
||||
battle.runEvent("EachTurn", null, [CARD2]);
|
||||
battle.on("EachTurn", function(c1, c2){
|
||||
expect(c1).toEqual(card1);
|
||||
expect(c2).toEqual(card2);
|
||||
}, null, [card1]);
|
||||
battle.runEvent("EachTurn", null, [card2]);
|
||||
})
|
||||
it("test context", function() {
|
||||
//this.on("EachTurn", ability.onEachTurn, this, [card])
|
||||
var Card = function(id, name){
|
||||
this.id = id;
|
||||
this.name = name;
|
||||
}
|
||||
var card1 = new Card(1, "cardy");
|
||||
var card2 = new Card(2, "cardoo");
|
||||
it("test context", function(){
|
||||
|
||||
battle.on("EachTurn", function(card) {
|
||||
battle.on("EachTurn", function(card){
|
||||
expect(card.id).toEqual(card1.id);
|
||||
expect(this.id).toEqual(card2.id);
|
||||
}, card2, [card1]);
|
||||
battle.runEvent("EachTurn");
|
||||
})
|
||||
it("test context", function() {
|
||||
//this.on("EachTurn", ability.onEachTurn, this, [card])
|
||||
var Card = function(id, name){
|
||||
this.id = id;
|
||||
this.name = name;
|
||||
}
|
||||
var card1 = new Card(1, "cardy");
|
||||
var card2 = new Card(2, "cardoo");
|
||||
it("test context", function(){
|
||||
|
||||
battle.on("EachTurn", function(card) {
|
||||
battle.on("EachTurn", function(card){
|
||||
expect(card.id).toEqual(card1.id);
|
||||
expect(this.id).toEqual(card2.id);
|
||||
}, null, [card1]);
|
||||
battle.runEvent("EachTurn", card2);
|
||||
})
|
||||
it("test context", function() {
|
||||
//this.on("EachTurn", ability.onEachTurn, this, [card])
|
||||
var Card = function(id, name){
|
||||
this.id = id;
|
||||
this.name = name;
|
||||
}
|
||||
var card1 = new Card(1, "cardy");
|
||||
var card2 = new Card(2, "cardoo");
|
||||
it("test context", function(){
|
||||
|
||||
battle.on("EachTurn", function(card) {
|
||||
battle.on("EachTurn", function(card){
|
||||
expect(card.id).toEqual(card1.id);
|
||||
expect(this.id).toEqual(card1.id);
|
||||
}, card1, [card1]);
|
||||
battle.runEvent("EachTurn", card2);
|
||||
})
|
||||
|
||||
it("should handle off correctly", function() {
|
||||
var cb1 = function(){}, cb2 = function() {};
|
||||
var obj = {
|
||||
cb1: cb1,
|
||||
cb2: cb2
|
||||
}
|
||||
|
||||
spyOn(obj, "cb1");
|
||||
spyOn(obj, "cb2");
|
||||
|
||||
|
||||
var uid1 = battle.on("EachCardPlace", obj.cb1, battle, [card1]);
|
||||
var uid2 = battle.on("EachCardPlace", obj.cb2, battle, [card2]);
|
||||
|
||||
|
||||
battle.off("EachCardPlace", uid2);
|
||||
battle.runEvent("EachCardPlace");
|
||||
|
||||
|
||||
expect(obj.cb1).toHaveBeenCalled();
|
||||
expect(obj.cb2).not.toHaveBeenCalled();
|
||||
|
||||
/*battle.off("EachCardPlace", uid1);
|
||||
|
||||
expect(battle.events).toEqual({});*/
|
||||
})
|
||||
|
||||
|
||||
});
|
||||
|
@@ -1,4 +1,5 @@
|
||||
require("./filterSpec");
|
||||
require("./PubSubSpec");
|
||||
|
||||
(function main(){
|
||||
|
||||
|
Reference in New Issue
Block a user