feat(kotlin-compose): design system + 33 components + gallery_kt + e2e android emulator + scaffolder fixes

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-11 16:28:50 +02:00
parent 0bdb8454e1
commit cb6d9e61d1
152 changed files with 148262 additions and 25 deletions
+66
View File
@@ -0,0 +1,66 @@
---
name: gradle_unit_test
kind: function
lang: bash
domain: infra
version: "1.0.0"
purity: impure
signature: "gradle_unit_test(project_dir: string, module: string, --variant <name>: string) -> int"
description: "Corre unit tests JVM de un modulo Android (no requiere emulador)."
tags: ["android", "gradle", "kotlin", "test", "junit"]
uses_functions: ["gradle_run_bash_infra"]
uses_types: []
returns: []
returns_optional: false
error_type: "error_go_core"
imports: []
tested: false
tests: []
test_file_path: ""
file_path: "bash/functions/infra/gradle_unit_test.sh"
params:
- name: project_dir
desc: "Raiz del proyecto Android con settings.gradle[.kts]."
- name: module
desc: "Modulo Gradle. Default: app"
- name: "--variant <name>"
desc: "Build variant (Debug|Release). Default Debug"
output: "Stdout con resultados JUnit. Linea final 'REPORT: <path_html>'. Exit code = test runner exit (0 OK, 1 fallos)."
notes: |
JVM only — Compose Composables que necesitan device se testean con
gradle_instrumented_test. Para tests Compose en JVM usar Roborazzi
(gradle_screenshot_test).
La funcion hace source de gradle_run.sh desde el mismo directorio
(bash/functions/infra/). La dependencia gradle_run_bash_infra debe
existir junto a este archivo.
---
## Ejemplo
```bash
source bash/functions/infra/gradle_unit_test.sh
# Tests del modulo app con variante Debug (por defecto)
gradle_unit_test /home/lucas/projects/myapp
# Tests del modulo :core con variante Release
gradle_unit_test /home/lucas/projects/myapp core --variant Release
# Verificar que paso
if gradle_unit_test /home/lucas/projects/myapp; then
echo "Todos los tests pasaron"
else
echo "Hay tests fallidos — revisar el report HTML"
fi
```
## Notas
JVM only — Compose Composables que necesitan device se testean con
`gradle_instrumented_test`. Para tests Compose en JVM usar Roborazzi
(`gradle_screenshot_test`).
El task ejecutado es `:$module:test${variant}UnitTest` (ej.
`:app:testDebugUnitTest`). El report HTML se imprime al final como
`REPORT: <path>` para facilitar parseo por agentes o scripts upstream.