// @flow import React from 'react' import { shallow } from 'enzyme' import { resetStyled, expectCSSMatches } from './utils' import styleSheet from '../models/StyleSheet' let styled describe('warn too many classes', () => { const nativeWarn = console.warn let warnCallCount /** * Make sure the setup is the same for every test */ beforeEach(() => { (console: any).warn = () => warnCallCount++ warnCallCount = 0 styled = resetStyled() }) afterEach(() => { (console: any).warn = nativeWarn }) it('should warn once', () => { const Comp = styled.div` width: ${props => props.size}; ` for (let i = 0; i < 300; i++) { shallow() } expect(warnCallCount).toEqual(1) }) it('should warn if number of classes is 200', () => { const Comp = styled.div` width: ${props => props.size}; ` for (let i = 0; i < 200; i++) { shallow() } expect(warnCallCount).toEqual(1) }) it('should not warn if number of classes is below 200', () => { const Comp = styled.div` width: ${props => props.size}; ` for (let i = 0; i < 199; i++) { shallow() } expect(warnCallCount).toEqual(0) }) })