package com.complycube.reactnative.config import com.complycube.reactnative.config.* import kotlin.test.Test import kotlin.test.assertTrue import kotlin.test.assertEquals class ConfigValidatorTest { private val validator = ComplyCubeConfigValidator() @Test fun missingClientIdReturnsError() { val settings = mutableMapOf("clientToken" to "token") val result = validator.validate(settings) assertTrue(result is ValidationResult.Error) } @Test fun missingClientTokenReturnsError() { val settings = mutableMapOf("clientID" to "client") val result = validator.validate(settings) assertTrue(result is ValidationResult.Error) } @Test fun missingWorkflowAndStagesReturnsError() { val settings = mutableMapOf( "clientID" to "client", "clientToken" to "token" ) val result = validator.validate(settings) assertTrue(result is ValidationResult.Error) } @Test fun validConfigReturnsSuccess() { val settings = mutableMapOf( "clientID" to "client", "clientToken" to "token", "stages" to listOf("intro") ) val result = validator.validate(settings) assertTrue(result is ValidationResult.Success) assertEquals(Unit, (result as ValidationResult.Success).data) } }