feat: establish Android project foundation #2
@@ -13,7 +13,9 @@ value class DeviceName(val value: String)
|
|||||||
value class Username(val value: String)
|
value class Username(val value: String)
|
||||||
|
|
||||||
@JvmInline
|
@JvmInline
|
||||||
value class Password(val value: String)
|
value class Password(val value: String) {
|
||||||
|
override fun toString(): String = "Password(***)"
|
||||||
|
}
|
||||||
|
|
||||||
enum class ProviderType {
|
enum class ProviderType {
|
||||||
ABOX,
|
ABOX,
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.flagship.abox.manager.domain
|
package com.flagship.abox.manager.domain
|
||||||
|
|
||||||
import org.junit.Assert.assertEquals
|
import org.junit.Assert.assertEquals
|
||||||
|
import org.junit.Assert.assertFalse
|
||||||
import org.junit.Assert.assertTrue
|
import org.junit.Assert.assertTrue
|
||||||
import org.junit.Test
|
import org.junit.Test
|
||||||
|
|
||||||
@@ -20,4 +21,15 @@ class DomainResultTest {
|
|||||||
assertTrue(result is DomainResult.Failure)
|
assertTrue(result is DomainResult.Failure)
|
||||||
assertEquals("20504", (result as DomainResult.Failure).error.externalCode)
|
assertEquals("20504", (result as DomainResult.Failure).error.externalCode)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun credentialStringsDoNotExposePassword() {
|
||||||
|
val plaintext = "secret-password"
|
||||||
|
val password = Password(plaintext)
|
||||||
|
val credentials = LoginCredentials(Username("demo"), password)
|
||||||
|
|
||||||
|
assertFalse(password.toString().contains(plaintext))
|
||||||
|
assertFalse(credentials.toString().contains(plaintext))
|
||||||
|
assertTrue(credentials.toString().contains("Password(***)"))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user