UNPKG

@toptal/davinci-qa

Version:
82 lines (65 loc) 2.19 kB
/* eslint jest/expect-expect: ["error", { "assertFunctionNames": ["expect", "errorTest", "successTest"] }] */ import styledComponentsVersionCheck from './styled-components-version-check.js' const successTest = (styledComponentsVersion, dependenciesKeys) => { const packageJson = {} dependenciesKeys.forEach(dependenciesKey => { packageJson[dependenciesKey] = { 'styled-components': styledComponentsVersion, } }) let error = null try { styledComponentsVersionCheck(packageJson) } catch (e) { error = e } expect(error).toBeNull() } const errorTest = (styledComponentsVersion, dependenciesKeys) => { const packageJson = {} dependenciesKeys.forEach(dependenciesKey => { packageJson[dependenciesKey] = { 'styled-components': styledComponentsVersion, } }) let error = null try { styledComponentsVersionCheck(packageJson) } catch (e) { error = e } expect(error).not.toBeNull() expect(error.message).toContain(styledComponentsVersion) } describe('styled-components version check', () => { describe('has wrong (^4.4.1) SC version in dependencies', () => { it('should throw an error', () => { errorTest('^4.4.1', ['dependencies']) }) }) describe('has correct (^5.0.1) SC version in dependencies', () => { it('should NOT throw an error', () => { successTest('^5.0.1', ['dependencies']) }) }) describe('has wrong (^4.4.1) SC version in devDependencies and peerDependencies', () => { it('should throw an error', () => { errorTest('^4.4.1', ['devDependencies', 'peerDependencies']) }) }) describe('has correct (^5.0.1) SC version in devDependencies and peerDependencies', () => { it('should NOT throw an error', () => { successTest('^5.0.1', ['devDependencies', 'peerDependencies']) }) }) describe('has wrong (^4.4.1) SC version in devDependencies', () => { it('should throw an error', () => { errorTest('^4.4.1', ['devDependencies']) }) }) describe('has correct (^5.0.1) SC version in devDependencies', () => { it('should NOT throw an error', () => { successTest('^5.0.1', ['devDependencies']) }) }) })