Yoga es un motor de diseño flexbox integrable y de alto rendimiento con enlaces para múltiples idiomas.
La implementación principal de Yoga apunta a C++ 20 con la lógica de compilación adjunta en CMake. Se proporciona un contenedor para construir la biblioteca principal y ejecutar pruebas unitarias.
./unit_tests < Debug | Release >
Si bien no es necesario, este script utilizará ninja si se instala para compilaciones más rápidas.
Yoga también forma parte de la colección de ports vcpkg mantenida por Microsoft y los contribuyentes de la red. Si la versión no está actualizada, cree un problema o una solicitud de extracción en el repositorio de vcpkg.
Muchas de las pruebas de Yoga se generan automáticamente mediante elementos HTML que describen la estructura de los nodos. Estos se representan en Chrome para generar el resultado de diseño esperado para el árbol. Se pueden agregar nuevos accesorios a gentest/fixtures
.
< div id =" my_test " style =" width: 100px; height: 100px; align-items: center; " >
< div style =" width: 50px; height: 50px; " > </ div >
</ div >
Para generar nuevas pruebas a partir de accesorios agregados:
yarn install
para instalar dependencias para el generador de pruebas.yarn gentest
en el directorio yoga
. Yoga proporciona una configuración VSCode "launch.json" que permite depurar pruebas unitarias. Simplemente agregue sus puntos de interrupción y ejecute "Pruebas unitarias de depuración de C++ (lldb)" (o "Pruebas unitarias de depuración de C++ (vsdbg)" en Windows).