add a keystroke check for chat and make it so the chat listens on event 13 aswell as event 10

This commit is contained in:
John McLear 2012-10-28 17:38:56 +00:00
parent 7903eb93b6
commit b4680e42d7
2 changed files with 40 additions and 1 deletions

View File

@ -150,7 +150,7 @@ var chat = (function()
$("#chatinput").keypress(function(evt)
{
//if the user typed enter, fire the send
if(evt.which == 13)
if(evt.which == 13 || evt.which == 10)
{
evt.preventDefault();
self.send();

View File

@ -0,0 +1,39 @@
describe("send chat message", function(){
//create a new pad before each test run
beforeEach(function(cb){
helper.newPad(cb);
this.timeout(5000);
});
it("opens chat, sends a message and makes sure it exists on the page", function(done) {
var inner$ = helper.padInner$;
var chrome$ = helper.padChrome$;
var chatValue = "JohnMcLear";
//click on the chat button to make chat visible
var $chatButton = chrome$("#chaticon");
$chatButton.click();
var $chatInput = chrome$("#chatinput");
$chatInput.sendkeys('JohnMcLear'); // simulate a keypress of typing JohnMcLear
$chatInput.sendkeys('{enter}'); // simulate a keypress of enter actually does evt.which = 10 not 13
//check if chat shows up
helper.waitFor(function(){
return chrome$("#chattext").children("p").length !== 0; // wait until the chat message shows up
}).done(function(){
var $firstChatMessage = chrome$("#chattext").children("p");
var containsMessage = $firstChatMessage.text().indexOf("JohnMcLear") !== -1; // does the string contain JohnMcLear?
expect(containsMessage).to.be(true); // expect the first chat message to contain JohnMcLear
// do a slightly more thorough check
var username = $firstChatMessage.children("b");
var usernameValue = username.text();
var time = $firstChatMessage.children(".time");
var timeValue = time.text();
var expectedStringIncludingUserNameAndTime = usernameValue + timeValue + " " + "JohnMcLear";
expect(expectedStringIncludingUserNameAndTime).to.be($firstChatMessage.text());
done();
});
});
});