|
1 | 1 | const request = require('request-promise') |
2 | 2 | const { listen, mockDb } = require('./utils') |
3 | 3 |
|
4 | | -jest.mock('../src/db', () => mockDb) |
| 4 | +jest.mock('flat-file-db', () => mockDb) |
5 | 5 | const service = require('../src') |
6 | 6 | let url |
7 | 7 |
|
@@ -91,12 +91,26 @@ describe('all', () => { |
91 | 91 | expect(body.data['/rover2'].views.length).toBe(1) |
92 | 92 | }) |
93 | 93 |
|
94 | | - it('should not filter if filter is set to false', async () => { |
95 | | - await request(`${url}/rover`) |
96 | | - await request(`${url}/rover2`) |
97 | | - await request(`${url}/route`) |
98 | | - const body = JSON.parse(await request(`${url}/rover?all=true&filter=false`)) |
99 | | - expect(Object.keys(body.data).length).toBe(3) |
| 94 | + it('should filter based on before after', async () => { |
| 95 | + const after = new Date('2017-01-01T09:11:00.000Z').getTime() |
| 96 | + const before = new Date('2017-01-01T09:41:00.000Z').getTime() |
| 97 | + |
| 98 | + mockDb._put('/rover', { views: [ |
| 99 | + { time: new Date('2017-01-01T09:00:00.000Z').getTime() }, |
| 100 | + { time: new Date('2017-01-01T09:10:00.000Z').getTime() }, |
| 101 | + { time: new Date('2017-01-01T09:20:00.000Z').getTime() }, |
| 102 | + { time: new Date('2017-01-01T09:30:00.000Z').getTime() }, |
| 103 | + { time: new Date('2017-01-01T09:40:00.000Z').getTime() }, |
| 104 | + { time: new Date('2017-01-01T09:50:00.000Z').getTime() }, |
| 105 | + ]}) |
| 106 | + |
| 107 | + const mapToIsoString = view => new Date(view.time).toISOString() |
| 108 | + const body = JSON.parse(await request(`${url}/rover?all=true&before=${before}&after=${after}`)) |
| 109 | + expect(body.data['/rover'].views.map(mapToIsoString)).toEqual([ |
| 110 | + '2017-01-01T09:20:00.000Z', |
| 111 | + '2017-01-01T09:30:00.000Z', |
| 112 | + '2017-01-01T09:40:00.000Z' |
| 113 | + ]) |
100 | 114 | }) |
101 | 115 | }) |
102 | 116 | }) |
0 commit comments