Skip to content

Commit 8847c15

Browse files
fix: allowing empty team name when migrating [WPB-15092] 🍒 (#3764)
Co-authored-by: Michał Saleniuk <[email protected]> Co-authored-by: Michał Saleniuk <[email protected]>
1 parent a8898c2 commit 8847c15

File tree

3 files changed

+18
-2
lines changed

3 files changed

+18
-2
lines changed

app/src/main/kotlin/com/wire/android/ui/userprofile/teammigration/TeamMigrationViewModel.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ class TeamMigrationViewModel @Inject constructor(
9595
fun migrateFromPersonalToTeamAccount(onSuccess: () -> Unit) {
9696
viewModelScope.launch {
9797
migrateFromPersonalToTeam.invoke(
98-
teamMigrationState.teamNameTextState.text.toString(),
98+
teamMigrationState.teamNameTextState.text.trim().toString(),
9999
).let { result ->
100100
when (result) {
101101
is MigrateFromPersonalToTeamResult.Success -> {

app/src/main/kotlin/com/wire/android/ui/userprofile/teammigration/step2/TeamMigrationTeamNameStepScreen.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ private fun TeamMigrationTeamNameStepScreenContent(
129129
textFieldState = teamNameTextFieldState,
130130
)
131131
}
132-
val isContinueButtonEnabled = teamNameTextFieldState.text.isNotEmpty()
132+
val isContinueButtonEnabled = teamNameTextFieldState.text.isNotEmpty() && teamNameTextFieldState.text.isNotBlank()
133133
BottomLineButtons(
134134
isContinueButtonEnabled = isContinueButtonEnabled,
135135
onContinue = onContinueButtonClicked,

app/src/test/kotlin/com/wire/android/ui/userprofile/teammigration/TeamMigrationViewModelTest.kt

+16
Original file line numberDiff line numberDiff line change
@@ -243,6 +243,22 @@ class TeamMigrationViewModelTest {
243243
Assertions.assertNull(viewModel.teamMigrationState.migrationFailure)
244244
}
245245

246+
@Test
247+
fun `given team name with spaces at start or end, when invoking migration, then trim the name`() = runTest {
248+
// given
249+
val (arrangement, viewModel) = Arrangement()
250+
.withMigrateFromPersonalToTeamSuccess()
251+
.arrange()
252+
val onSuccess = {}
253+
viewModel.teamMigrationState.teamNameTextState.setTextAndPlaceCursorAtEnd(" ${Arrangement.TEAM_NAME} ")
254+
// when
255+
viewModel.migrateFromPersonalToTeamAccount(onSuccess)
256+
// then
257+
coVerify(exactly = 1) {
258+
arrangement.migrateFromPersonalToTeam(Arrangement.TEAM_NAME)
259+
}
260+
}
261+
246262
private class Arrangement {
247263

248264
@MockK

0 commit comments

Comments
 (0)