From 190135d36cd4d86906d38e1bf8c06a0613f81c04 Mon Sep 17 00:00:00 2001 From: Rohit Verma <101377978+rohit9625@users.noreply.github.com> Date: Wed, 28 Aug 2024 11:59:16 +0530 Subject: [PATCH] Fix failing tests for updateDepictsProperty method (#5795) * tests: fix failing testUpdateDepictsProperty * replace deprecated circular progress bar with material progress bar * refactor: update SettingsActivity to not use custom appCompatDeletegate It is required because that delegate is automatically handled in new libraries. --- app/build.gradle | 2 +- .../achievements/AchievementsFragment.java | 11 +-- .../nrw/commons/quiz/QuizResultActivity.java | 8 +- .../commons/settings/SettingsActivity.java | 10 +- .../nrw/commons/wikidata/WikiBaseClient.kt | 4 +- .../main/res/layout/activity_quiz_result.xml | 45 ++++++--- .../main/res/layout/fragment_achievements.xml | 96 +++++++++---------- .../wikidata/WikidataEditServiceTest.kt | 15 ++- 8 files changed, 107 insertions(+), 84 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 44834951b..c8124e42b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -47,7 +47,7 @@ dependencies { implementation 'com.jakewharton.timber:timber:4.7.1' implementation 'com.github.deano2390:MaterialShowcaseView:1.2.0' - implementation 'com.dinuscxj:circleprogressbar:1.1.1' + implementation "com.google.android.material:material:1.9.0" implementation 'com.karumi:dexter:5.0.0' implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0' diff --git a/app/src/main/java/fr/free/nrw/commons/profile/achievements/AchievementsFragment.java b/app/src/main/java/fr/free/nrw/commons/profile/achievements/AchievementsFragment.java index 96a1cb9f9..2b6022fab 100644 --- a/app/src/main/java/fr/free/nrw/commons/profile/achievements/AchievementsFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/profile/achievements/AchievementsFragment.java @@ -306,6 +306,7 @@ public class AchievementsFragment extends CommonsDaggerSupportFragment { if (uploadCount==0){ setZeroAchievements(); }else { + binding.imagesUploadedProgressbar.setVisibility(View.VISIBLE); binding.imagesUploadedProgressbar.setProgress (100*uploadCount/levelInfo.getMaxUploadCount()); @@ -342,8 +343,8 @@ public class AchievementsFragment extends CommonsDaggerSupportFragment { private void setImageRevertPercentage(int notRevertPercentage){ binding.imageRevertsProgressbar.setVisibility(View.VISIBLE); binding.imageRevertsProgressbar.setProgress(notRevertPercentage); - String revertPercentage = Integer.toString(notRevertPercentage); - binding.imageRevertsProgressbar.setProgressTextFormatPattern(revertPercentage + "%%"); + final String revertPercentage = Integer.toString(notRevertPercentage); + binding.tvRevertedImages.setText(revertPercentage + "%"); binding.imagesRevertLimitText.setText(getResources().getString(R.string.achievements_revert_limit_message)+ levelInfo.getMinNonRevertPercentage() + "%"); } @@ -357,10 +358,8 @@ public class AchievementsFragment extends CommonsDaggerSupportFragment { binding.thanksReceived.setText(String.valueOf(achievements.getThanksReceived())); binding.imagesUsedByWikiProgressBar.setProgress (100 * achievements.getUniqueUsedImages() / levelInfo.getMaxUniqueImages()); - if(binding.tvWikiPb != null) { - binding.tvWikiPb.setText - (achievements.getUniqueUsedImages() + "/" + levelInfo.getMaxUniqueImages()); - } + binding.tvWikiPb.setText(achievements.getUniqueUsedImages() + "/" + + levelInfo.getMaxUniqueImages()); binding.imageFeatured.setText(String.valueOf(achievements.getFeaturedImages())); binding.qualityImages.setText(String.valueOf(achievements.getQualityImages())); String levelUpInfoString = getString(R.string.level).toUpperCase(); diff --git a/app/src/main/java/fr/free/nrw/commons/quiz/QuizResultActivity.java b/app/src/main/java/fr/free/nrw/commons/quiz/QuizResultActivity.java index 0b267a0fe..ec6d1070d 100644 --- a/app/src/main/java/fr/free/nrw/commons/quiz/QuizResultActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/quiz/QuizResultActivity.java @@ -65,10 +65,10 @@ public class QuizResultActivity extends AppCompatActivity { * @param score */ public void setScore(int score) { - int per = score * MULTIPLIER_TO_GET_PERCENTAGE; - binding.resultProgressBar.setProgress(per); - binding.resultProgressBar.setProgressTextFormatPattern(score +" / " + NUMBER_OF_QUESTIONS); - String message = getResources().getString(R.string.congratulatory_message_quiz,per + "%"); + final int scorePercent = score * MULTIPLIER_TO_GET_PERCENTAGE; + binding.resultProgressBar.setProgress(scorePercent); + binding.tvResultProgress.setText(score +" / " + NUMBER_OF_QUESTIONS); + final String message = getResources().getString(R.string.congratulatory_message_quiz,scorePercent + "%"); binding.congratulatoryMessage.setText(message); } diff --git a/app/src/main/java/fr/free/nrw/commons/settings/SettingsActivity.java b/app/src/main/java/fr/free/nrw/commons/settings/SettingsActivity.java index fd231597b..ff5024b32 100644 --- a/app/src/main/java/fr/free/nrw/commons/settings/SettingsActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/settings/SettingsActivity.java @@ -15,7 +15,7 @@ import fr.free.nrw.commons.theme.BaseActivity; public class SettingsActivity extends BaseActivity { private ActivitySettingsBinding binding; - private AppCompatDelegate settingsDelegate; +// private AppCompatDelegate settingsDelegate; /** * to be called when the activity starts * @param savedInstanceState the previously saved state @@ -39,10 +39,10 @@ public class SettingsActivity extends BaseActivity { @Override protected void onPostCreate(Bundle savedInstanceState) { super.onPostCreate(savedInstanceState); - if (settingsDelegate == null) { - settingsDelegate = AppCompatDelegate.create(this, null); - } - settingsDelegate.onPostCreate(savedInstanceState); +// if (settingsDelegate == null) { +// settingsDelegate = AppCompatDelegate.create(this, null); +// } +// settingsDelegate.onPostCreate(savedInstanceState); } @Override diff --git a/app/src/main/java/fr/free/nrw/commons/wikidata/WikiBaseClient.kt b/app/src/main/java/fr/free/nrw/commons/wikidata/WikiBaseClient.kt index 70a976164..d34a564a2 100644 --- a/app/src/main/java/fr/free/nrw/commons/wikidata/WikiBaseClient.kt +++ b/app/src/main/java/fr/free/nrw/commons/wikidata/WikiBaseClient.kt @@ -47,9 +47,9 @@ class WikiBaseClient @Inject constructor( } } - fun postDeleteClaims(entityId: String, data: String): Observable { + fun postDeleteClaims(entityId: String, data: String?): Observable { return csrfToken().switchMap { editToken -> - wikiBaseInterface.postDeleteClaims(editToken, entityId, data) + wikiBaseInterface.postDeleteClaims(editToken, entityId, data!!) .map { response: MwPostResponse -> response.successVal == 1 } } } diff --git a/app/src/main/res/layout/activity_quiz_result.xml b/app/src/main/res/layout/activity_quiz_result.xml index a91105191..65db12902 100644 --- a/app/src/main/res/layout/activity_quiz_result.xml +++ b/app/src/main/res/layout/activity_quiz_result.xml @@ -41,20 +41,37 @@ android:textSize="32sp" android:layout_marginTop="@dimen/activity_margin_vertical" /> - + + + + + + + android:layout_marginEnd="32dp"> - + app:showAnimationBehavior="outward" + app:indicatorColor="@color/primaryColor" + app:indicatorSize="32dp" + app:trackThickness="@dimen/progressbar_stroke" + app:trackColor="#B7B6B6" + android:visibility="gone"/> - + android:layout_marginEnd="32dp"> + + + + + android:layout_marginEnd="32dp"> - + app:showAnimationBehavior="outward" + app:indicatorColor="@color/primaryColor" + app:indicatorSize="32dp" + app:trackThickness="@dimen/progressbar_stroke" + app:trackColor="#B7B6B6" + android:visibility="gone"/>