1
0
mirror of https://github.com/moparisthebest/mail synced 2024-11-22 08:52:15 -05:00

Merge pull request #3 from whiteout-io/dev/imap-redesign

dev/imap-redesign
This commit is contained in:
Tankred Hase 2014-01-15 05:23:41 -08:00
commit 97accd0221
2 changed files with 10 additions and 71 deletions

View File

@ -1077,36 +1077,16 @@ define(function(require) {
return;
}
self._imapClient.listMessagesByUid({
self._imapClient.getMessage({
path: options.folder,
firstUid: options.uid,
lastUid: options.uid
}, function(err, imapHeaders) {
uid: options.uid
}, function(err, message) {
if (err) {
callback(err);
return;
}
var imapHeader = imapHeaders[0];
self._imapClient.getMessagePreview({
path: options.folder,
uid: options.uid
}, function(err, message) {
if (err) {
callback(err);
return;
}
// create a bastard child of smtp and imap. before thinking this is stupid, talk to the guys who wrote this.
// p.s. it's a parsing issue.
imapHeader.id = message.id;
imapHeader.body = message.body;
imapHeader.html = message.html;
imapHeader.attachments = message.attachments;
callback(null, imapHeader);
});
callback(null, message);
});
};

View File

@ -725,24 +725,10 @@ define(function(require) {
var path = 'FOLDAAAA',
uid = 1337;
imapClientStub.listMessagesByUid.withArgs({
path: path,
firstUid: uid,
lastUid: uid
}).yields(null, [{
uid: uid,
subject: 'asdasd',
unread: true,
answered: false
}]);
imapClientStub.getMessagePreview.withArgs({
imapClientStub.getMessage.withArgs({
path: path,
uid: uid
}).yields(null, {
id: 'idididididid',
body: 'yes.'
});
}).yields(null, {});
dao._imapGetMessage({
folder: path,
@ -751,17 +737,16 @@ define(function(require) {
expect(err).to.not.exist;
expect(msg).to.exist;
expect(imapClientStub.listMessagesByUid.calledOnce).to.be.true;
expect(imapClientStub.getMessagePreview.calledOnce).to.be.true;
expect(imapClientStub.getMessage.calledOnce).to.be.true;
done();
});
});
it('should not work when listMessages fails', function(done) {
it('should not work when getMessage fails', function(done) {
var path = 'FOLDAAAA',
uid = 1337;
imapClientStub.listMessagesByUid.yields({});
imapClientStub.getMessage.yields({});
dao._imapGetMessage({
folder: path,
@ -770,33 +755,7 @@ define(function(require) {
expect(err).to.exist;
expect(msg).to.not.exist;
expect(imapClientStub.listMessagesByUid.calledOnce).to.be.true;
expect(imapClientStub.getMessagePreview.called).to.be.false;
done();
});
});
it('should not work when getMessagePreview fails', function(done) {
var path = 'FOLDAAAA',
uid = 1337;
imapClientStub.listMessagesByUid.yields(null, [{
uid: uid,
subject: 'asdasd',
unread: true,
answered: false
}]);
imapClientStub.getMessagePreview.yields({});
dao._imapGetMessage({
folder: path,
uid: uid
}, function(err, msg) {
expect(err).to.exist;
expect(msg).to.not.exist;
expect(imapClientStub.listMessagesByUid.calledOnce).to.be.true;
expect(imapClientStub.getMessagePreview.calledOnce).to.be.true;
expect(imapClientStub.getMessage.calledOnce).to.be.true;
done();
});