From d2709105007b06a0f49cd20c7262d21013e422eb Mon Sep 17 00:00:00 2001 From: Maxwell Salzberg Date: Thu, 24 May 2012 11:06:50 -0700 Subject: [PATCH] set the submit button to be disabled on the framer, and write a test --- app/assets/javascripts/app/pages/framer.js | 2 +- .../stylesheets/new_styles/_composer.scss | 5 +++++ spec/javascripts/app/pages/framer_spec.js | 3 +-- .../app/views/framer_controls_view_spec.js | 18 ++++++++++++++++++ 4 files changed, 25 insertions(+), 3 deletions(-) create mode 100644 spec/javascripts/app/views/framer_controls_view_spec.js diff --git a/app/assets/javascripts/app/pages/framer.js b/app/assets/javascripts/app/pages/framer.js index 0a16049ec..bd3c44baf 100644 --- a/app/assets/javascripts/app/pages/framer.js +++ b/app/assets/javascripts/app/pages/framer.js @@ -123,7 +123,7 @@ app.views.framerControls = app.views.Base.extend({ }, saveFrame : function(){ - this.$('button').prop('disabled', 'disabled').addClass('disabled') + this.$('input').prop('disabled', 'disabled') this.setFormAttrs() this.model.save() }, diff --git a/app/assets/stylesheets/new_styles/_composer.scss b/app/assets/stylesheets/new_styles/_composer.scss index a866f140f..c6d13e3d6 100644 --- a/app/assets/stylesheets/new_styles/_composer.scss +++ b/app/assets/stylesheets/new_styles/_composer.scss @@ -41,6 +41,10 @@ margin-top: 5px; } + input[disabled] { + background: inherit; + } + textarea#post_text{ height: 100px; padding : 10px; @@ -55,6 +59,7 @@ display : none; } + label { @include transition(background-color); @include border-radius(); diff --git a/spec/javascripts/app/pages/framer_spec.js b/spec/javascripts/app/pages/framer_spec.js index 6479d730d..f615c9290 100644 --- a/spec/javascripts/app/pages/framer_spec.js +++ b/spec/javascripts/app/pages/framer_spec.js @@ -14,7 +14,6 @@ describe("app.pages.Framer", function(){ this.page.model.trigger("sync") expect(app.router.navigate).toHaveBeenCalled() }) - // want a spec here for the bookmarklet case }) @@ -36,7 +35,7 @@ describe("app.pages.Framer", function(){ this.page.render(); }); - it("saves the model when you click done",function(){ + it("saves the model when you click done", function(){ spyOn(app.frame, "save"); this.page.$("input.done").click(); expect(app.frame.save).toHaveBeenCalled(); diff --git a/spec/javascripts/app/views/framer_controls_view_spec.js b/spec/javascripts/app/views/framer_controls_view_spec.js new file mode 100644 index 000000000..2b288b381 --- /dev/null +++ b/spec/javascripts/app/views/framer_controls_view_spec.js @@ -0,0 +1,18 @@ +describe("app.views.framerControls", function(){ + beforeEach(function(){ + loginAs(factory.user()) + this.post = new factory.statusMessage({frame_name: undefined}); + this.view = new app.views.framerControls({model : this.post}) + }) + +describe("rendering", function(){ + beforeEach(function(){ + this.view.render(); + }); + + it("disables the buttons when you click the X", function(){ + this.view.$("input.done").click(); + expect(this.view.$('input').prop('disabled')).toBeTruthy(); + }); + }) +});