Hice un sitio web simple que contiene una barra lateral. Al hacer clic en el icono de la barra lateral, debería abrirse o cerrarse. El siguiente código que escribí hace exactamente eso.
/** toggleStatus is a anonymous function and can be called with its name */ let navStatus = false; let toggleStatus = function () { let getSidebar = document.querySelector(".sidebar"); let getSidebarUl = document.querySelector(".sidebar ul"); let getSidebarLinks = document.querySelectorAll(".sidebar a"); if (navStatus === false) { // if Sidebar is closed closeMenu(); getSidebarUl.style.visibility = "visible"; getSidebar.style.width = "272px"; // change width of sidebar so the content can fit let arrayLength = getSidebarLinks.length; for (let i = 0; i < arrayLength; i++) { // Smake every List item Visible getSidebarLinks[i].style.opacity = "1"; } navStatus = true; } else { // if Sidebar is open getSidebarUl.style.visibility = "hidden"; getSidebar.style.width = "50px"; // change width of sidebar to the base Design let arrayLength = getSidebarLinks.length; for (let i = 0; i < arrayLength; i++) { // make every List item invisible getSidebarLinks[i].style.opacity = "0"; } navStatus = false; } };Ahora tengo que escribir una prueba con Jest para esta función, pero no tengo ni idea de por dónde empezar. No puedo alimentarlo con ninguna entrada y comparar la salida esperada. ¿Alguien tiene algunos consejos para un novato?
¡Gracias!
Si sus funciones no tienen una salida explícita, no significa que no haga nada. La función tiene algún "comportamiento" y, en su caso, realiza algunas manipulaciones DOM. Así que deberías probarlo.
Tienes dos opciones para acercarte: