✨
This commit is contained in:
35
Assignment-3/node_modules/simple-update-notifier/src/getDistVersion.spec.ts
generated
vendored
Normal file
35
Assignment-3/node_modules/simple-update-notifier/src/getDistVersion.spec.ts
generated
vendored
Normal file
@ -0,0 +1,35 @@
|
||||
import Stream from 'stream';
|
||||
import https from 'https';
|
||||
import getDistVersion from './getDistVersion';
|
||||
|
||||
jest.mock('https', () => ({
|
||||
get: jest.fn(),
|
||||
}));
|
||||
|
||||
test('Valid response returns version', async () => {
|
||||
const st = new Stream();
|
||||
(https.get as jest.Mock).mockImplementation((url, cb) => {
|
||||
cb(st);
|
||||
|
||||
st.emit('data', '{"latest":"1.0.0"}');
|
||||
st.emit('end');
|
||||
});
|
||||
|
||||
const version = await getDistVersion('test', 'latest');
|
||||
|
||||
expect(version).toEqual('1.0.0');
|
||||
});
|
||||
|
||||
test('Invalid response throws error', async () => {
|
||||
const st = new Stream();
|
||||
(https.get as jest.Mock).mockImplementation((url, cb) => {
|
||||
cb(st);
|
||||
|
||||
st.emit('data', 'some invalid json');
|
||||
st.emit('end');
|
||||
});
|
||||
|
||||
expect(getDistVersion('test', 'latest')).rejects.toThrow(
|
||||
'Could not parse version response'
|
||||
);
|
||||
});
|
Reference in New Issue
Block a user