summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulie Lala <jules@okfoc.us>2014-07-25 02:02:58 -0400
committerJulie Lala <jules@okfoc.us>2014-07-25 02:08:24 -0400
commit6d56a504fc11bdb42dab960c08281059a4cc63d5 (patch)
tree7064784fd2c5001057734ad483a215bba272c24d
parentc11322210bc5ca2932f8e208d57b9ec3254b8b06 (diff)
corner tests passing
-rw-r--r--public/assets/javascripts/rectangles/engine/rooms/builder.js11
-rw-r--r--test/04-test-builder.js43
2 files changed, 38 insertions, 16 deletions
diff --git a/public/assets/javascripts/rectangles/engine/rooms/builder.js b/public/assets/javascripts/rectangles/engine/rooms/builder.js
index c1cba39..dfabc86 100644
--- a/public/assets/javascripts/rectangles/engine/rooms/builder.js
+++ b/public/assets/javascripts/rectangles/engine/rooms/builder.js
@@ -201,7 +201,7 @@
var depth = region.y.length()
var height = hi.height - lo.height
- if (! (region.half_sides & LEFT) && region.x.a != lo.rect.x.a && region.x.a == hi.rect.x.a) {
+ if (! (region.half_sides & LEFT) && region.x.a == hi.rect.x.a) {
el = this.make_wall('.left')
el.rotationY = HALF_PI
el.height = height
@@ -216,8 +216,7 @@
el.half_side = LEFT
}
- if (! (region.half_sides & RIGHT) && region.x.b != lo.rect.x.b && region.x.b == hi.rect.x.b) {
-console.log("right")
+ if (! (region.half_sides & RIGHT) && region.x.b == hi.rect.x.b) {
el = this.make_wall('.right')
el.rotationY = -HALF_PI
el.height = height
@@ -232,8 +231,7 @@ console.log("right")
el.half_side = RIGHT
}
- if (! (region.half_sides & FRONT) && region.y.a != lo.rect.y.a && region.y.a == hi.rect.y.a) {
-console.log("front")
+ if (! (region.half_sides & FRONT) && region.y.a == hi.rect.y.a) {
el = this.make_wall('.front')
el.width = width
el.height = height
@@ -248,8 +246,7 @@ console.log("front")
el.half_side = FRONT
}
- if (! (region.half_sides & BACK) && region.y.b != lo.rect.y.b && region.y.b == hi.rect.y.b) {
-console.log("back")
+ if (! (region.half_sides & BACK) && region.y.b == hi.rect.y.b) {
el = this.make_wall('.back')
el.width = width
el.height = height
diff --git a/test/04-test-builder.js b/test/04-test-builder.js
index 6863e5d..021ed8c 100644
--- a/test/04-test-builder.js
+++ b/test/04-test-builder.js
@@ -171,10 +171,10 @@ describe('builder', function(){
it("should have 3 back walls", function(){
assert.equal(3, wall_sides[BACK])
})
- it("should have 3 left wall", function(){
+ it("should have 3 left walls", function(){
assert.equal(3, wall_sides[LEFT])
})
- it("should have 3 right wall", function(){
+ it("should have 3 right walls", function(){
assert.equal(3, wall_sides[RIGHT])
})
})
@@ -187,13 +187,13 @@ describe('builder', function(){
var fg2_floors = fg2.filter(function(r){ return ! r.half_side })
var fg2_halves = fg2.filter(function(r){ return r.half_side })
- it("should make 4 floors", function(){
- assert.equal(1, fg_floors.length)
- assert.equal(3, fg2_floors.length)
+ it("should make 8 floors", function(){
+ assert.equal(2, fg_floors.length)
+ assert.equal(6, fg2_floors.length)
})
- it("should make 2 half-walls", function(){
+ it("should make 0 half-walls", function(){
assert.equal(0, fg_halves.length)
- assert.equal(2, fg2_halves.length)
+ assert.equal(0, fg2_halves.length)
})
})
@@ -216,9 +216,34 @@ describe('builder', function(){
assert.equal(2, fg_floors.length)
assert.equal(2, fg2_floors.length)
})
- it("should make 1 half-wall", function(){
+ it("should make 3 half-walls", function(){
assert.equal(0, fg_halves.length)
- assert.equal(1, fg2_halves.length)
+ assert.equal(3, fg2_halves.length)
+ })
+ })
+
+ // taller vs corner
+
+ reset()
+ Rooms.add( taller_room )
+ Rooms.add( corner_room )
+ var regions = rebuild()
+
+ describe('#build_floors(taller, corner)', function(){
+ var fg = Rooms.builder.build_floors(taller_room)
+ var fg2 = Rooms.builder.build_floors(corner_room)
+ var fg_floors = fg.filter(function(r){ return ! r.half_side })
+ var fg_halves = fg.filter(function(r){ return r.half_side })
+ var fg2_floors = fg2.filter(function(r){ return ! r.half_side })
+ var fg2_halves = fg2.filter(function(r){ return r.half_side })
+
+ it("should make 8 floors", function(){
+ assert.equal(2, fg_floors.length)
+ assert.equal(6, fg2_floors.length)
+ })
+ it("should make 2 half-walls", function(){
+ assert.equal(0, fg_halves.length)
+ assert.equal(2, fg2_halves.length)
})
})