mirror of
https://github.com/bitwarden/android.git
synced 2026-03-22 06:11:38 -05:00
PM-19335 add throwable val to generator error results (#4894)
This commit is contained in:
@@ -130,7 +130,7 @@ class GeneratorRepositoryImpl(
|
||||
}
|
||||
GeneratedPasswordResult.Success(generatedPassword)
|
||||
},
|
||||
onFailure = { GeneratedPasswordResult.InvalidRequest },
|
||||
onFailure = { GeneratedPasswordResult.InvalidRequest(error = it) },
|
||||
)
|
||||
|
||||
override suspend fun generatePassphrase(
|
||||
@@ -149,7 +149,7 @@ class GeneratorRepositoryImpl(
|
||||
}
|
||||
GeneratedPassphraseResult.Success(generatedPassphrase)
|
||||
},
|
||||
onFailure = { GeneratedPassphraseResult.InvalidRequest },
|
||||
onFailure = { GeneratedPassphraseResult.InvalidRequest(error = it) },
|
||||
)
|
||||
|
||||
override suspend fun generatePlusAddressedEmail(
|
||||
@@ -161,7 +161,7 @@ class GeneratorRepositoryImpl(
|
||||
GeneratedPlusAddressedUsernameResult.Success(generatedEmail)
|
||||
},
|
||||
onFailure = {
|
||||
GeneratedPlusAddressedUsernameResult.InvalidRequest
|
||||
GeneratedPlusAddressedUsernameResult.InvalidRequest(error = it)
|
||||
},
|
||||
)
|
||||
|
||||
@@ -174,7 +174,7 @@ class GeneratorRepositoryImpl(
|
||||
GeneratedCatchAllUsernameResult.Success(generatedEmail)
|
||||
},
|
||||
onFailure = {
|
||||
GeneratedCatchAllUsernameResult.InvalidRequest
|
||||
GeneratedCatchAllUsernameResult.InvalidRequest(error = it)
|
||||
},
|
||||
)
|
||||
|
||||
@@ -187,7 +187,7 @@ class GeneratorRepositoryImpl(
|
||||
GeneratedRandomWordUsernameResult.Success(generatedUsername)
|
||||
},
|
||||
onFailure = {
|
||||
GeneratedRandomWordUsernameResult.InvalidRequest
|
||||
GeneratedRandomWordUsernameResult.InvalidRequest(error = it)
|
||||
},
|
||||
)
|
||||
|
||||
@@ -200,7 +200,7 @@ class GeneratorRepositoryImpl(
|
||||
GeneratedForwardedServiceUsernameResult.Success(generatedEmail)
|
||||
},
|
||||
onFailure = {
|
||||
GeneratedForwardedServiceUsernameResult.InvalidRequest(it.message)
|
||||
GeneratedForwardedServiceUsernameResult.InvalidRequest(it.message, error = it)
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
@@ -15,5 +15,5 @@ sealed class GeneratedCatchAllUsernameResult {
|
||||
/**
|
||||
* There was an error during the operation.
|
||||
*/
|
||||
data object InvalidRequest : GeneratedCatchAllUsernameResult()
|
||||
data class InvalidRequest(val error: Throwable) : GeneratedCatchAllUsernameResult()
|
||||
}
|
||||
|
||||
@@ -14,5 +14,8 @@ sealed class GeneratedForwardedServiceUsernameResult {
|
||||
/**
|
||||
* There was an error during the operation.
|
||||
*/
|
||||
data class InvalidRequest(val message: String?) : GeneratedForwardedServiceUsernameResult()
|
||||
data class InvalidRequest(
|
||||
val message: String?,
|
||||
val error: Throwable,
|
||||
) : GeneratedForwardedServiceUsernameResult()
|
||||
}
|
||||
|
||||
@@ -12,5 +12,5 @@ sealed class GeneratedPassphraseResult {
|
||||
/**
|
||||
* There was an error during the operation.
|
||||
*/
|
||||
data object InvalidRequest : GeneratedPassphraseResult()
|
||||
data class InvalidRequest(val error: Throwable) : GeneratedPassphraseResult()
|
||||
}
|
||||
|
||||
@@ -13,5 +13,5 @@ sealed class GeneratedPasswordResult {
|
||||
/**
|
||||
* There was an error during the operation.
|
||||
*/
|
||||
data object InvalidRequest : GeneratedPasswordResult()
|
||||
data class InvalidRequest(val error: Throwable) : GeneratedPasswordResult()
|
||||
}
|
||||
|
||||
@@ -14,5 +14,5 @@ sealed class GeneratedPlusAddressedUsernameResult {
|
||||
/**
|
||||
* There was an error during the operation.
|
||||
*/
|
||||
data object InvalidRequest : GeneratedPlusAddressedUsernameResult()
|
||||
data class InvalidRequest(val error: Throwable) : GeneratedPlusAddressedUsernameResult()
|
||||
}
|
||||
|
||||
@@ -15,5 +15,5 @@ sealed class GeneratedRandomWordUsernameResult {
|
||||
/**
|
||||
* There was an error during the operation.
|
||||
*/
|
||||
data object InvalidRequest : GeneratedRandomWordUsernameResult()
|
||||
data class InvalidRequest(val error: Throwable) : GeneratedRandomWordUsernameResult()
|
||||
}
|
||||
|
||||
@@ -91,7 +91,7 @@ class MasterPasswordGeneratorViewModel @Inject constructor(
|
||||
|
||||
private fun handleUpdatedPassphraseResult(passphraseResult: GeneratedPassphraseResult) {
|
||||
when (passphraseResult) {
|
||||
GeneratedPassphraseResult.InvalidRequest -> {
|
||||
is GeneratedPassphraseResult.InvalidRequest -> {
|
||||
sendEvent(
|
||||
MasterPasswordGeneratorEvent.ShowSnackbar(
|
||||
R.string.an_error_has_occurred.asText(),
|
||||
|
||||
@@ -736,7 +736,7 @@ class GeneratorViewModel @Inject constructor(
|
||||
}
|
||||
}
|
||||
|
||||
GeneratedPasswordResult.InvalidRequest -> {
|
||||
is GeneratedPasswordResult.InvalidRequest -> {
|
||||
sendEvent(GeneratorEvent.ShowSnackbar(R.string.an_error_has_occurred.asText()))
|
||||
}
|
||||
}
|
||||
@@ -752,7 +752,7 @@ class GeneratorViewModel @Inject constructor(
|
||||
}
|
||||
}
|
||||
|
||||
GeneratedPassphraseResult.InvalidRequest -> {
|
||||
is GeneratedPassphraseResult.InvalidRequest -> {
|
||||
sendEvent(GeneratorEvent.ShowSnackbar(R.string.an_error_has_occurred.asText()))
|
||||
}
|
||||
}
|
||||
@@ -768,7 +768,7 @@ class GeneratorViewModel @Inject constructor(
|
||||
}
|
||||
}
|
||||
|
||||
GeneratedPlusAddressedUsernameResult.InvalidRequest -> {
|
||||
is GeneratedPlusAddressedUsernameResult.InvalidRequest -> {
|
||||
sendEvent(GeneratorEvent.ShowSnackbar(R.string.an_error_has_occurred.asText()))
|
||||
}
|
||||
}
|
||||
@@ -784,7 +784,7 @@ class GeneratorViewModel @Inject constructor(
|
||||
}
|
||||
}
|
||||
|
||||
GeneratedCatchAllUsernameResult.InvalidRequest -> {
|
||||
is GeneratedCatchAllUsernameResult.InvalidRequest -> {
|
||||
sendEvent(GeneratorEvent.ShowSnackbar(R.string.an_error_has_occurred.asText()))
|
||||
}
|
||||
}
|
||||
@@ -800,7 +800,7 @@ class GeneratorViewModel @Inject constructor(
|
||||
}
|
||||
}
|
||||
|
||||
GeneratedRandomWordUsernameResult.InvalidRequest -> {
|
||||
is GeneratedRandomWordUsernameResult.InvalidRequest -> {
|
||||
sendEvent(GeneratorEvent.ShowSnackbar(R.string.an_error_has_occurred.asText()))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -199,7 +199,9 @@ class GeneratorRepositoryTest {
|
||||
|
||||
val result = repository.generatePassword(request, true)
|
||||
|
||||
assertEquals(GeneratedPasswordResult.InvalidRequest, result)
|
||||
assertEquals(
|
||||
GeneratedPasswordResult.InvalidRequest(error = exception), result,
|
||||
)
|
||||
coVerify { generatorSdkSource.generatePassword(request) }
|
||||
}
|
||||
|
||||
@@ -257,7 +259,9 @@ class GeneratorRepositoryTest {
|
||||
|
||||
val result = repository.generatePassphrase(request)
|
||||
|
||||
assertEquals(GeneratedPassphraseResult.InvalidRequest, result)
|
||||
assertEquals(
|
||||
GeneratedPassphraseResult.InvalidRequest(error = exception), result,
|
||||
)
|
||||
coVerify { generatorSdkSource.generatePassphrase(request) }
|
||||
}
|
||||
|
||||
@@ -296,7 +300,9 @@ class GeneratorRepositoryTest {
|
||||
|
||||
val result = repository.generatePlusAddressedEmail(request)
|
||||
|
||||
assertEquals(GeneratedPlusAddressedUsernameResult.InvalidRequest, result)
|
||||
assertEquals(
|
||||
GeneratedPlusAddressedUsernameResult.InvalidRequest(error = exception), result,
|
||||
)
|
||||
coVerify { generatorSdkSource.generatePlusAddressedEmail(request) }
|
||||
}
|
||||
|
||||
@@ -331,7 +337,9 @@ class GeneratorRepositoryTest {
|
||||
|
||||
val result = repository.generateCatchAllEmail(request)
|
||||
|
||||
assertEquals(GeneratedCatchAllUsernameResult.InvalidRequest, result)
|
||||
assertEquals(
|
||||
GeneratedCatchAllUsernameResult.InvalidRequest(error = exception), result,
|
||||
)
|
||||
coVerify { generatorSdkSource.generateCatchAllEmail(request) }
|
||||
}
|
||||
|
||||
@@ -366,7 +374,9 @@ class GeneratorRepositoryTest {
|
||||
|
||||
val result = repository.generateRandomWordUsername(request)
|
||||
|
||||
assertEquals(GeneratedRandomWordUsernameResult.InvalidRequest, result)
|
||||
assertEquals(
|
||||
GeneratedRandomWordUsernameResult.InvalidRequest(error = exception), result,
|
||||
)
|
||||
coVerify { generatorSdkSource.generateRandomWord(request) }
|
||||
}
|
||||
|
||||
@@ -409,7 +419,10 @@ class GeneratorRepositoryTest {
|
||||
val result = repository.generateForwardedServiceUsername(request)
|
||||
|
||||
assertEquals(
|
||||
GeneratedForwardedServiceUsernameResult.InvalidRequest(exception.message),
|
||||
GeneratedForwardedServiceUsernameResult.InvalidRequest(
|
||||
message = exception.message,
|
||||
error = exception,
|
||||
),
|
||||
result,
|
||||
)
|
||||
coVerify { generatorSdkSource.generateForwardedServiceEmail(request) }
|
||||
|
||||
@@ -37,7 +37,7 @@ class MasterPasswordGeneratorViewModelTest : BaseViewModelTest() {
|
||||
@Suppress("MaxLineLength")
|
||||
fun `With no saved state and failed generator result, initial password state is default value`() {
|
||||
fakeGeneratorRepository.setMockGeneratePassphraseResult(
|
||||
result = GeneratedPassphraseResult.InvalidRequest,
|
||||
result = GeneratedPassphraseResult.InvalidRequest(error = Throwable("Fail")),
|
||||
)
|
||||
val viewModel = createViewModel()
|
||||
|
||||
@@ -91,7 +91,7 @@ class MasterPasswordGeneratorViewModelTest : BaseViewModelTest() {
|
||||
val viewModel = createViewModel()
|
||||
|
||||
fakeGeneratorRepository.setMockGeneratePassphraseResult(
|
||||
GeneratedPassphraseResult.InvalidRequest,
|
||||
GeneratedPassphraseResult.InvalidRequest(error = Throwable("Fail")),
|
||||
)
|
||||
|
||||
viewModel.eventFlow.test {
|
||||
|
||||
@@ -403,7 +403,7 @@ class GeneratorViewModelTest : BaseViewModelTest() {
|
||||
val viewModel = createViewModel()
|
||||
|
||||
fakeGeneratorRepository.setMockGeneratePasswordResult(
|
||||
GeneratedPasswordResult.InvalidRequest,
|
||||
GeneratedPasswordResult.InvalidRequest(error = Throwable("Fail")),
|
||||
)
|
||||
|
||||
viewModel.trySendAction(GeneratorAction.RegenerateClick)
|
||||
@@ -465,7 +465,7 @@ class GeneratorViewModelTest : BaseViewModelTest() {
|
||||
val viewModel = createViewModel(initialPassphraseState)
|
||||
|
||||
fakeGeneratorRepository.setMockGeneratePassphraseResult(
|
||||
GeneratedPassphraseResult.InvalidRequest,
|
||||
GeneratedPassphraseResult.InvalidRequest(error = Throwable("Fail")),
|
||||
)
|
||||
|
||||
viewModel.trySendAction(GeneratorAction.RegenerateClick)
|
||||
|
||||
Reference in New Issue
Block a user