diff options
author | Marcel Klehr <mklehr@gmx.net> | 2013-03-15 21:43:58 +0100 |
---|---|---|
committer | Marcel Klehr <mklehr@gmx.net> | 2013-03-15 21:43:58 +0100 |
commit | a31605216fe72b8ae213394385aecee0bfb24ff2 (patch) | |
tree | 9c7946c3ea5f8ec75cf7929f122dac6d74f5a28b /tests/frontend/specs/bold.js | |
parent | 844012864ff4a7ecb5b236983578d3e36b915304 (diff) | |
parent | 54433db47f5083faa921da6050b4e4e4b55dfb20 (diff) | |
download | etherpad-lite-a31605216fe72b8ae213394385aecee0bfb24ff2.zip |
Merge branch 'release/1.2.9'
Diffstat (limited to 'tests/frontend/specs/bold.js')
-rw-r--r-- | tests/frontend/specs/bold.js | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/tests/frontend/specs/bold.js b/tests/frontend/specs/bold.js new file mode 100644 index 00000000..95da7331 --- /dev/null +++ b/tests/frontend/specs/bold.js @@ -0,0 +1,71 @@ +describe("bold button", function(){ + //create a new pad before each test run + beforeEach(function(cb){ + helper.newPad(cb); + this.timeout(60000); + }); + + it("makes text bold on click", function(done) { + var inner$ = helper.padInner$; + var chrome$ = helper.padChrome$; + + //get the first text element out of the inner iframe + var $firstTextElement = inner$("div").first(); + + //select this text element + $firstTextElement.sendkeys('{selectall}'); + + //get the bold button and click it + var $boldButton = chrome$(".buttonicon-bold"); + $boldButton.click(); + + //ace creates a new dom element when you press a button, so just get the first text element again + var $newFirstTextElement = inner$("div").first(); + + // is there a <b> element now? + var isBold = $newFirstTextElement.find("b").length === 1; + + //expect it to be bold + expect(isBold).to.be(true); + + //make sure the text hasn't changed + expect($newFirstTextElement.text()).to.eql($firstTextElement.text()); + + done(); + }); + + it("makes text bold on keypress", function(done) { + var inner$ = helper.padInner$; + var chrome$ = helper.padChrome$; + + //get the first text element out of the inner iframe + var $firstTextElement = inner$("div").first(); + + //select this text element + $firstTextElement.sendkeys('{selectall}'); + if(inner$.browser.mozilla){ // if it's a mozilla browser + var evtType = "keypress"; + }else{ + var evtType = "keydown"; + } + + var e = inner$.Event(evtType); + e.ctrlKey = true; // Control key + e.which = 66; // b + inner$("#innerdocbody").trigger(e); + + //ace creates a new dom element when you press a button, so just get the first text element again + var $newFirstTextElement = inner$("div").first(); + + // is there a <b> element now? + var isBold = $newFirstTextElement.find("b").length === 1; + + //expect it to be bold + expect(isBold).to.be(true); + + //make sure the text hasn't changed + expect($newFirstTextElement.text()).to.eql($firstTextElement.text()); + + done(); + }); +}); |