From 234411cb29a6a0a89eb1a04c0c225e4def1575c7 Mon Sep 17 00:00:00 2001 From: colefranz Date: Sat, 3 Feb 2018 18:11:49 -0700 Subject: [PATCH] issue-2023: introduce unit tests for inbox view There were no unit tests for the file at all so I added some simple ones mostly focused on my changes. --- test/index.html | 1 + test/views/inbox_view_test.js | 41 +++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 test/views/inbox_view_test.js diff --git a/test/index.html b/test/index.html index 76ad1ad62..5a8c945f4 100644 --- a/test/index.html +++ b/test/index.html @@ -624,6 +624,7 @@ + diff --git a/test/views/inbox_view_test.js b/test/views/inbox_view_test.js new file mode 100644 index 000000000..341e09a45 --- /dev/null +++ b/test/views/inbox_view_test.js @@ -0,0 +1,41 @@ +describe('InboxView', function() { + var inboxView = new Whisper.InboxView({ + model: {}, + window: window, + initialLoadComplete: function() {} + }).render(); + + var conversation = new Whisper.Conversation({ id: '1234', type: 'private'}); + + describe('the conversation stack', function() { + it('should be rendered', function() { + assert.ok(inboxView.$('.conversation-stack').length === 1); + }); + + describe('opening a conversation', function() { + var triggeredOpenedCount = 0; + + before(function() { + conversation.on('opened', function() { + triggeredOpenedCount++; + }); + + inboxView.conversation_stack.open(conversation); + }); + + it('should trigger an opened event', function() { + assert.ok(triggeredOpenedCount === 1); + }); + + describe('and then opening it again immediately', function() { + before(function() { + inboxView.conversation_stack.open(conversation); + }); + + it('should trigger the opened event again', function() { + assert.ok(triggeredOpenedCount === 2); + }); + }); + }); + }); +});