1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00
lens/packages/utility-features/react-testing-library-discovery/dist/index.js
Gabriel 6404993432 packages/ui-components/tooltip
Signed-off-by: Gabriel <gaccettola@mirantis.com>
2023-04-12 11:00:36 +02:00

1 line
1.6 KiB
JavaScript

(()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{discoverFor:()=>u,getSingleElement:()=>l,queryAllElements:()=>i,querySingleElement:()=>o});const r=require("@testing-library/dom"),n=e=>"baseElement"in e?e.baseElement:e;function o(e){return(t,r)=>{const o=e(),i=`data-${t}-test`,l=r?`[${i}="${r}"]`:`[${i}]`,c=n(o).querySelector(l),s=u((()=>{if(!c)throw new Error("Tried to do nested discover using source that does not exist");return c}));return{discovered:c,...s}}}function i(e){return t=>{const r=e(),o=`data-${t}-test`,i=[...n(r).querySelectorAll(`[${o}]`)];return{discovered:i,attributeValues:i.map((e=>e.getAttribute(o)))}}}function l(e){return(t,l)=>{const u=`data-${t}-test`,{discovered:c,...s}=o(e)(t,l);if(!c){const o=(0,r.prettyDOM)(n(e()));if(l){const r=i(e)(t).attributeValues;throw new Error(`Couldn't find HTML-element with attribute "${u}" with value "${l}".\n\nPresent values are:\n\n"${r.join('",\n"')}"\n\nHTML is:\n\n${o}`)}throw new Error(`Couldn't find HTML-element with attribute "${u}"\n\nHTML is:\n\n${o}`)}return{discovered:c,click:()=>{if(!("click"in c)||"function"!=typeof c.click)throw new Error(`Tried to click something that was not clickable:\n\n${(0,r.prettyDOM)(c)}`);c.click()},...s}}}function u(e){return{querySingleElement:o(e),queryAllElements:i(e),getSingleElement:l(e)}}module.exports=t})();