/
OfflinePack.test.js
44 lines (38 loc) · 1.35 KB
/
OfflinePack.test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import {NativeModules} from 'react-native';
import OfflinePack from '../../../javascript/modules/offline/OfflinePack';
describe('OfflinePack', () => {
const fakeNativePack = {
bounds: [[0, 1], [2, 3]],
metadata: '{"name":"test"}',
};
it('should contain a valid pack', () => {
const offlinePack = new OfflinePack(fakeNativePack);
expect(offlinePack.bounds).toEqual(fakeNativePack.bounds);
expect(offlinePack.name).toEqual('test');
expect(offlinePack.metadata).toEqual(JSON.parse(fakeNativePack.metadata));
});
it('should resume pack download', () => {
const spy = jest.spyOn(
NativeModules.MGLOfflineModule,
'resumePackDownload',
);
const offlinePack = new OfflinePack(fakeNativePack);
offlinePack.resume();
expect(spy).toHaveBeenCalled();
spy.mockRestore();
});
it('should pause pack download', () => {
const spy = jest.spyOn(NativeModules.MGLOfflineModule, 'pausePackDownload');
const offlinePack = new OfflinePack(fakeNativePack);
offlinePack.pause();
expect(spy).toHaveBeenCalled();
spy.mockRestore();
});
it('should get pack status', () => {
const spy = jest.spyOn(NativeModules.MGLOfflineModule, 'getPackStatus');
const offlinePack = new OfflinePack(fakeNativePack);
offlinePack.status();
expect(spy).toHaveBeenCalled();
spy.mockRestore();
});
});