Skip to content

Commit

Permalink
Fix oppia#3890 Break *Required into 2 parts. (oppia#4019)
Browse files Browse the repository at this point in the history
* initial commit.

* made few changes

* removed kotlinx import from `AddProfileActivityTest.kt`

* code formatting

* code formatting

* updated app BUILD.bazel

* code formatting

* Update AddProfileViewModel.kt

* nitfixes

* nitfix
  • Loading branch information
rishidyno committed Dec 16, 2021
1 parent fb3072a commit a285c0b
Show file tree
Hide file tree
Showing 7 changed files with 27 additions and 12 deletions.
2 changes: 1 addition & 1 deletion app/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -198,6 +198,7 @@ VIEW_MODELS_WITH_RESOURCE_IMPORTS = [
"src/main/java/org/oppia/android/app/player/state/itemviewmodel/PreviousResponsesHeaderViewModel.kt",
"src/main/java/org/oppia/android/app/player/state/itemviewmodel/RatioExpressionInputInteractionViewModel.kt",
"src/main/java/org/oppia/android/app/player/state/itemviewmodel/SubmittedAnswerViewModel.kt",
"src/main/java/org/oppia/android/app/profile/AddProfileViewModel.kt",
"src/main/java/org/oppia/android/app/profile/PinPasswordViewModel.kt",
"src/main/java/org/oppia/android/app/profile/ResetPinViewModel.kt",
"src/main/java/org/oppia/android/app/profileprogress/ProfileProgressViewModel.kt",
Expand Down Expand Up @@ -292,7 +293,6 @@ VIEW_MODELS = [
"src/main/java/org/oppia/android/app/player/state/itemviewmodel/TextInputViewModel.kt",
"src/main/java/org/oppia/android/app/player/state/StateViewModel.kt",
"src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestViewModel.kt",
"src/main/java/org/oppia/android/app/profile/AddProfileViewModel.kt",
"src/main/java/org/oppia/android/app/profile/AdminAuthViewModel.kt",
"src/main/java/org/oppia/android/app/profile/AdminPinViewModel.kt",
"src/main/java/org/oppia/android/app/profile/AdminSettingsViewModel.kt",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,17 @@
package org.oppia.android.app.profile

import androidx.databinding.ObservableField
import org.oppia.android.R
import org.oppia.android.app.activity.ActivityScope
import org.oppia.android.app.translation.AppLanguageResourceHandler
import org.oppia.android.app.viewmodel.ObservableViewModel
import javax.inject.Inject

/** The ViewModel for [AddProfileActivity]. */
@ActivityScope
class AddProfileViewModel @Inject constructor() : ObservableViewModel() {
class AddProfileViewModel @Inject constructor(
resourceHandler: AppLanguageResourceHandler
) : ObservableViewModel() {
val validPin = ObservableField(false)
val pinErrorMsg = ObservableField("")
val confirmPinErrorMsg = ObservableField("")
Expand All @@ -18,6 +22,8 @@ class AddProfileViewModel @Inject constructor() : ObservableViewModel() {
val createPin = ObservableField(false)
val isButtonActive = ObservableField(false)
val showInfoAlertPopup = ObservableField<Boolean>(false)
val requiredTextWithStar: String = "*" +
resourceHandler.getStringInLocale(R.string.add_profile_required)

fun clearAllErrorMessages() {
pinErrorMsg.set("")
Expand Down
14 changes: 7 additions & 7 deletions app/src/main/res/layout/add_profile_activity.xml
Original file line number Diff line number Diff line change
Expand Up @@ -45,12 +45,12 @@
android:clickable="true"
android:contentDescription="@string/current_profile_picture_content_description"
android:focusable="true"
app:srcCompat="@drawable/ic_default_avatar"
app:add_shadow="true"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:shadow_radius="8" />
app:shadow_radius="8"
app:srcCompat="@drawable/ic_default_avatar" />

<ImageView
android:id="@+id/add_profile_activity_edit_user_image_view"
Expand All @@ -59,9 +59,9 @@
android:contentDescription="@string/edit_profile_picture_content_description"
android:paddingStart="12dp"
android:paddingTop="12dp"
app:srcCompat="@drawable/rounded_white_background_with_shadow"
app:layout_constraintBottom_toBottomOf="@+id/add_profile_activity_user_image_view"
app:layout_constraintEnd_toEndOf="@+id/add_profile_activity_user_image_view" />
app:layout_constraintEnd_toEndOf="@+id/add_profile_activity_user_image_view"
app:srcCompat="@drawable/rounded_white_background_with_shadow" />

<TextView
android:id="@+id/add_profile_activity_required_heading_text_view"
Expand All @@ -70,7 +70,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="32dp"
android:contentDescription="@string/required_fields_content_description"
android:text="@string/add_profile_required"
android:text="@{viewModel.requiredTextWithStar}"
android:textColor="@color/oppia_primary_text"
android:textSize="12sp"
app:layout_constraintEnd_toEndOf="parent"
Expand Down Expand Up @@ -116,9 +116,9 @@
android:layout_height="48dp"
android:contentDescription="@string/add_profile_info_content_description"
android:padding="12dp"
app:srcCompat="@drawable/ic_info_icon"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@+id/add_profile_activity_pin_check_box" />
app:layout_constraintTop_toTopOf="@+id/add_profile_activity_pin_check_box"
app:srcCompat="@drawable/ic_info_icon" />

<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/add_profile_activity_pin_constraint_layout"
Expand Down
2 changes: 1 addition & 1 deletion app/src/main/res/values-ar/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -298,7 +298,7 @@
<string name="profile_reset_pin_error_user_pin_length">رقم التعريف الشخصي يجب أن يتكون من 3 أرقام.</string>
<string name="profile_reset_pin_error_admin_pin_length">رقم التعريف الشخصي يجب أن يتكون من 5 أرقام.</string>
<string name="add_profile_create_a_3_digit_pin">إنشاء رقم تعريف شخصي مكون من 3 أرقام</string>
<string name="add_profile_required">*مطلوب</string>
<string name="add_profile_required">مطلوب</string>
<string name="back_button">زر العودة</string>
<string name="next">التالي</string>
<string name="administrator_controls_general_label">عام</string>
Expand Down
2 changes: 1 addition & 1 deletion app/src/main/res/values-pt-rBR/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -282,7 +282,7 @@
<string name="profile_reset_pin_error_user_pin_length">Seu PIN deve ter 3 dígitos.</string>
<string name="profile_reset_pin_error_admin_pin_length">Seu PIN deve ter 5 dígitos.</string>
<string name="add_profile_create_a_3_digit_pin">Criar um PIN de 3 Dígitos</string>
<string name="add_profile_required">*Requerido</string>
<string name="add_profile_required">Requerido</string>
<string name="back_button">Botão de Voltar</string>
<string name="next">Próximo</string>
<string name="administrator_controls_general_label">Geral</string>
Expand Down
2 changes: 1 addition & 1 deletion app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -332,7 +332,7 @@
<string name="profile_reset_pin_error_user_pin_length">Your PIN should be 3 digits long.</string>
<string name="profile_reset_pin_error_admin_pin_length">Your PIN should be 5 digits long.</string>
<string name="add_profile_create_a_3_digit_pin">Create a 3-Digit PIN</string>
<string name="add_profile_required">*Required</string>
<string name="add_profile_required">Required</string>
<string name="back_button">Back Button</string>
<string name="next">Next</string>
<!-- AdministratorControlsFragment -->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,15 @@ class AddProfileActivityTest {
assertThat(label).isEqualTo(context.getString(R.string.add_profile_activity_label))
}

@Test
fun testAddProfileActivity_hasRequiredTextPrefixedWithStar() {
launch(AddProfileActivity::class.java).use {
onView(allOf(withId(R.id.add_profile_activity_required_heading_text_view))).check(
matches(withText("*" + context.getString(R.string.add_profile_required)))
)
}
}

@Test
fun testAddProfileActivity_inputName_opensProfileChooserActivity() {
launch(AddProfileActivity::class.java).use {
Expand Down

0 comments on commit a285c0b

Please sign in to comment.