From b16bae353e40fa05b4993ef68232a9df83db370e Mon Sep 17 00:00:00 2001 From: kaeff Date: Mon, 17 Aug 2015 15:56:50 +0200 Subject: Read encoding from attachment info instead of headers Clean up by removing now unused headers from attachment info, and add a unit test for attachment rendering --- web-ui/test/spec/mail_view/ui/mail_view.spec.js | 10 +++++++++ web-ui/test/test_data.js | 29 ++++++++++++++++++++++++- 2 files changed, 38 insertions(+), 1 deletion(-) (limited to 'web-ui/test') diff --git a/web-ui/test/spec/mail_view/ui/mail_view.spec.js b/web-ui/test/spec/mail_view/ui/mail_view.spec.js index deb7fb88..fe763919 100644 --- a/web-ui/test/spec/mail_view/ui/mail_view.spec.js +++ b/web-ui/test/spec/mail_view/ui/mail_view.spec.js @@ -265,6 +265,16 @@ describeComponent('mail_view/ui/mail_view', function () { expect(openNoMessageSelectedEvent).toHaveBeenTriggeredOn(document); }); + it('shows a download link for attachments', function() { + var withAttachments = {mail: Pixelated.testData().parsedMail.withAttachments}; + + this.component.displayMail({}, withAttachments); + + var attachmentLink = $(this.component.$node.find('.attachmentsArea li').html()); + var expectedLink = '/attachment/912ec803b2ce49e4a541068d495ab570?encoding=base64&filename=filename.txt'; + expect(attachmentLink.attr('href')) .toBe(expectedLink); + }); + function creatingEvent(event, keyCode) { var e = $.Event(event); e.which = keyCode; diff --git a/web-ui/test/test_data.js b/web-ui/test/test_data.js index 446fd7c6..62492bbe 100644 --- a/web-ui/test/test_data.js +++ b/web-ui/test/test_data.js @@ -202,6 +202,32 @@ define(function() { getMailPartByContentType: function () { return; } }; + var withAttachments = { + header: { + to:'jed_waelchi@cummerata.info', + from:'laurel@hamill.info', + subject:'Velit aut tempora animi ut nulla esse.', + date:'2014-06-04T14:41:13-03:00' + }, + ident:1, + tags:['textplain'], + mailbox: ['inbox'], + status:[], + textPlainBody: 'Hello Everyone', + isSentMail: function() { return false; }, + isDraftMail: function() { return false; }, + replyToAddress: function() { return { to: ['laurel@hamill.info'], cc: [] }; }, + replyToAllAddress: function() { return { to: ['laurel@hamill.info'], cc: [] }; }, + isMailMultipartAlternative: function() { return false; }, + availableBodyPartsContentType: function() { return []; }, + getMailPartByContentType: function() { return; }, + attachments: [{ + ident: '912ec803b2ce49e4a541068d495ab570', + name: 'filename.txt', + encoding: 'base64' + }] + }; + var testData = { rawMail: { mail: rawMail, @@ -215,7 +241,8 @@ define(function() { parsedMail: { simpleTextPlain: simpleTextPlainMail, html: htmlNoEncodingMail, - draft: draftMail + draft: draftMail, + withAttachments: withAttachments } }; -- cgit v1.2.3