UNPKG

@c15t/react

Version:

Developer-first CMP for React: cookie banner, consent manager, preferences centre. GDPR ready with minimal setup and rich customization

1 lines 932 B
import*as e from"react/jsx-runtime";import*as t from"vitest";import*as o from"vitest-browser-react";import*as s from"../providers/consent-manager-provider.js";async function a({component:a,testCases:r,noStyle:n=!1}){let{container:c}=(0,o.render)((0,e.jsx)(s.ConsentManagerProvider,{options:{mode:"offline",react:{noStyle:n}},children:a}));for(let{testId:e,styles:o}of(await new Promise(e=>setTimeout(e,50)),r)){let s=c.querySelector(`[data-testid="${e}"]`),a=document.body.querySelector(`[data-testid="${e}"]`),r=s||a;if(!r){console.warn(`Element with testId "${e}" not found in DOM`),(0,t.expect)(!0).toBe(!0);continue}(0,t.expect)(r).toBeTruthy(),"string"==typeof o&&o?n?(0,t.expect)(r.className).toBe(o):(0,t.expect)(r.className).toContain(o):"object"==typeof o&&o?.className&&(n?(0,t.expect)(r.className).toBe(o.className):(0,t.expect)(r.className).toContain(o.className))}}let r=a;export{r as default,a as testComponentStyles};