From ef4fd3d244939bce65f411730c9080b49b1dea30 Mon Sep 17 00:00:00 2001 From: Shai Reznik Date: Wed, 17 Apr 2024 21:55:20 +0300 Subject: [PATCH 1/7] added docker files --- .dockerignore | 22 ++++++++++++++++++++++ Dockerfile | 16 ++++++++++++++++ docker-compose.yml | 12 ++++++++++++ packages/kit-headless/playwright.config.ts | 3 +++ 4 files changed, 53 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile create mode 100644 docker-compose.yml diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 000000000..9ca634cb4 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,22 @@ +# Ignore files and directories generated by the build process +node_modules/ +dist/ +build/ + +# Ignore development and debugging files +*.log +*.tmp +*.bak +.vscode/ + +# Ignore specific files +.DS_Store +.env +.env.local +.env.*.local +.env.test +.env.production + +# Ignore version control files +.git/ +.gitignore \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 000000000..4203b474f --- /dev/null +++ b/Dockerfile @@ -0,0 +1,16 @@ +FROM mcr.microsoft.com/playwright:v1.43.0-jammy + +WORKDIR /dev + +COPY package.json ./ +COPY pnpm-lock.yaml ./ + +RUN pnpm install --frozen-lockfile + +RUN pnpm playwright install --with-deps + +COPY packages/kit-headless ./packages/kit-headless +COPY packages/kit-styled ./packages/kit-styled +COPY apps/component-tests ./packages/component-tests + +CMD ["pnpm", "test.pw.visual-headless"] \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 000000000..b9a662f4a --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,12 @@ +version: '3' +services: + playwright: + build: + context: . + dockerfile: Dockerfile + image: playwright-tests + volumes: + - ./packages:/dev/packages + ports: + - '5713:5713' + working_dir: /dev diff --git a/packages/kit-headless/playwright.config.ts b/packages/kit-headless/playwright.config.ts index 6cbe04b3f..4232025df 100644 --- a/packages/kit-headless/playwright.config.ts +++ b/packages/kit-headless/playwright.config.ts @@ -45,6 +45,9 @@ export default defineConfig({ name: 'visual', use: { ...devices['Desktop Chrome'] }, grep: /@Visual.*/, + expect: { + toHaveScreenshot: {}, + }, }, // { From 0091a24e3ccbad96dac85c634cd38682d744e6ad Mon Sep 17 00:00:00 2001 From: Shai Reznik Date: Wed, 17 Apr 2024 21:58:56 +0300 Subject: [PATCH 2/7] added pnpm --- Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Dockerfile b/Dockerfile index 4203b474f..b307cc5bf 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,6 +5,7 @@ WORKDIR /dev COPY package.json ./ COPY pnpm-lock.yaml ./ +RUN npm i -g pnpm RUN pnpm install --frozen-lockfile RUN pnpm playwright install --with-deps From 0b7a09d040449339cd5fec4cc46d0a5ed97aa5ad Mon Sep 17 00:00:00 2001 From: Shai Reznik Date: Thu, 18 Apr 2024 11:38:18 +0300 Subject: [PATCH 3/7] trying pnpm --- Dockerfile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index b307cc5bf..f5dda5d6e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,11 +1,15 @@ FROM mcr.microsoft.com/playwright:v1.43.0-jammy +ENV PNPM_HOME="/pnpm" +ENV PATH="$PNPM_HOME:$PATH" +RUN corepack enable + WORKDIR /dev COPY package.json ./ COPY pnpm-lock.yaml ./ -RUN npm i -g pnpm +#RUN npm i -g pnpm RUN pnpm install --frozen-lockfile RUN pnpm playwright install --with-deps From a40fdf36a3b83475dbca992b2a912a39857ecf83 Mon Sep 17 00:00:00 2001 From: Shai Reznik Date: Thu, 18 Apr 2024 14:29:28 +0300 Subject: [PATCH 4/7] fixed docker for visual tests --- Dockerfile | 4 ++-- docker-compose.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index f5dda5d6e..9f4630dbc 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,7 +4,7 @@ ENV PNPM_HOME="/pnpm" ENV PATH="$PNPM_HOME:$PATH" RUN corepack enable -WORKDIR /dev +WORKDIR /opt COPY package.json ./ COPY pnpm-lock.yaml ./ @@ -18,4 +18,4 @@ COPY packages/kit-headless ./packages/kit-headless COPY packages/kit-styled ./packages/kit-styled COPY apps/component-tests ./packages/component-tests -CMD ["pnpm", "test.pw.visual-headless"] \ No newline at end of file +CMD ["pnpm", "test.visual.headless"] \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index b9a662f4a..7e45f4ef2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -6,7 +6,7 @@ services: dockerfile: Dockerfile image: playwright-tests volumes: - - ./packages:/dev/packages + - ./packages:/opt/packages ports: - '5713:5713' - working_dir: /dev + # working_dir: /dev From a1c85ca116e699b3f4be166a282982eaeb036288 Mon Sep 17 00:00:00 2001 From: Shai Reznik Date: Thu, 18 Apr 2024 14:59:46 +0300 Subject: [PATCH 5/7] test: fixed visual tests running --- .dockerignore | 8 +++++++- .github/actions/test/action.yml | 4 ++++ Dockerfile | 8 +++++--- package.json | 3 ++- packages/kit-headless/playwright.config.ts | 2 ++ .../closed-combobox-visual-linux.png | Bin 0 -> 9126 bytes .../opened-combobox-visual-linux.png | Bin 0 -> 9126 bytes .../closed-modal-visual-linux.png | Bin 0 -> 7563 bytes .../opened-modal-visual-linux.png | Bin 0 -> 7563 bytes .../closed-popover-visual-linux.png | Bin 0 -> 8050 bytes .../opened-popover-visual-linux.png | Bin 0 -> 7855 bytes 11 files changed, 20 insertions(+), 5 deletions(-) create mode 100644 packages/kit-headless/src/components/combobox/combobox.test.ts-snapshots/closed-combobox-visual-linux.png create mode 100644 packages/kit-headless/src/components/combobox/combobox.test.ts-snapshots/opened-combobox-visual-linux.png create mode 100644 packages/kit-headless/src/components/modal/modal.test.ts-snapshots/closed-modal-visual-linux.png create mode 100644 packages/kit-headless/src/components/modal/modal.test.ts-snapshots/opened-modal-visual-linux.png create mode 100644 packages/kit-headless/src/components/popover/popover.test.ts-snapshots/closed-popover-visual-linux.png create mode 100644 packages/kit-headless/src/components/popover/popover.test.ts-snapshots/opened-popover-visual-linux.png diff --git a/.dockerignore b/.dockerignore index 9ca634cb4..75a1610f1 100644 --- a/.dockerignore +++ b/.dockerignore @@ -19,4 +19,10 @@ build/ # Ignore version control files .git/ -.gitignore \ No newline at end of file +.gitignore + +cypress +cla-signs +.verdaccio +.storybook +logs diff --git a/.github/actions/test/action.yml b/.github/actions/test/action.yml index a0054b0cb..0e4e794a8 100644 --- a/.github/actions/test/action.yml +++ b/.github/actions/test/action.yml @@ -41,6 +41,10 @@ runs: with: command: 'pnpm test.headless.ci' + - name: Run Visual Tests + shell: bash + run: 'pnpm test.headless.visual' + # - name: Publish to Chromatic # uses: chromaui/action@v1 # # Chromatic GitHub Action options diff --git a/Dockerfile b/Dockerfile index 9f4630dbc..28b0a912d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -9,13 +9,15 @@ WORKDIR /opt COPY package.json ./ COPY pnpm-lock.yaml ./ -#RUN npm i -g pnpm RUN pnpm install --frozen-lockfile RUN pnpm playwright install --with-deps COPY packages/kit-headless ./packages/kit-headless COPY packages/kit-styled ./packages/kit-styled -COPY apps/component-tests ./packages/component-tests +COPY apps/component-tests ./apps/component-tests +COPY . . -CMD ["pnpm", "test.visual.headless"] \ No newline at end of file +#ENV DEBUG="pw:browser" +#ENV NX_VERBOSE_LOGGING=true +CMD ["pnpm", "test.headless.visual"] \ No newline at end of file diff --git a/package.json b/package.json index a52dc333c..05f6712b5 100644 --- a/package.json +++ b/package.json @@ -33,10 +33,11 @@ "story.headless": "nx storybook headless", "test.cli": "NODE_OPTIONS=--experimental-vm-modules nx test cli", "test.headless": "nx component-test headless", - "test.visual.headless": "nx visual-test headless", + "test.headless.visual": "nx visual-test headless", "test.pw.headless": "nx e2e headless", "test.pw.headless.ci": "nx e2e headless", "test.headless.ci": "nx component-test-ci headless", + "test.headless.ci.visual": "docker-compose up", "test.utils": "nx test utils" }, "packageManager": "pnpm@8.7.0", diff --git a/packages/kit-headless/playwright.config.ts b/packages/kit-headless/playwright.config.ts index 4232025df..d9d2d3721 100644 --- a/packages/kit-headless/playwright.config.ts +++ b/packages/kit-headless/playwright.config.ts @@ -20,6 +20,7 @@ export default defineConfig({ ...nxE2EPreset(__filename, { testDir: './src' }), testMatch: '**/*.test.ts', timeout: 30000, + reporter: [['line']], /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */ use: { baseURL, @@ -45,6 +46,7 @@ export default defineConfig({ name: 'visual', use: { ...devices['Desktop Chrome'] }, grep: /@Visual.*/, + expect: { toHaveScreenshot: {}, }, diff --git a/packages/kit-headless/src/components/combobox/combobox.test.ts-snapshots/closed-combobox-visual-linux.png b/packages/kit-headless/src/components/combobox/combobox.test.ts-snapshots/closed-combobox-visual-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..1369da87144c9e9b067d4bf52af8708c38fa3a83 GIT binary patch literal 9126 zcmeHNX;f3^y56YORuOtiy_P8sM5vWPMZgFNT3Rupq_GRHr{gusSwXelz@@z|@2*sRb!kq2_pU9WiKqk*%WzfSi#U_sZe!;h zY9`f}?%0L@j=tIVo8XDt?+P5Rk6h2NIP;CW0{6}L>o25!zVp%-i<<3&x|tuodo_|m zYz|#aiwunPm#z4h`D zRWhvB!m1RkD&eXUt}5ZG68;-1VPlPrDV^aon7k26P4Ix$LFf7uAI2hbl^i<1qE>-~ zpeY9QDfGnl&s{!bZ(r?-=$?eK%Ul^Qy8=OjWz>)EQ0?aHxXX^>s%p*TMyK^0oZ$>6 z?*#Mloglr`1eSXiA|g84lRzLe#7Svd&5EScUeGBgD;sMNcos_W%8Q_y$mUEDy;z=j zf8CHqMA2!SQ$!CcS`N9T8)&R7V}fk*XkCC_GVE z5m@A5*L+~CEel7p_HQ^4sQKVccz44pbfhUsI#?a)m$if&s*4SB#1Agi$eVQhfb9bbh^)%=}L{*{uyh)Buo9hsH+9dNR6}{Mx`%p6eknfv>}L5 z4e_!X{^Q!H0b0_$c*2mfSQl8o6xY!LY`HAgeA-baXON_N0|X{`qwC zMTUd5FZ*kbiXTHmwwV!5EDptRrhHcdh*Pf*MYd5XTEf($R)a|NHcAYM$FSjD{bW-m zh(_OdKN8M~pVIVDT==p=*0-F@rR^FZ%A0#12eql^vN@g8jq*Zei?Uhz^7mFp`!fGV z$1KcpI6(FGEerS1QIZl*lHc(Tz@{6R_f$vrxy(FSYrH@B*s@Yygv_-M^ZXCH0H#Jc z>T2OmP2owRYpV&g5S^9J{1Cfo@n@5KXUh$w&^F8_=#6WJN2*?`|5MD$B)zM^S@L{q z;E9^+4~nUWzL6AB$kTOW)FwGe&QnQ>MjJHE%8~qDPiGtNKvMkCEJVR>uTmt|wq@y^ zS#uRafr~luPw@6cMnUSdz?jjs8Bp^L*#?N#{X_XZFlH9O9z;S zg4qThop+Nt_Ofs|omNB8DEh*B?qN|&Z_)@u_}c0g%JVJWBq43U(T{iP!(|Zj2=IYE_g`U+ZmX%7fX4x!J6pN+JjN{a{Lz~&to)Z>;SaIM-9+kqy>w5%eO1yDR%Ftq@HVJCCY7 z11K7W%gSWc0KRsZhIA5LbStkH=Vh2WMY9U%P8IT7?g;KUmp;GHi<8_x#2Xi*)!wr#qlHo{bOpZJfP zw%~5{Oe;!ykG?;7;k}SYlh;cMGmPymU3Dr!Z#_YBB4_W8n_KO=o?hG33j&TBX+puM zTjC1UR3#?mCgUWRN2hJ(cxu^ulg1QCZ1IpDcYdo*g?&<%Uw(2CWs^zHR#&mMKzGgb zfL3M0(h@o?s^L2)SvyKLc8Wd=o+UDY zw%YjKZj`q)I;1$5WCllm2^VQzUf!kGKY3Rp2!CDu1XdCRX`x%_@l(3KF%7N?2n0GVQ7zV$2a;1L0%h@kzq~p#W!dRwL4Wh9-JeZ&7P^MQ6WW646u!a(Anr&s5ViS?P z&qvc3JodmZEzlz3000z6W3$=!9!nMXhKRlIkdPA{XYQefNb45T6_!C z^8xRGq!74Bkx3u!vuH@Gg18?eUwP0RB89>7W@R*K7!*E!n(qXvoS8V1r0NXA&^>JH zk?H0MXO3o?+yQE^7hDqE95{OSNLo#9$jiG&axtW3N6w1OO6q8m8TaAU?uzC`-%17I zs*&Z1c9?x4f*?dWoQU)C@^Xw8VdjcEbLk8QBW`NY zK_)EYKW$6r=O`r5=@_or;fp3b)7torm@w6T6Ir2(qD-U671j>k>Ljh z_YU4`(;W|b&&Re7;~{8-`mt99wNZz~g=ETe{DQZ98FA*X4Ssfg1&87;xJiK^N*d=jl5!POaB(SF7f$K+s5TQ_}n;o=q*%&(2Wm4cjAzwGYizJDbH7^5X28 z7kc8PJt65?D_k6T|8QfX;QOuqx8r5PU0AYuY?~y*zN=l#&mWED6loV&D9u7|)y20@ zkzCW5rd!7Lq2sW26A1IJnD#whbn$TS+y^<`h96<3&;bM4Y3^$TJ)xLnLu;YNd%(b; z0XL$T7pL;kN|C)^O%%7UWwDw`S{#tq3EVMrx6Tr$s#UL8m^+!KPNnzn@Ahv@;DZLj zxUzPGB{sT6C1%D8eWW1DhD3Q`xqqV=SedRr|FgJ;SQA5%`N84!R)q;B0nMe|#qQA! z(o(o%?K%DMSP_Pl(1E&KwaK<_JGi7PRc~z%3s)2+s@vx@9Op$|85#|J{_7U!gC#TEL=2}n>?i_B2=S5aDGk|4~fLOF`>1S3> zRW9o+9~9wy8(6UmByRMI{ADu8wvmHxf;clA9Pxo#6aX7i;$0CS?T=m2#t=X+_NffU zf>r=$wpKK1hYd)YxDz$V-n}B{jQt)l(Qya%7zPL5q?&6p%x9Nn6=5J;)cd<>HTAer zSJ^~%U>BT}faYYp5(DcL@Y1(|A+-QqSU@#jN(?-vJzycdc=6Kvb+d-hn{7z&!s8{m zjEq#t3B5gBa!efBJ%Bt}4&*dELGH^S#=;Vd=hdx!8!2Tro-Lo5bGzNku&~6;BER^vl`=LC$wzOFc)$EWg(` zb+jHx&UylhBNWUb1$fZL)3&M40Txw;cmLs7_$7!J17Q7Hp1RhcUmOq6N>)w}FE@bF z0#e=q;vYPB2!fXSz5prl9}Gmi@4oNFN)(lLhe!3vK~i>tyZcK3q}Bt=3xN>yrp#sC zI;ejF-k!nS|8>irIerY;zW8Y7@hk*-FxeUc?g-w`^-nN~)Aeu_t~W5tnc!thgnlu2 z*)1^X@C9HB*lY#JH>ErLz?@R+5)l!>h4~8n$z*k3fUaiX95G73IS-{$tYE|C{mdvK zUc32!O_xU>x3o|4fy=5vfV6dd4i=aIeh(=ra|dkv@$4FXm~7WzHbc-4Ie_lqvwFIU z#wr>JhC_xwO#&9PQKl zn53XJA8qN2b=zS^WPElQ9= literal 0 HcmV?d00001 diff --git a/packages/kit-headless/src/components/combobox/combobox.test.ts-snapshots/opened-combobox-visual-linux.png b/packages/kit-headless/src/components/combobox/combobox.test.ts-snapshots/opened-combobox-visual-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..1369da87144c9e9b067d4bf52af8708c38fa3a83 GIT binary patch literal 9126 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 literal 0 HcmV?d00001 diff --git a/packages/kit-headless/src/components/modal/modal.test.ts-snapshots/closed-modal-visual-linux.png b/packages/kit-headless/src/components/modal/modal.test.ts-snapshots/closed-modal-visual-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..b1f8c06e60f0a88233a8e5a145f11f21e4a69351 GIT binary patch literal 7563 zcmeHM`&Ux=7C&Z9HS4Oix|3y@bL-w(cbQq&$i#%6T3K2elAuyK=>#bi;#;xD?XAw_ zbTdtD)Y1+Cr6E4CvZ7MZ48%wHPJ$z%DJmdxzo%LE54gY1f?xLcdsydt&ffd;`Ru*+ zxpv6U$L4#7?;!}X*|&Fh00hkg%Q-Czz5}K?MG*vy6(hiBC&ZPkR6&sAo_)J_9ErcD zQ6ycJF=s_%Q}Mz4cN+qtPj*D@FT}4deVo4j5q|a2{TGVaa~D^{1it^*(&3k_m%W1z zH%|J8?P=6)#ZPc~cH7}yo5!Vky9Nj{SaLdS&bg zol2I>V7BSQNDk@VMc`GSw7m_JlXJeU3NoPu=;FoP?WkF>7DBIY-)OZ6-CkIjhMGkO zpt-=L9h>tbx}CcOvI6GEY|E{dFj*jBVU9&5EQ)9;9F`(!X$by=eN*aMvLKq1zQR3- z#WHt?fhO0Si3%#RIIHYyydHIBhwWFdOO_ovAl$#yLgqS6|`(GXg8PbMC3eP zc{8rY7W?HssXXGKZel{(V22Nh>rRMNBq;Nek`f36K0_(Njy|`hsahXg{7zU>kXlV5 zlWC$1N4$RcwNNNDjMQjTrJb?E?PFQOB~aRVP_EPd7Gu;1`qY1+?uxqxFq`_JaF2CizgotoDXN*w7xV1@lHDbj6VZd*BwLHn z=NNQ6R;cnG!!N3*14Y-@iSPLtg8u+A`v@Uu^G zGouX#gkmP~ga)d(0ADYh?!RHK?sn$YmbLLH6yG}=qM~VZI#2bnM7wmOQk+X<=^H6j zom!@Q@640tU})6wAu%RybVE;~#hxc4M8_!SjxjAk!lO{@m?aY}g>UDO{mF3*W2h<7 zpemXFiKy+Q@i-}y9VIXfA|9YKJ*YN|UtL>5Q%fI-8`D;#dwc1mfy~dhiMHADpEs+= zL{2;!udYJh^(MoSTpl5Y0cr~k1_QOD>?EHmgR4~!b90Ob^S4#`d1{^wDa$2Tws7Wa zW6s9oJ7rUmTl3GnT!=}W`0@u@SA0Y3%H+`(1cG^TxQ0U(j4YjR=P~%pkg>1f3Xx1E zbArnsZaLk42$h$lk*X3~{LJVOZK&z4OrZ!};U0Z@B(DG3x-C6|XV0W>e_exg(d!jO z7z$HH(9MiD%Rw{(S+nB>G->H!Ov2YeE5;UjcSx=~ox3k(4Efwa}&@uUsQosi&iC_ zMoHE(|Lg=%g7>$bk>3LS^qHbBS}iYSN+Ix0cL1zmO*c590wI^KG-Hp2k}8;nL;`;+tL zuvz5d_OK)kKW9r6DUUU)mvwXmcU45OoAKt_H#e7;i;#IxuL$iqFTb5NYAHY{j(bhC z?BWAqu?hz#%350kK9=}9Juzun=A`iyI-L$^?Sla^F?@Dq1z&NDJ(@DzcLmMY5bfi` zgZ!V~-J+g4wfq)FTcZ^+$6njZ!!x~t09Y^LOac(M49}5Dk}z4HrqK$G(V!Y|GqCDX ztg1K*uCK4}W|>Vx@kJj>e{c@kjE@7-_-xmvnkx0$z;kTd7j8?d&*;Sbk&2ADrG(vI5WSge(cQ(Hu!TS*Uybeah4wpv>~y@Lr!6(cp1JF zi5FBR>eSWdStC->70pI70&q_WEb-%1F_b}oZ6J;8A#tvIZ@^%9h6jqzmfGFb;3WVq z0|8$AbyHJzD*7C#x4?T?1I9dm_WuQj-C}T93jpjgocJPfzxfJhl^kykH-}n)H!(8>@VB| zKvm4y{#QF(&88QiAW#aDzwSe;Bp)~+pVV|AASrzAmiCqvh>oCw)=X zUV9+BCAn2=*Bw8Qo`YplL2Xk5pn|-&^<8laTjP`QNwXDyGt&v5+F~@BC@9m=0)J`Y zlGvJ_9y=Tel>?{=^(hYLKvdBjgTJWLqkZ`C>sHVr0Nu$8EE~{9j55yIfr?yrY-W0_ z#%mFnGo{)}0Q(>?Zu+0K%or>)2Fr}WGGnmJ7%Vde%Z%YqIAgGUOtO4)LmR&Tr_nQ6 Z7YdhA^2ebKpjU+U?eW{q-FfW7e*s0_;d}r9 literal 0 HcmV?d00001 diff --git a/packages/kit-headless/src/components/modal/modal.test.ts-snapshots/opened-modal-visual-linux.png b/packages/kit-headless/src/components/modal/modal.test.ts-snapshots/opened-modal-visual-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..b1f8c06e60f0a88233a8e5a145f11f21e4a69351 GIT binary patch literal 7563 zcmeHM`&Ux=7C&Z9HS4Oix|3y@bL-w(cbQq&$i#%6T3K2elAuyK=>#bi;#;xD?XAw_ zbTdtD)Y1+Cr6E4CvZ7MZ48%wHPJ$z%DJmdxzo%LE54gY1f?xLcdsydt&ffd;`Ru*+ zxpv6U$L4#7?;!}X*|&Fh00hkg%Q-Czz5}K?MG*vy6(hiBC&ZPkR6&sAo_)J_9ErcD zQ6ycJF=s_%Q}Mz4cN+qtPj*D@FT}4deVo4j5q|a2{TGVaa~D^{1it^*(&3k_m%W1z zH%|J8?P=6)#ZPc~cH7}yo5!Vky9Nj{SaLdS&bg zol2I>V7BSQNDk@VMc`GSw7m_JlXJeU3NoPu=;FoP?WkF>7DBIY-)OZ6-CkIjhMGkO zpt-=L9h>tbx}CcOvI6GEY|E{dFj*jBVU9&5EQ)9;9F`(!X$by=eN*aMvLKq1zQR3- z#WHt?fhO0Si3%#RIIHYyydHIBhwWFdOO_ovAl$#yLgqS6|`(GXg8PbMC3eP zc{8rY7W?HssXXGKZel{(V22Nh>rRMNBq;Nek`f36K0_(Njy|`hsahXg{7zU>kXlV5 zlWC$1N4$RcwNNNDjMQjTrJb?E?PFQOB~aRVP_EPd7Gu;1`qY1+?uxqxFq`_JaF2CizgotoDXN*w7xV1@lHDbj6VZd*BwLHn z=NNQ6R;cnG!!N3*14Y-@iSPLtg8u+A`v@Uu^G zGouX#gkmP~ga)d(0ADYh?!RHK?sn$YmbLLH6yG}=qM~VZI#2bnM7wmOQk+X<=^H6j zom!@Q@640tU})6wAu%RybVE;~#hxc4M8_!SjxjAk!lO{@m?aY}g>UDO{mF3*W2h<7 zpemXFiKy+Q@i-}y9VIXfA|9YKJ*YN|UtL>5Q%fI-8`D;#dwc1mfy~dhiMHADpEs+= zL{2;!udYJh^(MoSTpl5Y0cr~k1_QOD>?EHmgR4~!b90Ob^S4#`d1{^wDa$2Tws7Wa zW6s9oJ7rUmTl3GnT!=}W`0@u@SA0Y3%H+`(1cG^TxQ0U(j4YjR=P~%pkg>1f3Xx1E zbArnsZaLk42$h$lk*X3~{LJVOZK&z4OrZ!};U0Z@B(DG3x-C6|XV0W>e_exg(d!jO z7z$HH(9MiD%Rw{(S+nB>G->H!Ov2YeE5;UjcSx=~ox3k(4Efwa}&@uUsQosi&iC_ zMoHE(|Lg=%g7>$bk>3LS^qHbBS}iYSN+Ix0cL1zmO*c590wI^KG-Hp2k}8;nL;`;+tL zuvz5d_OK)kKW9r6DUUU)mvwXmcU45OoAKt_H#e7;i;#IxuL$iqFTb5NYAHY{j(bhC z?BWAqu?hz#%350kK9=}9Juzun=A`iyI-L$^?Sla^F?@Dq1z&NDJ(@DzcLmMY5bfi` zgZ!V~-J+g4wfq)FTcZ^+$6njZ!!x~t09Y^LOac(M49}5Dk}z4HrqK$G(V!Y|GqCDX ztg1K*uCK4}W|>Vx@kJj>e{c@kjE@7-_-xmvnkx0$z;kTd7j8?d&*;Sbk&2ADrG(vI5WSge(cQ(Hu!TS*Uybeah4wpv>~y@Lr!6(cp1JF zi5FBR>eSWdStC->70pI70&q_WEb-%1F_b}oZ6J;8A#tvIZ@^%9h6jqzmfGFb;3WVq z0|8$AbyHJzD*7C#x4?T?1I9dm_WuQj-C}T93jpjgocJPfzxfJhl^kykH-}n)H!(8>@VB| zKvm4y{#QF(&88QiAW#aDzwSe;Bp)~+pVV|AASrzAmiCqvh>oCw)=X zUV9+BCAn2=*Bw8Qo`YplL2Xk5pn|-&^<8laTjP`QNwXDyGt&v5+F~@BC@9m=0)J`Y zlGvJ_9y=Tel>?{=^(hYLKvdBjgTJWLqkZ`C>sHVr0Nu$8EE~{9j55yIfr?yrY-W0_ z#%mFnGo{)}0Q(>?Zu+0K%or>)2Fr}WGGnmJ7%Vde%Z%YqIAgGUOtO4)LmR&Tr_nQ6 Z7YdhA^2ebKpjU+U?eW{q-FfW7e*s0_;d}r9 literal 0 HcmV?d00001 diff --git a/packages/kit-headless/src/components/popover/popover.test.ts-snapshots/closed-popover-visual-linux.png b/packages/kit-headless/src/components/popover/popover.test.ts-snapshots/closed-popover-visual-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..b23044e6115708ff37be17228cfbca5d0ba5bae6 GIT binary patch literal 8050 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 literal 0 HcmV?d00001 diff --git a/packages/kit-headless/src/components/popover/popover.test.ts-snapshots/opened-popover-visual-linux.png b/packages/kit-headless/src/components/popover/popover.test.ts-snapshots/opened-popover-visual-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..85dbf49d839e35081770369ddce1da0330b97757 GIT binary patch literal 7855 zcmeHM`&Uxw8s6P&%Ir+1m1#zEn#t2@na7H}Ma*>3<0>_$h|+`_r!+{>9AxAoInCti zrZdfycbSzh5?OfOA-3YbM1Uq>8-IO5Gy5VYk|iu&a^YpZUr`FuUGV`<_!^ zwZ&5P6eTOXqK{gZZJ8oIUAD2G-Jl>p%V1;YoBVOURy<$&1I##{o#G`(zV!k!5<@#E7X!COP`t8T6jJ-%vhYhNraRkzV1h{{)=nZ zu9-%zc}lzP?bKFRmg5F8N7`~MMuzh&3KfGeon*)Hm`ysY(}HFvH1lVg)a4c});V}( zc&d_tL7|dL(>u*4E-60;c;kiA17J?8IK$6kqr4tH>r{X7_!6$-uxF1Omak zJW!|6Xqe^Y<&$RLu+08}Bu2u#f;~!dKs}4gX|Ybxz8BeB zw5JmITN+pU%@GgSffhbNi8)aj&Gw|dKLjVu3{PeU$-g_n#)?`)!@}^LdA{(B$=8C> z>pq&**oA{Al*w$C+CCb!&sGQ2GzfJmoh^&gOd5#^#EtzZx-3p86q<^9sgGRGt-sjA zBv4g8M3V%KMoEg{cwEQrO~k$<8zm1Te`PXpL;Mup#h&6p0TF)(hICZXmq1s8cB8@P z-R5>qLNl|nvXV?DGn<>6#Ym@(44{X5b@vMtirDSn(Enm1cK9|Og~D0~Wg0^#jJpCx zoh>x>GLRxECm}utY5xwyB1>H+0mrBBnao|n4{t4<+9!WTvzW~AiddLqHWx3g zIRhtu0KSmtUioRqZUv-(frYB-&b`Px^Z2g1qo1NMmM4}Yp*Ei~@Ijxp25>5eK(`J>3}WwVul_NToUSJP1nrHg(Z*DEKQqO;6GGMZi)v4Lv@8$iu@!vTWno*_)G% zb6q>}fMJLd6j}m!A>XUvfVnnb;!0ON!+trce1FsSm~!gZQY?y>uIj+;_3m-aUsKz; zB}|iEvM+^6cNiHxwK+LCfYuVbvy_=bDG{YA^ALfX#Gvt0n{|Bez%isVNDfG>cfawN z$C@=yYAQt{5&!bQm1pYJ&}{fNP$i|m16s4_2=w@)1-sZxW?2|X3YVQd0kgl4z-#)e zxygAh9H7x?#BAG=-2L|X3GX}MKoVK^1F#r|rN1(|%hDUBZxM{&J&H4oz36E(Tb0h% zi{jEVV49(0>3fpIH3n6ui`8-G&i%f2bMSF2C=r)@0v2Gcz5XVEHg%MTlQ7%GwU_>U zL>|dm;nG|l$Ul=Q7`wR>_qs69MF299)2?S;69s+$aiTz$vt&hdSI82ea4WAukY81O zeLa~%(H7%5)eS8Z{zM=KsECLNe{8D_)w750u#vU#O7ctnDo4XkPU8cYAOc+ju9hom z1;icGwILsZ2z%SFg9D>K0zsd90Tov>=&j=Y#@C0o+)m$ZGMOX^BsuXpOB4NETo$I) z)14F-60?rZ)UE-L0#(Cevvof!*HQlfk8yEbre2YNbbjnDQ2~Br*{$=k=Qq~p<1rAl zf9X=Bh*bb`p99Fv3I=$1^c`=wW`im3~gKKS_<{2UqHhNy2DzC)V}Fq U+w#z1a0Nvki9XCZc Date: Wed, 15 May 2024 20:55:44 +0300 Subject: [PATCH 6/7] test: updated maxDiffPixels --- packages/kit-headless/playwright.config.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/kit-headless/playwright.config.ts b/packages/kit-headless/playwright.config.ts index d9d2d3721..f927b9152 100644 --- a/packages/kit-headless/playwright.config.ts +++ b/packages/kit-headless/playwright.config.ts @@ -48,7 +48,9 @@ export default defineConfig({ grep: /@Visual.*/, expect: { - toHaveScreenshot: {}, + toHaveScreenshot: { + maxDiffPixels: 10, + }, }, }, From adebee47b57407cac33ea5bd7e355f60d57788e9 Mon Sep 17 00:00:00 2001 From: Shai Reznik Date: Wed, 15 May 2024 21:00:21 +0300 Subject: [PATCH 7/7] test: changed to pixel ratio --- packages/kit-headless/playwright.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/kit-headless/playwright.config.ts b/packages/kit-headless/playwright.config.ts index f927b9152..2d50819a7 100644 --- a/packages/kit-headless/playwright.config.ts +++ b/packages/kit-headless/playwright.config.ts @@ -49,7 +49,7 @@ export default defineConfig({ expect: { toHaveScreenshot: { - maxDiffPixels: 10, + maxDiffPixelRatio: 0.02, }, }, },