Skip to content

Commit

Permalink
Fix test compile errors
Browse files Browse the repository at this point in the history
  • Loading branch information
LZRS committed Jun 14, 2024
1 parent 6056259 commit 9af1b80
Show file tree
Hide file tree
Showing 5 changed files with 29 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ import org.junit.Rule
import org.junit.Test
import org.smartregister.fhircore.engine.app.AppConfigService
import org.smartregister.fhircore.engine.robolectric.RobolectricTest
import org.smartregister.fhircore.engine.util.SecureSharedPreference
import org.smartregister.fhircore.engine.util.SharedPreferenceKey
import org.smartregister.fhircore.engine.util.SharedPreferencesHelper

Expand All @@ -40,6 +41,8 @@ class ConfigServiceTest : RobolectricTest() {

@Inject lateinit var gson: Gson

@Inject lateinit var secureSharedPreference: SecureSharedPreference

private val application = ApplicationProvider.getApplicationContext<Application>()

private lateinit var sharedPreferencesHelper: SharedPreferencesHelper
Expand All @@ -49,7 +52,7 @@ class ConfigServiceTest : RobolectricTest() {
@Before
fun setUp() {
hiltRule.inject()
sharedPreferencesHelper = SharedPreferencesHelper(application, gson)
sharedPreferencesHelper = SharedPreferencesHelper(application, gson, secureSharedPreference)
}

@Test
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -368,7 +368,7 @@ class TokenAuthenticatorTest : RobolectricTest() {

val secureSharedPreference = spyk(secureSharedPreference)
every { secureSharedPreference.get256RandomBytes() } returns passwordSalt
secureSharedPreference.saveCredentials(sampleUsername, passwd.toCharArray())
secureSharedPreference.saveMultiCredentials(sampleUsername, passwd.toCharArray())
val tokenAuthenticator =
spyk(
TokenAuthenticator(
Expand All @@ -388,7 +388,7 @@ class TokenAuthenticatorTest : RobolectricTest() {

@Test
fun testFindAccountShouldReturnAnAccount() {
secureSharedPreference.saveCredentials(sampleUsername, "sirikali".toCharArray())
secureSharedPreference.saveMultiCredentials(sampleUsername, "sirikali".toCharArray())
val account = Account(sampleUsername, PROVIDER)
every { accountManager.getAccountsByType(any()) } returns arrayOf(account)
val resultAccount = tokenAuthenticator.findCurrentLoggedInAccount()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,7 @@ import org.smartregister.fhircore.engine.domain.model.RuleConfig
import org.smartregister.fhircore.engine.robolectric.RobolectricTest
import org.smartregister.fhircore.engine.rulesengine.ConfigRulesExecutor
import org.smartregister.fhircore.engine.util.DefaultDispatcherProvider
import org.smartregister.fhircore.engine.util.SecureSharedPreference
import org.smartregister.fhircore.engine.util.SharedPreferencesHelper
import org.smartregister.fhircore.engine.util.extension.asReference
import org.smartregister.fhircore.engine.util.extension.formatDate
Expand All @@ -117,6 +118,8 @@ class DefaultRepositoryTest : RobolectricTest() {

@Inject lateinit var parser: IParser

@Inject lateinit var secureSharedPreference: SecureSharedPreference

@BindValue
val configService: ConfigService =
spyk(AppConfigService(ApplicationProvider.getApplicationContext()))
Expand All @@ -131,7 +134,7 @@ class DefaultRepositoryTest : RobolectricTest() {
fun setUp() {
hiltRule.inject()
dispatcherProvider = DefaultDispatcherProvider()
sharedPreferenceHelper = SharedPreferencesHelper(application, gson)
sharedPreferenceHelper = SharedPreferencesHelper(application, gson, secureSharedPreference)
defaultRepository =
DefaultRepository(
fhirEngine = fhirEngine,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,15 +47,21 @@ internal class SecureSharedPreferenceTest : RobolectricTest() {

@Test
fun testSaveCredentialsAndRetrieveSessionToken() {
secureSharedPreference.saveCredentials(username = "userName", password = "!@#$".toCharArray())
secureSharedPreference.saveMultiCredentials(
username = "userName",
password = "!@#$".toCharArray()
)
Assert.assertEquals("userName", secureSharedPreference.retrieveSessionUsername()!!)
}

@Test
fun testRetrieveCredentials() {
every { secureSharedPreference.get256RandomBytes() } returns byteArrayOf(-100, 0, 100, 101)

secureSharedPreference.saveCredentials(username = "userName", password = "!@#$".toCharArray())
secureSharedPreference.saveMultiCredentials(
username = "userName",
password = "!@#$".toCharArray()
)

Assert.assertEquals("userName", secureSharedPreference.retrieveCredentials()!!.username)
Assert.assertEquals(
Expand All @@ -66,7 +72,10 @@ internal class SecureSharedPreferenceTest : RobolectricTest() {

@Test
fun testDeleteCredentialReturnsNull() {
secureSharedPreference.saveCredentials(username = "userName", password = "!@#$".toCharArray())
secureSharedPreference.saveMultiCredentials(
username = "userName",
password = "!@#$".toCharArray()
)
Assert.assertNotNull(secureSharedPreference.retrieveCredentials())
secureSharedPreference.deleteCredentials()
Assert.assertNull(secureSharedPreference.retrieveCredentials())
Expand All @@ -75,7 +84,8 @@ internal class SecureSharedPreferenceTest : RobolectricTest() {
@Test
fun testSaveAndRetrievePin() {
every { secureSharedPreference.get256RandomBytes() } returns byteArrayOf(-100, 0, 100, 101)
secureSharedPreference.saveSessionPin(pin = "1234".toCharArray())
val username = secureSharedPreference.retrieveSessionUsername()!!
secureSharedPreference.saveSessionPin(username, pin = "1234".toCharArray())
Assert.assertEquals(
"1234".toCharArray().toPasswordHash(byteArrayOf(-100, 0, 100, 101)),
secureSharedPreference.retrieveSessionPin(),
Expand All @@ -87,8 +97,8 @@ internal class SecureSharedPreferenceTest : RobolectricTest() {
@Test
fun testResetSharedPrefsClearsData() {
every { secureSharedPreference.get256RandomBytes() } returns byteArrayOf(-128, 100, 112, 127)

secureSharedPreference.saveSessionPin(pin = "6699".toCharArray())
val username = secureSharedPreference.retrieveSessionUsername()!!
secureSharedPreference.saveSessionPin(username, pin = "6699".toCharArray())

val retrievedSessionPin = secureSharedPreference.retrieveSessionPin()

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,12 @@ internal class SharedPreferencesHelperTest : RobolectricTest() {

@Inject lateinit var gson: Gson

@Inject lateinit var secureSharedPreference: SecureSharedPreference

@Before
fun setUp() {
hiltRule.inject()
sharedPreferencesHelper = SharedPreferencesHelper(application, gson)
sharedPreferencesHelper = SharedPreferencesHelper(application, gson, secureSharedPreference)
}

@Test
Expand Down

0 comments on commit 9af1b80

Please sign in to comment.