mirror of
https://github.com/moparisthebest/mail
synced 2024-11-26 19:02:20 -05:00
96 lines
3.0 KiB
JavaScript
96 lines
3.0 KiB
JavaScript
|
'use strict';
|
||
|
|
||
|
describe('Search Service unit test', function() {
|
||
|
var search;
|
||
|
|
||
|
beforeEach(function() {
|
||
|
angular.module('search-test', ['woEmail']);
|
||
|
angular.mock.module('search-test');
|
||
|
angular.mock.inject(function($injector) {
|
||
|
search = $injector.get('search');
|
||
|
});
|
||
|
});
|
||
|
|
||
|
afterEach(function() {});
|
||
|
|
||
|
describe('filter', function() {
|
||
|
var message1 = {
|
||
|
to: [{
|
||
|
name: 'name1',
|
||
|
address: 'address1'
|
||
|
}],
|
||
|
subject: 'subject1',
|
||
|
body: 'body1',
|
||
|
html: 'html1'
|
||
|
},
|
||
|
message2 = {
|
||
|
to: [{
|
||
|
name: 'name2',
|
||
|
address: 'address2'
|
||
|
}],
|
||
|
subject: 'subject2',
|
||
|
body: 'body2',
|
||
|
html: 'html2'
|
||
|
},
|
||
|
message3 = {
|
||
|
to: [{
|
||
|
name: 'name3',
|
||
|
address: 'address3'
|
||
|
}],
|
||
|
subject: 'subject3',
|
||
|
body: 'body1',
|
||
|
html: 'html1',
|
||
|
encrypted: true
|
||
|
},
|
||
|
message4 = {
|
||
|
to: [{
|
||
|
name: 'name4',
|
||
|
address: 'address4'
|
||
|
}],
|
||
|
subject: 'subject4',
|
||
|
body: 'body1',
|
||
|
html: 'html1',
|
||
|
encrypted: true,
|
||
|
decrypted: true
|
||
|
},
|
||
|
testMessages = [message1, message2, message3, message4];
|
||
|
|
||
|
it('return same messages array on empty query string', function() {
|
||
|
var result = search.filter(testMessages, '');
|
||
|
expect(result).to.equal(testMessages);
|
||
|
});
|
||
|
|
||
|
it('return message1 on matching subject', function() {
|
||
|
var result = search.filter(testMessages, 'subject1');
|
||
|
expect(result.length).to.equal(1);
|
||
|
expect(result[0]).to.equal(message1);
|
||
|
});
|
||
|
|
||
|
it('return message1 on matching name', function() {
|
||
|
var result = search.filter(testMessages, 'name1');
|
||
|
expect(result.length).to.equal(1);
|
||
|
expect(result[0]).to.equal(message1);
|
||
|
});
|
||
|
|
||
|
it('return message1 on matching address', function() {
|
||
|
var result = search.filter(testMessages, 'address1');
|
||
|
expect(result.length).to.equal(1);
|
||
|
expect(result[0]).to.equal(message1);
|
||
|
});
|
||
|
|
||
|
it('return plaintext and decrypted messages on matching body', function() {
|
||
|
var result = search.filter(testMessages, 'body1');
|
||
|
expect(result.length).to.equal(2);
|
||
|
expect(result[0]).to.equal(message1);
|
||
|
expect(result[1]).to.equal(message4);
|
||
|
});
|
||
|
|
||
|
it('return plaintext and decrypted messages on matching html', function() {
|
||
|
var result = search.filter(testMessages, 'html1');
|
||
|
expect(result.length).to.equal(2);
|
||
|
expect(result[0]).to.equal(message1);
|
||
|
expect(result[1]).to.equal(message4);
|
||
|
});
|
||
|
});
|
||
|
|
||
|
});
|