Skip to content

Commit 1195a23

Browse files
committed
adjust tests, add correct options
1 parent 1cdd687 commit 1195a23

2 files changed

Lines changed: 21 additions & 6 deletions

File tree

lib/api/filters.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ module.exports = (db, server, userHandler, settingsHandler) => {
172172
previousCursor: listingWrapper.previousCursor,
173173
nextCursor: listingWrapper.nextCursor,
174174
results: (listingWrapper.listing.results || []).map(filterData => {
175-
let descriptions = getFilterStrings(filterData, mailboxes);
175+
let descriptions = getFilterStrings(filterData, mailboxes, { preserveTargetUrls: true });
176176

177177
let values = {
178178
id: filterData._id.toString(),
@@ -380,7 +380,7 @@ module.exports = (db, server, userHandler, settingsHandler) => {
380380
},
381381

382382
results: filters.map(filterData => {
383-
let descriptions = getFilterStrings(filterData, mailboxes);
383+
let descriptions = getFilterStrings(filterData, mailboxes, { preserveTargetUrls: true });
384384

385385
const values = {
386386
id: filterData._id.toString(),

test/api/filters-test.js

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@ describe('API Filters', function () {
207207
expect(responseGet.body.action.mailbox).to.be.equal(inbox);
208208
});
209209

210-
it('should preserve full HTTP target URL when returning filter info', async () => {
210+
it('should preserve full HTTP target URL when returning filter listings', async () => {
211211
const targetUrl = 'https://example.com/inbound/email?token=abc123';
212212
const createResponse = await server
213213
.post(`/users/${user}/filters`)
@@ -225,9 +225,15 @@ describe('API Filters', function () {
225225

226226
const filter = createResponse.body.id;
227227

228-
const singleResponse = await server.get(`/users/${user}/filters/${filter}`).expect(200);
229-
expect(singleResponse.body.success).to.be.true;
230-
expect(singleResponse.body.action.targets).to.deep.equal([targetUrl]);
228+
const authResponse = await server
229+
.post('/authenticate')
230+
.send({
231+
username: 'filteruser',
232+
password: 'secretvalue',
233+
token: true
234+
})
235+
.expect(200);
236+
expect(authResponse.body.success).to.be.true;
231237

232238
const userListResponse = await server.get(`/users/${user}/filters`).expect(200);
233239
expect(userListResponse.body.success).to.be.true;
@@ -237,6 +243,15 @@ describe('API Filters', function () {
237243
expect(userListFilter.action).to.deep.equal([['forward to', targetUrl]]);
238244
expect(userListFilter.originalAction.targets).to.deep.equal([targetUrl]);
239245

246+
const ownFiltersResponse = await server.get(`/filters?accessToken=${authResponse.body.token}`).expect(200);
247+
expect(ownFiltersResponse.body.success).to.be.true;
248+
249+
const ownFiltersEntry = ownFiltersResponse.body.results.find(entry => entry.id === filter);
250+
expect(ownFiltersEntry).to.exist;
251+
expect(ownFiltersEntry.action).to.deep.equal([['forward to', targetUrl]]);
252+
expect(ownFiltersEntry.originalAction.targets).to.deep.equal([targetUrl]);
253+
expect(ownFiltersEntry.targets).to.deep.equal([targetUrl]);
254+
240255
const allFiltersResponse = await server.get(`/filters`).expect(200);
241256
expect(allFiltersResponse.body.success).to.be.true;
242257

0 commit comments

Comments
 (0)