From 067af274774c8266d14070a1480a5e4beb859182 Mon Sep 17 00:00:00 2001 From: Niels van Hoorn Date: Sun, 31 Jul 2016 16:51:22 +0200 Subject: [PATCH 1/5] Add test to show non resetting of defaults --- test/tests/LayerTest.coffee | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/test/tests/LayerTest.coffee b/test/tests/LayerTest.coffee index b61ba9aed..d24ef682f 100644 --- a/test/tests/LayerTest.coffee +++ b/test/tests/LayerTest.coffee @@ -11,7 +11,10 @@ describe "Layer", -> describe "Defaults", -> - it "should set defaults", -> + it "should reset nested defaults defaults", -> + Framer.Defaults.DeviceComponent.animationOptions.curve = "spring" + Framer.resetDefaults() + Framer.Defaults.DeviceComponent.animationOptions.curve.should.equal "ease-in-out" Framer.Defaults = Layer: From fb8719dd784e7839497668caa91b89909a098f73 Mon Sep 17 00:00:00 2001 From: Niels van Hoorn Date: Sun, 31 Jul 2016 16:51:39 +0200 Subject: [PATCH 2/5] Cloning deep to make test pass --- framer/Defaults.coffee | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/framer/Defaults.coffee b/framer/Defaults.coffee index e714c8c25..1ac65ae6f 100644 --- a/framer/Defaults.coffee +++ b/framer/Defaults.coffee @@ -87,8 +87,7 @@ exports.Defaults = options = _.clone options # Always start with the originals - defaults = _.clone Originals[className] - + defaults = _.cloneDeep Originals[className] # Copy over the user defined options for k, v of Framer.Defaults[className] defaults[k] = if _.isFunction(v) then v() else v @@ -114,4 +113,4 @@ exports.Defaults = exports.Defaults.reset() reset: -> - window.Framer.Defaults = _.clone Originals + window.Framer.Defaults = _.cloneDeep Originals From 4f6dc9490ac429d2ae87dece64b5f0367863f95a Mon Sep 17 00:00:00 2001 From: Niels van Hoorn Date: Sun, 31 Jul 2016 16:52:16 +0200 Subject: [PATCH 3/5] Improve set defaults test --- test/tests/LayerTest.coffee | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/test/tests/LayerTest.coffee b/test/tests/LayerTest.coffee index d24ef682f..cd9152373 100644 --- a/test/tests/LayerTest.coffee +++ b/test/tests/LayerTest.coffee @@ -16,22 +16,25 @@ describe "Layer", -> Framer.resetDefaults() Framer.Defaults.DeviceComponent.animationOptions.curve.should.equal "ease-in-out" + it "should set defaults", -> + width = Utils.randomNumber(0,400) + height = Utils.randomNumber(0,400) Framer.Defaults = Layer: - width: 200 - height: 200 + width: width + height: height + layer = new Layer() - layer.width.should.equal 200 - layer.height.should.equal 200 + layer.width.should.equal width + layer.height.should.equal height Framer.resetDefaults() layer = new Layer() - - layer.width.should.equal 100 - layer.height.should.equal 100 + layer.width.should.equal 200 + layer.height.should.equal 200 it "should set default background color", -> From 20c007d1d90902bad45c42ac9a58bd9ce19b88e3 Mon Sep 17 00:00:00 2001 From: Niels van Hoorn Date: Sun, 31 Jul 2016 17:10:21 +0200 Subject: [PATCH 4/5] Remove duplicate word --- test/tests/LayerTest.coffee | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/tests/LayerTest.coffee b/test/tests/LayerTest.coffee index cd9152373..74faade79 100644 --- a/test/tests/LayerTest.coffee +++ b/test/tests/LayerTest.coffee @@ -11,7 +11,7 @@ describe "Layer", -> describe "Defaults", -> - it "should reset nested defaults defaults", -> + it "should reset nested defaults", -> Framer.Defaults.DeviceComponent.animationOptions.curve = "spring" Framer.resetDefaults() Framer.Defaults.DeviceComponent.animationOptions.curve.should.equal "ease-in-out" From 7a8790a053e2dbe5de35cab5d24c9219c921ebc0 Mon Sep 17 00:00:00 2001 From: Niels van Hoorn Date: Sun, 31 Jul 2016 17:10:44 +0200 Subject: [PATCH 5/5] Fix resetDefaults for width and height --- test/tests.coffee | 12 +++++++++--- test/tests/LayerTest.coffee | 14 +++++++++++--- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/test/tests.coffee b/test/tests.coffee index 2b0f64b1d..3b529599b 100644 --- a/test/tests.coffee +++ b/test/tests.coffee @@ -1,8 +1,14 @@ window.chai = require("chai") -# We don't want to update all the tests if we change these -Framer.Defaults.Layer.width = 100 -Framer.Defaults.Layer.height = 100 + +previousReset = Framer.resetDefaults + +Framer.resetDefaults = -> + previousReset() + # We don't want to update all the tests if we change these + Framer.Defaults.Layer.width = 100 + Framer.Defaults.Layer.height = 100 +Framer.resetDefaults() window.console.debug = (v) -> window.console.warn = (v) -> diff --git a/test/tests/LayerTest.coffee b/test/tests/LayerTest.coffee index 74faade79..bd025529d 100644 --- a/test/tests/LayerTest.coffee +++ b/test/tests/LayerTest.coffee @@ -16,6 +16,15 @@ describe "Layer", -> Framer.resetDefaults() Framer.Defaults.DeviceComponent.animationOptions.curve.should.equal "ease-in-out" + it "should reset width and height to their previous values", -> + previousWidth = Framer.Defaults.Layer.width + previousHeight = Framer.Defaults.Layer.height + Framer.Defaults.Layer.width = 123 + Framer.Defaults.Layer.height = 123 + Framer.resetDefaults() + Framer.Defaults.Layer.width.should.equal previousWidth + Framer.Defaults.Layer.height.should.equal previousHeight + it "should set defaults", -> width = Utils.randomNumber(0,400) height = Utils.randomNumber(0,400) @@ -24,7 +33,6 @@ describe "Layer", -> width: width height: height - layer = new Layer() layer.width.should.equal width @@ -33,8 +41,8 @@ describe "Layer", -> Framer.resetDefaults() layer = new Layer() - layer.width.should.equal 200 - layer.height.should.equal 200 + layer.width.should.equal 100 + layer.height.should.equal 100 it "should set default background color", ->