diff options
Diffstat (limited to 'web-ui/test/spec')
-rw-r--r-- | web-ui/test/spec/mail_view/ui/draft_button.spec.js | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/web-ui/test/spec/mail_view/ui/draft_button.spec.js b/web-ui/test/spec/mail_view/ui/draft_button.spec.js new file mode 100644 index 00000000..e1e968de --- /dev/null +++ b/web-ui/test/spec/mail_view/ui/draft_button.spec.js @@ -0,0 +1,40 @@ +/* global Pixelated */ + +describeComponent('mail_view/ui/draft_button', function(){ + 'use strict'; + + describe('draft save button', function(){ + beforeEach(function(){ + this.setupComponent('<button></button>'); + }); + + describe('after initialize', function(){ + it('should be enabled', function(){ + expect(this.$node).toBeDisabled(); + }); + }); + + describe('when enabled', function(){ + beforeEach(function(){ + this.$node.prop('disabled', false); + }); + + it('should be disabled when saving draft message', function(){ + $(document).trigger(Pixelated.events.mail.saveDraft, {}); + expect(this.$node).toBeDisabled(); + }); + }); + + describe('when disabled', function(){ + beforeEach(function(){ + this.$node.prop('disabled', true); + }); + + it('should be enabled when draft message has been saved', function(){ + $(document).trigger(Pixelated.events.mail.draftSaved, {}); + expect(this.$node).not.toBeDisabled(); + }); + }); + + }); +}); |