import { nextTestSetup } from 'e2e-utils' describe('next-dynamic-css', () => { const { next, isNextDev } = nextTestSetup({ files: __dirname, }) it('should have correct order of styles between global and css modules', async () => { const browser = await next.browser('/page') expect(await browser.waitForElementByCss('#server').text()).toBe( 'Hello Server' ) expect( await browser.elementByCss('#server').getComputedCss('background-color') ).toBe('rgb(0, 128, 0)') expect(await browser.elementByCss('#server').getComputedCss('color')).toBe( 'rgb(0, 0, 0)' ) }) if (isNextDev) { // TODO Fix order of styling in development it.todo( 'should have correct order of styles on client component that is sharing styles with next/dynamic (TODO)' ) } else { it('should have correct order of styles on client component that is sharing styles with next/dynamic', async () => { const browser = await next.browser('/page') expect(await browser.waitForElementByCss('#inner2').text()).toBe( 'Hello Inner 2' ) expect( await browser.elementByCss('#inner2').getComputedCss('background-color') ).toBe('rgb(0, 128, 0)') expect( await browser.elementByCss('#inner2').getComputedCss('color') ).toBe('rgb(0, 0, 0)') }) } it('should have correct order of styles on next/dynamic loaded component', async () => { const browser = await next.browser('/page') expect(await browser.waitForElementByCss('#component').text()).toBe( 'Hello Component' ) expect( await browser .elementByCss('#component') .getComputedCss('background-color') ).toBe('rgb(0, 128, 0)') expect( await browser.elementByCss('#component').getComputedCss('color') ).toBe('rgb(0, 0, 0)') }) it('should have correct order of global styles between layout and pages', async () => { const browser = await next.browser('/page') expect(await browser.waitForElementByCss('#global').text()).toBe( 'Hello Global' ) expect( await browser.elementByCss('#global').getComputedCss('background-color') ).toBe('rgba(0, 0, 0, 0)') expect(await browser.elementByCss('#global').getComputedCss('color')).toBe( 'rgb(0, 0, 0)' ) expect( await browser.elementByCss('body').getComputedCss('background-color') ).toBe('rgb(255, 255, 255)') }) })