summaryrefslogtreecommitdiff
path: root/tests/frontend/specs/bold.js
diff options
context:
space:
mode:
authorMarcel Klehr <mklehr@gmx.net>2013-03-15 21:43:58 +0100
committerMarcel Klehr <mklehr@gmx.net>2013-03-15 21:43:58 +0100
commita31605216fe72b8ae213394385aecee0bfb24ff2 (patch)
tree9c7946c3ea5f8ec75cf7929f122dac6d74f5a28b /tests/frontend/specs/bold.js
parent844012864ff4a7ecb5b236983578d3e36b915304 (diff)
parent54433db47f5083faa921da6050b4e4e4b55dfb20 (diff)
downloadetherpad-lite-a31605216fe72b8ae213394385aecee0bfb24ff2.zip
Merge branch 'release/1.2.9'
Diffstat (limited to 'tests/frontend/specs/bold.js')
-rw-r--r--tests/frontend/specs/bold.js71
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();
+ });
+});