diff --git a/android-app/app/src/test/java/com/korexlabs/dhinspeccion/DynamicFieldFlowContractTest.kt b/android-app/app/src/test/java/com/korexlabs/dhinspeccion/DynamicFieldFlowContractTest.kt new file mode 100644 index 0000000..5e96fd8 --- /dev/null +++ b/android-app/app/src/test/java/com/korexlabs/dhinspeccion/DynamicFieldFlowContractTest.kt @@ -0,0 +1,26 @@ +package com.korexlabs.dhinspeccion + +import java.io.File +import org.junit.Assert.assertTrue +import org.junit.Test + +class DynamicFieldFlowContractTest { + private val source = File("src/main/java/com/korexlabs/dhinspeccion/ui/DynamicVisitRoot.kt").readText() + + @Test + fun fastSubinstallationFlowKeepsParentClassificationAndCaptureSteps() { + assertTrue(source.contains("Elegí la Instalación padre")) + assertTrue(source.contains("Clasificación técnica *")) + assertTrue(source.contains("Guardar y tomar foto")) + assertTrue(source.contains("model.loadFieldTypes(item.id)")) + assertTrue(source.contains("parentId = item.id")) + } + + @Test + fun fieldCaptureStillRequiresGpsAndPhotoBeforeFindings() { + assertTrue(source.contains("La foto sigue siendo obligatoria antes de crear Hallazgos")) + assertTrue(source.contains("creationGpsCaptured")) + assertTrue(source.contains("fieldPhotoCount == 0")) + assertTrue(source.contains("model.uploadFieldPhoto")) + } +}