2018-07-02 23:30:14 -04:00
|
|
|
const ClientSDK = require('../lib/ClientSDK');
|
2016-07-15 09:24:53 -04:00
|
|
|
|
2016-11-24 15:47:41 -05:00
|
|
|
describe('ClientSDK', () => {
|
|
|
|
|
it('should properly parse the SDK versions', () => {
|
2016-12-07 15:17:05 -08:00
|
|
|
const clientSDKFromVersion = ClientSDK.fromString;
|
2016-11-24 15:47:41 -05:00
|
|
|
expect(clientSDKFromVersion('i1.1.1')).toEqual({
|
|
|
|
|
sdk: 'i',
|
2018-09-01 13:58:06 -04:00
|
|
|
version: '1.1.1',
|
2016-11-24 15:47:41 -05:00
|
|
|
});
|
|
|
|
|
expect(clientSDKFromVersion('i1')).toEqual({
|
|
|
|
|
sdk: 'i',
|
2018-09-01 13:58:06 -04:00
|
|
|
version: '1',
|
2016-11-24 15:47:41 -05:00
|
|
|
});
|
|
|
|
|
expect(clientSDKFromVersion('apple-tv1.13.0')).toEqual({
|
|
|
|
|
sdk: 'apple-tv',
|
2018-09-01 13:58:06 -04:00
|
|
|
version: '1.13.0',
|
2016-11-24 15:47:41 -05:00
|
|
|
});
|
|
|
|
|
expect(clientSDKFromVersion('js1.9.0')).toEqual({
|
|
|
|
|
sdk: 'js',
|
2018-09-01 13:58:06 -04:00
|
|
|
version: '1.9.0',
|
2016-11-24 15:47:41 -05:00
|
|
|
});
|
2016-07-15 09:24:53 -04:00
|
|
|
});
|
2016-12-01 18:45:49 -08:00
|
|
|
|
2016-11-24 15:47:41 -05:00
|
|
|
it('should properly sastisfy', () => {
|
2018-09-01 13:58:06 -04:00
|
|
|
expect(
|
|
|
|
|
ClientSDK.compatible({
|
|
|
|
|
js: '>=1.9.0',
|
|
|
|
|
})('js1.9.0')
|
|
|
|
|
).toBe(true);
|
2016-12-01 18:45:49 -08:00
|
|
|
|
2018-09-01 13:58:06 -04:00
|
|
|
expect(
|
|
|
|
|
ClientSDK.compatible({
|
|
|
|
|
js: '>=1.9.0',
|
|
|
|
|
})('js2.0.0')
|
|
|
|
|
).toBe(true);
|
2016-07-15 09:24:53 -04:00
|
|
|
|
2018-09-01 13:58:06 -04:00
|
|
|
expect(
|
|
|
|
|
ClientSDK.compatible({
|
|
|
|
|
js: '>=1.9.0',
|
|
|
|
|
})('js1.8.0')
|
|
|
|
|
).toBe(false);
|
2016-07-15 09:24:53 -04:00
|
|
|
|
2018-09-01 13:58:06 -04:00
|
|
|
expect(
|
|
|
|
|
ClientSDK.compatible({
|
|
|
|
|
js: '>=1.9.0',
|
|
|
|
|
})(undefined)
|
|
|
|
|
).toBe(true);
|
|
|
|
|
});
|
|
|
|
|
});
|