From b6aa1de63dd0534a820319994cf86703a2ff6e46 Mon Sep 17 00:00:00 2001 From: jainv4156 Date: Wed, 26 Feb 2025 16:58:42 +0530 Subject: [PATCH 01/11] Refactor ProfileId provision process to multiple activity --- .../app/classroom/ClassroomListActivity.kt | 1 - .../oppia/android/app/home/HomeActivity.kt | 1 - .../app/home/RouteToExplorationListener.kt | 2 - .../recentlyplayed/RecentlyPlayedActivity.kt | 4 -- .../RecentlyPlayedActivityPresenter.kt | 3 +- .../recentlyplayed/RecentlyPlayedFragment.kt | 11 +--- .../RecentlyPlayedFragmentPresenter.kt | 7 +-- .../player/exploration/ExplorationActivity.kt | 6 +- .../ExplorationActivityPresenter.kt | 1 - .../player/exploration/ExplorationFragment.kt | 3 - .../ExplorationFragmentPresenter.kt | 11 ++-- .../android/app/player/state/StateFragment.kt | 2 - .../StateFragmentTestActivityPresenter.kt | 5 +- .../ProfileProgressActivity.kt | 1 - .../app/resumelesson/ResumeLessonActivity.kt | 8 +-- .../ResumeLessonActivityPresenter.kt | 1 - .../app/resumelesson/ResumeLessonFragment.kt | 7 ++- .../ResumeLessonFragmentPresenter.kt | 1 - .../oppia/android/app/story/StoryActivity.kt | 4 -- .../app/story/StoryFragmentPresenter.kt | 2 - .../android/app/survey/SurveyActivity.kt | 5 +- .../SurveyWelcomeDialogFragmentPresenter.kt | 2 +- .../app/testing/ExplorationTestActivity.kt | 2 - .../ExplorationTestActivityPresenter.kt | 2 - .../testing/NavigationDrawerTestActivity.kt | 1 - .../android/app/testing/TopicTestActivity.kt | 2 - .../app/testing/TopicTestActivityForStory.kt | 4 -- .../app/topic/RouteToResumeLessonListener.kt | 2 - .../oppia/android/app/topic/TopicActivity.kt | 4 -- .../lessons/TopicLessonsFragmentPresenter.kt | 2 - .../QuestionPlayerActivityPresenter.kt | 4 +- .../questionplayer/QuestionPlayerFragment.kt | 11 +--- .../resumelesson/ResumeLessonActivityTest.kt | 1 - .../resumelesson/ResumeLessonFragmentTest.kt | 2 - .../android/app/survey/SurveyActivityTest.kt | 4 +- .../android/app/survey/SurveyFragmentTest.kt | 1 - config/kitkat_main_dex_class_list.txt | 50 +++++++++++++++ model/src/main/proto/arguments.proto | 62 +++++++------------ 38 files changed, 107 insertions(+), 135 deletions(-) create mode 100644 config/kitkat_main_dex_class_list.txt diff --git a/app/src/main/java/org/oppia/android/app/classroom/ClassroomListActivity.kt b/app/src/main/java/org/oppia/android/app/classroom/ClassroomListActivity.kt index 05b47050354..92b871552c1 100644 --- a/app/src/main/java/org/oppia/android/app/classroom/ClassroomListActivity.kt +++ b/app/src/main/java/org/oppia/android/app/classroom/ClassroomListActivity.kt @@ -92,7 +92,6 @@ class ClassroomListActivity : val recentlyPlayedActivityParams = RecentlyPlayedActivityParams .newBuilder() - .setProfileId(profileId) .setActivityTitle(recentlyPlayedActivityTitle).build() activityRouter.routeToScreen( diff --git a/app/src/main/java/org/oppia/android/app/home/HomeActivity.kt b/app/src/main/java/org/oppia/android/app/home/HomeActivity.kt index 83eabe18b73..edb6bb7792f 100644 --- a/app/src/main/java/org/oppia/android/app/home/HomeActivity.kt +++ b/app/src/main/java/org/oppia/android/app/home/HomeActivity.kt @@ -96,7 +96,6 @@ class HomeActivity : val recentlyPlayedActivityParams = RecentlyPlayedActivityParams .newBuilder() - .setProfileId(ProfileId.newBuilder().setInternalId(internalProfileId).build()) .setActivityTitle(recentlyPlayedActivityTitle).build() activityRouter.routeToScreen( diff --git a/app/src/main/java/org/oppia/android/app/home/RouteToExplorationListener.kt b/app/src/main/java/org/oppia/android/app/home/RouteToExplorationListener.kt index 9523938373d..d80a6bb351f 100755 --- a/app/src/main/java/org/oppia/android/app/home/RouteToExplorationListener.kt +++ b/app/src/main/java/org/oppia/android/app/home/RouteToExplorationListener.kt @@ -1,12 +1,10 @@ package org.oppia.android.app.home import org.oppia.android.app.model.ExplorationActivityParams -import org.oppia.android.app.model.ProfileId /** Listener for when an activity should route to a exploration. */ interface RouteToExplorationListener { fun routeToExploration( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, diff --git a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivity.kt b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivity.kt index 3450d510fbe..9f16127175b 100644 --- a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivity.kt +++ b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivity.kt @@ -61,7 +61,6 @@ class RecentlyPlayedActivity : } override fun routeToExploration( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -72,7 +71,6 @@ class RecentlyPlayedActivity : startActivity( ExplorationActivity.createExplorationActivityIntent( this, - profileId, classroomId, topicId, storyId, @@ -84,7 +82,6 @@ class RecentlyPlayedActivity : } override fun routeToResumeLesson( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -95,7 +92,6 @@ class RecentlyPlayedActivity : startActivity( ResumeLessonActivity.createResumeLessonActivityIntent( this, - profileId, classroomId, topicId, storyId, diff --git a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivityPresenter.kt index 9eef029e29b..b8ab678b21d 100644 --- a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivityPresenter.kt @@ -9,6 +9,7 @@ import org.oppia.android.app.model.RecentlyPlayedActivityTitle import org.oppia.android.app.translation.AppLanguageResourceHandler import org.oppia.android.databinding.RecentlyPlayedActivityBinding import javax.inject.Inject +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId /** The presenter for [RecentlyPlayedActivity]. */ @ActivityScope @@ -32,7 +33,7 @@ class RecentlyPlayedActivityPresenter @Inject constructor( if (getRecentlyPlayedFragment() == null) { activity.supportFragmentManager.beginTransaction().add( R.id.recently_played_fragment_placeholder, - RecentlyPlayedFragment.newInstance(recentlyPlayedActivityParams.profileId.internalId), + RecentlyPlayedFragment.newInstance(activity.intent.extractCurrentUserProfileId()), RecentlyPlayedFragment.TAG_RECENTLY_PLAYED_FRAGMENT ).commitNow() } diff --git a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragment.kt b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragment.kt index f599f9150e5..ad5494389ad 100644 --- a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragment.kt +++ b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragment.kt @@ -19,8 +19,7 @@ class RecentlyPlayedFragment : InjectableFragment(), PromotedStoryClickListener const val TAG_RECENTLY_PLAYED_FRAGMENT = "TAG_RECENTLY_PLAYED_FRAGMENT" /** Returns a new [RecentlyPlayedFragment] to display recently played stories. */ - fun newInstance(internalProfileId: Int): RecentlyPlayedFragment { - val profileId = ProfileId.newBuilder().setInternalId(internalProfileId).build() + fun newInstance(profileId: ProfileId): RecentlyPlayedFragment { return RecentlyPlayedFragment().apply { arguments = Bundle().apply { decorateWithUserProfileId(profileId) @@ -42,13 +41,7 @@ class RecentlyPlayedFragment : InjectableFragment(), PromotedStoryClickListener container: ViewGroup?, savedInstanceState: Bundle? ): View? { - val arguments = - checkNotNull(arguments) { "Expected arguments to be passed to RecentlyPlayedFragment" } - val profileId = - arguments.extractCurrentUserProfileId() - - val internalProfileId = profileId.internalId - return recentlyPlayedFragmentPresenter.handleCreateView(inflater, container, internalProfileId) + return recentlyPlayedFragmentPresenter.handleCreateView(inflater, container) } override fun promotedStoryClicked(promotedStory: PromotedStory) { diff --git a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt index 98b7617e0eb..c4a70497ee4 100755 --- a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt @@ -27,6 +27,7 @@ import org.oppia.android.domain.oppialogger.OppiaLogger import org.oppia.android.util.data.AsyncResult import org.oppia.android.util.data.DataProviders.Companion.toLiveData import javax.inject.Inject +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId /** The presenter for [RecentlyPlayedFragment]. */ @FragmentScope @@ -49,9 +50,9 @@ class RecentlyPlayedFragmentPresenter @Inject constructor( fun handleCreateView( inflater: LayoutInflater, container: ViewGroup?, - internalProfileId: Int ): View? { - this.profileId = ProfileId.newBuilder().setInternalId(internalProfileId).build() + + this.profileId = activity.intent.extractCurrentUserProfileId() val recentlyPlayedViewModel = recentlyPlayedViewModelFactory.create( fragment as PromotedStoryClickListener, this.profileId @@ -107,7 +108,6 @@ class RecentlyPlayedFragmentPresenter @Inject constructor( if (it is AsyncResult.Success) { explorationCheckpointLiveData.removeObserver(this) routeToResumeLessonListener.routeToResumeLesson( - profileId, promotedStory.classroomId, promotedStory.topicId, promotedStory.storyId, @@ -195,7 +195,6 @@ class RecentlyPlayedFragmentPresenter @Inject constructor( is AsyncResult.Success -> { oppiaLogger.d("RecentlyPlayedFragment", "Successfully loaded exploration") routeToExplorationListener.routeToExploration( - profileId, classroomId, topicId, storyId, diff --git a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivity.kt b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivity.kt index d9519c01e2a..52c834a7601 100755 --- a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivity.kt +++ b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivity.kt @@ -28,6 +28,7 @@ import org.oppia.android.util.extensions.getProtoExtra import org.oppia.android.util.extensions.putProtoExtra import org.oppia.android.util.logging.CurrentAppScreenNameIntentDecorator.decorateWithScreenName import javax.inject.Inject +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId const val TAG_HINTS_AND_SOLUTION_DIALOG = "HINTS_AND_SOLUTION_DIALOG" @@ -59,9 +60,10 @@ class ExplorationActivity : (activityComponent as ActivityComponentImpl).inject(this) val params = intent.extractParams() + val profileId: ProfileId = intent.extractCurrentUserProfileId() explorationActivityPresenter.handleOnCreate( this, - params.profileId, + profileId, params.classroomId, params.topicId, params.storyId, @@ -89,7 +91,6 @@ class ExplorationActivity : */ fun createExplorationActivityIntent( context: Context, - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -98,7 +99,6 @@ class ExplorationActivity : isCheckpointingEnabled: Boolean ): Intent { val params = ExplorationActivityParams.newBuilder().apply { - this.profileId = profileId this.classroomId = classroomId this.topicId = topicId this.storyId = storyId diff --git a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivityPresenter.kt index 42fe0420c7c..c3ceed20b05 100644 --- a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivityPresenter.kt @@ -188,7 +188,6 @@ class ExplorationActivityPresenter @Inject constructor( activity.supportFragmentManager.beginTransaction().add( R.id.exploration_fragment_placeholder, ExplorationFragment.newInstance( - profileId, classroomId, topicId, storyId, diff --git a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragment.kt b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragment.kt index 6d4cb2a6330..b790a3f5cc1 100755 --- a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragment.kt +++ b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragment.kt @@ -8,7 +8,6 @@ import android.view.ViewGroup import org.oppia.android.app.fragment.FragmentComponentImpl import org.oppia.android.app.fragment.InjectableFragment import org.oppia.android.app.model.ExplorationFragmentArguments -import org.oppia.android.app.model.ProfileId import org.oppia.android.app.model.ReadingTextSize import org.oppia.android.util.extensions.putProto import javax.inject.Inject @@ -21,7 +20,6 @@ class ExplorationFragment : InjectableFragment() { companion object { /** Returns a new [ExplorationFragment] with the corresponding fragment parameters. */ fun newInstance( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -29,7 +27,6 @@ class ExplorationFragment : InjectableFragment() { readingTextSize: ReadingTextSize ): ExplorationFragment { val args = ExplorationFragmentArguments.newBuilder().apply { - this.profileId = profileId this.classroomId = classroomId this.topicId = topicId this.storyId = storyId diff --git a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt index 207f5bf9e7f..b4abd65f744 100755 --- a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt @@ -5,6 +5,7 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.ImageButton +import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.widget.Toolbar import androidx.core.view.forEach import androidx.fragment.app.Fragment @@ -29,10 +30,12 @@ import org.oppia.android.util.data.DataProviders.Companion.toLiveData import org.oppia.android.util.extensions.getProto import org.oppia.android.util.extensions.putProto import javax.inject.Inject +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId /** The presenter for [ExplorationFragment]. */ @FragmentScope class ExplorationFragmentPresenter @Inject constructor( + private val activity: AppCompatActivity, private val fragment: Fragment, private val oppiaLogger: OppiaLogger, private val analyticsController: AnalyticsController, @@ -41,7 +44,6 @@ class ExplorationFragmentPresenter @Inject constructor( private val resourceHandler: AppLanguageResourceHandler ) { - private var internalProfileId: Int = -1 /** Handles the [Fragment.onAttach] portion of [ExplorationFragment]'s lifecycle. */ fun handleAttach(context: Context) { @@ -53,10 +55,9 @@ class ExplorationFragmentPresenter @Inject constructor( val args = retrieveArguments() val binding = ExplorationFragmentBinding.inflate(inflater, container, /* attachToRoot= */ false).root - internalProfileId = args.profileId.internalId val stateFragment = StateFragment.newInstance( - args.profileId.internalId, args.topicId, args.storyId, args.explorationId + args.topicId, args.storyId, args.explorationId ) logPracticeFragmentEvent(args.classroomId, args.topicId, args.storyId, args.explorationId) if (getStateFragment() == null) { @@ -70,7 +71,7 @@ class ExplorationFragmentPresenter @Inject constructor( /** Handles the [Fragment.onViewCreated] portion of [ExplorationFragment]'s lifecycle. */ fun handleViewCreated() { - val profileDataProvider = profileManagementController.getProfile(retrieveArguments().profileId) + val profileDataProvider = profileManagementController.getProfile(activity.intent.extractCurrentUserProfileId()) profileDataProvider.toLiveData().observe( fragment ) { result -> @@ -161,7 +162,7 @@ class ExplorationFragmentPresenter @Inject constructor( oppiaLogger.createOpenExplorationActivityContext( classroomId, topicId, storyId, explorationId ), - ProfileId.newBuilder().apply { internalId = internalProfileId }.build() + activity.intent.extractCurrentUserProfileId() ) } diff --git a/app/src/main/java/org/oppia/android/app/player/state/StateFragment.kt b/app/src/main/java/org/oppia/android/app/player/state/StateFragment.kt index df5e8a07dde..458593cca20 100755 --- a/app/src/main/java/org/oppia/android/app/player/state/StateFragment.kt +++ b/app/src/main/java/org/oppia/android/app/player/state/StateFragment.kt @@ -55,14 +55,12 @@ class StateFragment : * @return a new instance of [StateFragment]. */ fun newInstance( - internalProfileId: Int, topicId: String, storyId: String, explorationId: String ): StateFragment { val args = StateFragmentArguments.newBuilder().apply { - this.internalProfileId = internalProfileId this.topicId = topicId this.storyId = storyId this.explorationId = explorationId diff --git a/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt index 6beed9aaf21..72dccc2ff67 100644 --- a/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt @@ -122,7 +122,7 @@ class StateFragmentTestActivityPresenter @Inject constructor( oppiaLogger.e(TEST_ACTIVITY_TAG, "Failed to load exploration", result.error) is AsyncResult.Success -> { oppiaLogger.d(TEST_ACTIVITY_TAG, "Successfully loaded exploration") - initializeExploration(profileId, topicId, storyId, explorationId) + initializeExploration( topicId, storyId, explorationId) } } } @@ -134,14 +134,13 @@ class StateFragmentTestActivityPresenter @Inject constructor( * session is fully started). */ private fun initializeExploration( - profileId: Int, topicId: String, storyId: String, explorationId: String ) { stateFragmentTestViewModel.hasExplorationStarted.set(true) - val stateFragment = StateFragment.newInstance(profileId, topicId, storyId, explorationId) + val stateFragment = StateFragment.newInstance( topicId, storyId, explorationId) activity.supportFragmentManager.beginTransaction().add( R.id.state_fragment_placeholder, stateFragment diff --git a/app/src/main/java/org/oppia/android/app/profileprogress/ProfileProgressActivity.kt b/app/src/main/java/org/oppia/android/app/profileprogress/ProfileProgressActivity.kt index b0066ad36f5..184df669977 100644 --- a/app/src/main/java/org/oppia/android/app/profileprogress/ProfileProgressActivity.kt +++ b/app/src/main/java/org/oppia/android/app/profileprogress/ProfileProgressActivity.kt @@ -61,7 +61,6 @@ class ProfileProgressActivity : val recentlyPlayedActivityParams = RecentlyPlayedActivityParams .newBuilder() - .setProfileId(ProfileId.newBuilder().setInternalId(internalProfileId).build()) .setActivityTitle(recentlyPlayedActivityTitle) .build() diff --git a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonActivity.kt b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonActivity.kt index 4e268b486c2..79c86851381 100644 --- a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonActivity.kt +++ b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonActivity.kt @@ -19,6 +19,7 @@ import org.oppia.android.util.extensions.getProtoExtra import org.oppia.android.util.extensions.putProtoExtra import org.oppia.android.util.logging.CurrentAppScreenNameIntentDecorator.decorateWithScreenName import javax.inject.Inject +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId /** Activity that allows the user to resume a saved exploration. */ class ResumeLessonActivity : @@ -33,8 +34,9 @@ class ResumeLessonActivity : (activityComponent as ActivityComponentImpl).inject(this) val params = intent.getProtoExtra(PARAMS_KEY, ResumeLessonActivityParams.getDefaultInstance()) + val profileId :ProfileId = intent.extractCurrentUserProfileId() resumeLessonActivityPresenter.handleOnCreate( - params.profileId, + profileId, params.classroomId, params.topicId, params.storyId, @@ -63,7 +65,6 @@ class ResumeLessonActivity : */ fun createResumeLessonActivityIntent( context: Context, - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -72,7 +73,6 @@ class ResumeLessonActivity : checkpoint: ExplorationCheckpoint ): Intent { val params = ResumeLessonActivityParams.newBuilder().apply { - this.profileId = profileId this.classroomId = classroomId this.topicId = topicId this.storyId = storyId @@ -96,7 +96,6 @@ class ResumeLessonActivity : } override fun routeToExploration( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -108,7 +107,6 @@ class ResumeLessonActivity : startActivity( ExplorationActivity.createExplorationActivityIntent( this, - profileId, classroomId, topicId, storyId, diff --git a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonActivityPresenter.kt index b09e77fdfce..8054b68b131 100644 --- a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonActivityPresenter.kt @@ -84,7 +84,6 @@ class ResumeLessonActivityPresenter @Inject constructor( .remove(getResumeLessonFragment() as Fragment).commitNow() val resumeLessonFragment = ResumeLessonFragment.newInstance( - profileId, classroomId, topicId, storyId, diff --git a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragment.kt b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragment.kt index eb99c0cacf9..67093b8900b 100644 --- a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragment.kt +++ b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragment.kt @@ -15,6 +15,7 @@ import org.oppia.android.app.model.ResumeLessonFragmentArguments import org.oppia.android.util.extensions.getProto import org.oppia.android.util.extensions.putProto import javax.inject.Inject +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId /** Fragment that allows the user to resume a saved exploration. */ class ResumeLessonFragment : InjectableFragment() { @@ -25,7 +26,6 @@ class ResumeLessonFragment : InjectableFragment() { /** Creates new instance of [ResumeLessonFragment] for the provided parameters. */ fun newInstance( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -35,7 +35,6 @@ class ResumeLessonFragment : InjectableFragment() { readingTextSize: ReadingTextSize ): ResumeLessonFragment { val args = ResumeLessonFragmentArguments.newBuilder().apply { - this.profileId = profileId this.classroomId = classroomId this.topicId = topicId this.storyId = storyId @@ -72,10 +71,12 @@ class ResumeLessonFragment : InjectableFragment() { RESUME_LESSON_FRAGMENT_ARGUMENTS_KEY, ResumeLessonFragmentArguments.getDefaultInstance() ) + val profileId :ProfileId = activity?.intent?.extractCurrentUserProfileId() ?: ProfileId.getDefaultInstance() + return resumeLessonFragmentPresenter.handleOnCreate( inflater, container, - args.profileId, + profileId, args.classroomId, args.topicId, args.storyId, diff --git a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentPresenter.kt index 541cfa104ad..a3051672e9a 100644 --- a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentPresenter.kt @@ -213,7 +213,6 @@ class ResumeLessonFragmentPresenter @Inject constructor( is AsyncResult.Success -> { oppiaLogger.d("ResumeLessonFragment", "Successfully loaded exploration") routeToExplorationListener.routeToExploration( - profileId, classroomId, topicId, storyId, diff --git a/app/src/main/java/org/oppia/android/app/story/StoryActivity.kt b/app/src/main/java/org/oppia/android/app/story/StoryActivity.kt index 43e56fe01c0..cc98c22d65c 100644 --- a/app/src/main/java/org/oppia/android/app/story/StoryActivity.kt +++ b/app/src/main/java/org/oppia/android/app/story/StoryActivity.kt @@ -54,7 +54,6 @@ class StoryActivity : } override fun routeToExploration( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -65,7 +64,6 @@ class StoryActivity : startActivity( ExplorationActivity.createExplorationActivityIntent( this, - profileId, classroomId, topicId, storyId, @@ -77,7 +75,6 @@ class StoryActivity : } override fun routeToResumeLesson( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -88,7 +85,6 @@ class StoryActivity : startActivity( ResumeLessonActivity.createResumeLessonActivityIntent( this, - profileId, classroomId, topicId, storyId, diff --git a/app/src/main/java/org/oppia/android/app/story/StoryFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/story/StoryFragmentPresenter.kt index 1d9ff2372c8..ebc663e659b 100644 --- a/app/src/main/java/org/oppia/android/app/story/StoryFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/story/StoryFragmentPresenter.kt @@ -128,7 +128,6 @@ class StoryFragmentPresenter @Inject constructor( ) { if (canExplorationBeResumed) { routeToResumeLessonListener.routeToResumeLesson( - profileId, classroomId, topicId, storyId, @@ -305,7 +304,6 @@ class StoryFragmentPresenter @Inject constructor( is AsyncResult.Success -> { oppiaLogger.d("Story Fragment", "Successfully loaded exploration: $explorationId") routeToExplorationListener.routeToExploration( - profileId, classroomId, topicId, storyId, diff --git a/app/src/main/java/org/oppia/android/app/survey/SurveyActivity.kt b/app/src/main/java/org/oppia/android/app/survey/SurveyActivity.kt index 12d5b7220ee..b80dc9bcad5 100644 --- a/app/src/main/java/org/oppia/android/app/survey/SurveyActivity.kt +++ b/app/src/main/java/org/oppia/android/app/survey/SurveyActivity.kt @@ -12,6 +12,7 @@ import org.oppia.android.util.extensions.getProtoExtra import org.oppia.android.util.extensions.putProtoExtra import org.oppia.android.util.logging.CurrentAppScreenNameIntentDecorator.decorateWithScreenName import javax.inject.Inject +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId /** The activity for showing a survey. */ class SurveyActivity : InjectableAutoLocalizedAppCompatActivity() { @@ -25,7 +26,7 @@ class SurveyActivity : InjectableAutoLocalizedAppCompatActivity() { (activityComponent as ActivityComponentImpl).inject(this) val params = intent.extractParams() - this.profileId = params.profileId ?: ProfileId.newBuilder().setInternalId(-1).build() + this.profileId = intent.extractCurrentUserProfileId() surveyActivityPresenter.handleOnCreate( profileId, @@ -48,12 +49,10 @@ class SurveyActivity : InjectableAutoLocalizedAppCompatActivity() { */ fun createSurveyActivityIntent( context: Context, - profileId: ProfileId, topicId: String, explorationId: String ): Intent { val params = SurveyActivityParams.newBuilder().apply { - this.profileId = profileId this.topicId = topicId this.explorationId = explorationId }.build() diff --git a/app/src/main/java/org/oppia/android/app/survey/SurveyWelcomeDialogFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/survey/SurveyWelcomeDialogFragmentPresenter.kt index 0255528e2fe..30aa3ba1c5a 100644 --- a/app/src/main/java/org/oppia/android/app/survey/SurveyWelcomeDialogFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/survey/SurveyWelcomeDialogFragmentPresenter.kt @@ -86,7 +86,7 @@ class SurveyWelcomeDialogFragmentPresenter @Inject constructor( is AsyncResult.Success -> { oppiaLogger.d("SurveyWelcomeDialogFragment", "Successfully started a survey session") val intent = - SurveyActivity.createSurveyActivityIntent(activity, profileId, topicId, explorationId) + SurveyActivity.createSurveyActivityIntent(activity, topicId, explorationId) fragment.startActivity(intent) activity.finish() val transaction = activity.supportFragmentManager.beginTransaction() diff --git a/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivity.kt b/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivity.kt index e16d9e451a6..19bde9b2b56 100644 --- a/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivity.kt +++ b/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivity.kt @@ -32,7 +32,6 @@ class ExplorationTestActivity : } override fun routeToExploration( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -43,7 +42,6 @@ class ExplorationTestActivity : startActivity( ExplorationActivity.createExplorationActivityIntent( this, - profileId, classroomId, topicId, storyId, diff --git a/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt index 196785a2dea..a1890437c02 100644 --- a/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt @@ -10,7 +10,6 @@ import org.oppia.android.app.fragment.FragmentComponentImpl import org.oppia.android.app.fragment.InjectableFragment import org.oppia.android.app.home.RouteToExplorationListener import org.oppia.android.app.model.ExplorationActivityParams -import org.oppia.android.app.model.ProfileId import org.oppia.android.app.utility.SplitScreenManager import org.oppia.android.domain.classroom.TEST_CLASSROOM_ID_0 import org.oppia.android.domain.exploration.ExplorationDataController @@ -69,7 +68,6 @@ class ExplorationTestActivityPresenter @Inject constructor( is AsyncResult.Success -> { oppiaLogger.d(TAG_EXPLORATION_TEST_ACTIVITY, "Successfully loaded exploration") routeToExplorationListener.routeToExploration( - ProfileId.newBuilder().apply { internalId = INTERNAL_PROFILE_ID }.build(), CLASSROOM_ID, TOPIC_ID, STORY_ID, diff --git a/app/src/main/java/org/oppia/android/app/testing/NavigationDrawerTestActivity.kt b/app/src/main/java/org/oppia/android/app/testing/NavigationDrawerTestActivity.kt index 7b4fb9d3fef..c93f47f449d 100644 --- a/app/src/main/java/org/oppia/android/app/testing/NavigationDrawerTestActivity.kt +++ b/app/src/main/java/org/oppia/android/app/testing/NavigationDrawerTestActivity.kt @@ -86,7 +86,6 @@ class NavigationDrawerTestActivity : val recentlyPlayedActivityParams = RecentlyPlayedActivityParams .newBuilder() - .setProfileId(ProfileId.newBuilder().setInternalId(internalProfileId).build()) .setActivityTitle(recentlyPlayedActivityTitle) .build() diff --git a/app/src/main/java/org/oppia/android/app/testing/TopicTestActivity.kt b/app/src/main/java/org/oppia/android/app/testing/TopicTestActivity.kt index 9c1102e40ab..be9a163d3f0 100644 --- a/app/src/main/java/org/oppia/android/app/testing/TopicTestActivity.kt +++ b/app/src/main/java/org/oppia/android/app/testing/TopicTestActivity.kt @@ -68,7 +68,6 @@ class TopicTestActivity : } override fun routeToExploration( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -79,7 +78,6 @@ class TopicTestActivity : startActivity( ExplorationActivity.createExplorationActivityIntent( this, - profileId, classroomId, topicId, storyId, diff --git a/app/src/main/java/org/oppia/android/app/testing/TopicTestActivityForStory.kt b/app/src/main/java/org/oppia/android/app/testing/TopicTestActivityForStory.kt index 0bb9e20c741..1f02e4c00ab 100644 --- a/app/src/main/java/org/oppia/android/app/testing/TopicTestActivityForStory.kt +++ b/app/src/main/java/org/oppia/android/app/testing/TopicTestActivityForStory.kt @@ -73,7 +73,6 @@ class TopicTestActivityForStory : } override fun routeToResumeLesson( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -84,7 +83,6 @@ class TopicTestActivityForStory : startActivity( ResumeLessonActivity.createResumeLessonActivityIntent( this, - profileId, classroomId, topicId, storyId, @@ -96,7 +94,6 @@ class TopicTestActivityForStory : } override fun routeToExploration( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -107,7 +104,6 @@ class TopicTestActivityForStory : startActivity( ExplorationActivity.createExplorationActivityIntent( this, - profileId, classroomId, topicId, storyId, diff --git a/app/src/main/java/org/oppia/android/app/topic/RouteToResumeLessonListener.kt b/app/src/main/java/org/oppia/android/app/topic/RouteToResumeLessonListener.kt index f33511e4591..648fc23c5eb 100644 --- a/app/src/main/java/org/oppia/android/app/topic/RouteToResumeLessonListener.kt +++ b/app/src/main/java/org/oppia/android/app/topic/RouteToResumeLessonListener.kt @@ -2,13 +2,11 @@ package org.oppia.android.app.topic import org.oppia.android.app.model.ExplorationActivityParams import org.oppia.android.app.model.ExplorationCheckpoint -import org.oppia.android.app.model.ProfileId /** Listener for when an activity should route to a [ResumeLessonActivity]. */ interface RouteToResumeLessonListener { /** Called selects an exploration that can be resumed. */ fun routeToResumeLesson( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, diff --git a/app/src/main/java/org/oppia/android/app/topic/TopicActivity.kt b/app/src/main/java/org/oppia/android/app/topic/TopicActivity.kt index 7da308689d1..ce7b6b913e8 100755 --- a/app/src/main/java/org/oppia/android/app/topic/TopicActivity.kt +++ b/app/src/main/java/org/oppia/android/app/topic/TopicActivity.kt @@ -106,7 +106,6 @@ class TopicActivity : } override fun routeToExploration( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -117,7 +116,6 @@ class TopicActivity : startActivity( ExplorationActivity.createExplorationActivityIntent( this, - profileId, classroomId, topicId, storyId, @@ -129,7 +127,6 @@ class TopicActivity : } override fun routeToResumeLesson( - profileId: ProfileId, classroomId: String, topicId: String, storyId: String, @@ -140,7 +137,6 @@ class TopicActivity : startActivity( ResumeLessonActivity.createResumeLessonActivityIntent( this, - profileId, classroomId, topicId, storyId, diff --git a/app/src/main/java/org/oppia/android/app/topic/lessons/TopicLessonsFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/topic/lessons/TopicLessonsFragmentPresenter.kt index 1d15dc67ea8..bf3ccbde786 100644 --- a/app/src/main/java/org/oppia/android/app/topic/lessons/TopicLessonsFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/topic/lessons/TopicLessonsFragmentPresenter.kt @@ -313,7 +313,6 @@ class TopicLessonsFragmentPresenter @Inject constructor( if (it is AsyncResult.Success) { explorationCheckpointLiveData.removeObserver(this) routeToResumeLessonListener.routeToResumeLesson( - profileId, classroomId, topicId, storyId, @@ -401,7 +400,6 @@ class TopicLessonsFragmentPresenter @Inject constructor( is AsyncResult.Success -> { oppiaLogger.d("TopicLessonsFragment", "Successfully loaded exploration") routeToExplorationListener.routeToExploration( - profileId, classroomId, topicId, storyId, diff --git a/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerActivityPresenter.kt index 345941e95e1..5b5927ac0b3 100644 --- a/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerActivityPresenter.kt @@ -75,7 +75,7 @@ class QuestionPlayerActivityPresenter @Inject constructor( startTrainingSessionWithCallback { activity.supportFragmentManager.beginTransaction().add( R.id.question_player_fragment_placeholder, - QuestionPlayerFragment.newInstance(profileId, readingTextSize), + QuestionPlayerFragment.newInstance( readingTextSize), TAG_QUESTION_PLAYER_FRAGMENT ).commitNow() } @@ -150,7 +150,7 @@ class QuestionPlayerActivityPresenter @Inject constructor( // Re-add the player fragment when the new session is ready. activity.supportFragmentManager.beginTransaction().add( R.id.question_player_fragment_placeholder, - QuestionPlayerFragment.newInstance(profileId, readingTextSize), + QuestionPlayerFragment.newInstance( readingTextSize), TAG_QUESTION_PLAYER_FRAGMENT ).commitNow() } diff --git a/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerFragment.kt b/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerFragment.kt index c825f53e5cf..1b7f57e3cd5 100644 --- a/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerFragment.kt +++ b/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerFragment.kt @@ -25,6 +25,7 @@ import org.oppia.android.app.player.state.listener.SubmitNavigationButtonListene import org.oppia.android.util.extensions.getProto import org.oppia.android.util.extensions.putProto import javax.inject.Inject +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId /** Fragment that contains all questions in Question Player. */ class QuestionPlayerFragment : @@ -53,17 +54,12 @@ class QuestionPlayerFragment : container: ViewGroup?, savedInstanceState: Bundle? ): View? { - val args = checkNotNull(arguments) { - "Expected arguments to be passed to QuestionPlayerFragment" - } val userAnswerState = savedInstanceState?.getProto( QUESTION_PLAYER_FRAGMENT_STATE_KEY, UserAnswerState.getDefaultInstance() ) ?: UserAnswerState.getDefaultInstance() - val arguments = - args.getProto(ARGUMENTS_KEY, QuestionPlayerFragmentArguments.getDefaultInstance()) - val profileId = arguments.profileId + val profileId :ProfileId = activity?.intent?.extractCurrentUserProfileId() ?: ProfileId.getDefaultInstance() return questionPlayerFragmentPresenter.handleCreateView( inflater, container, profileId, userAnswerState ) @@ -120,10 +116,9 @@ class QuestionPlayerFragment : * @param profileId the profile in which the question play session will be played * @return a new [QuestionPlayerFragment] to start a question play session */ - fun newInstance(profileId: ProfileId, readingTextSize: ReadingTextSize): + fun newInstance( readingTextSize: ReadingTextSize): QuestionPlayerFragment { val args = QuestionPlayerFragmentArguments.newBuilder().apply { - this.profileId = profileId this.readingTextSize = readingTextSize }.build() return QuestionPlayerFragment().apply { diff --git a/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonActivityTest.kt b/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonActivityTest.kt index 6f09f3ec034..c36c29faa98 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonActivityTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonActivityTest.kt @@ -203,7 +203,6 @@ class ResumeLessonActivityTest { private fun createResumeLessonActivityIntent(): Intent { return ResumeLessonActivity.createResumeLessonActivityIntent( context, - ProfileId.newBuilder().apply { internalId = 1 }.build(), TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, diff --git a/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentTest.kt b/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentTest.kt index bd1dc7f6eee..aaf51755696 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentTest.kt @@ -312,7 +312,6 @@ class ResumeLessonFragmentTest { private fun createResumeLessonActivityIntent(): Intent { return ResumeLessonActivity.createResumeLessonActivityIntent( context, - ProfileId.newBuilder().apply { internalId = 1 }.build(), TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -325,7 +324,6 @@ class ResumeLessonFragmentTest { private fun createResumeRatiosLessonActivityIntent(): Intent { return ResumeLessonActivity.createResumeLessonActivityIntent( context, - ProfileId.newBuilder().apply { internalId = 1 }.build(), TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, diff --git a/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyActivityTest.kt b/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyActivityTest.kt index e2258bdc5d6..da441f223be 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyActivityTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyActivityTest.kt @@ -147,7 +147,7 @@ class SurveyActivityTest { @Test fun testActivity_createIntent_verifyScreenNameInIntent() { val currentScreenNameWithIntent = SurveyActivity.createSurveyActivityIntent( - context, profileId, TEST_TOPIC_ID_0, TEST_EXPLORATION_ID_2 + context, TEST_TOPIC_ID_0, TEST_EXPLORATION_ID_2 ).extractCurrentAppScreenName() assertThat(currentScreenNameWithIntent).isEqualTo(ScreenName.SURVEY_ACTIVITY) @@ -160,7 +160,7 @@ class SurveyActivityTest { private fun createSurveyActivityIntent(profileId: ProfileId): Intent { return SurveyActivity.createSurveyActivityIntent( - context, profileId, TEST_TOPIC_ID_0, TEST_EXPLORATION_ID_2 + context, TEST_TOPIC_ID_0, TEST_EXPLORATION_ID_2 ) } diff --git a/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyFragmentTest.kt b/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyFragmentTest.kt index 358679a2b35..c7164939f5d 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyFragmentTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyFragmentTest.kt @@ -609,7 +609,6 @@ class SurveyFragmentTest { private fun createSurveyActivityIntent(): Intent { return SurveyActivity.createSurveyActivityIntent( context = context, - profileId = profileId, TEST_TOPIC_ID_0, TEST_EXPLORATION_ID_2 ) diff --git a/config/kitkat_main_dex_class_list.txt b/config/kitkat_main_dex_class_list.txt new file mode 100644 index 00000000000..ea2de317d21 --- /dev/null +++ b/config/kitkat_main_dex_class_list.txt @@ -0,0 +1,50 @@ +androidx/multidex/BuildConfig.class +androidx/multidex/MultiDex$V19.class +androidx/multidex/MultiDex.class +androidx/multidex/MultiDexApplication.class +androidx/multidex/MultiDexExtractor$1.class +androidx/multidex/MultiDexExtractor$ExtractedDex.class +androidx/multidex/MultiDexExtractor.class +androidx/multidex/ZipUtil$CentralDirectory.class +androidx/multidex/ZipUtil.class +androidx/work/Configuration$Provider.class +androidx/work/Configuration.class +androidx/work/WorkManager.class +javax/inject/Provider.class +kotlin/Function.class +kotlin/jvm/functions/Function0.class +kotlin/jvm/internal/FunctionBase.class +kotlin/jvm/internal/Intrinsics.class +kotlin/jvm/internal/Lambda.class +kotlin/Lazy.class +kotlin/LazyKt.class +kotlin/LazyKt__LazyJVMKt.class +kotlin/LazyKt__LazyKt.class +kotlin/SynchronizedLazyImpl.class +kotlin/UNINITIALIZED_VALUE.class +org/oppia/android/app/activity/ActivityComponent.class +org/oppia/android/app/activity/ActivityComponentFactory.class +org/oppia/android/app/activity/ActivityComponentImpl$Builder.class +org/oppia/android/app/activity/ActivityComponentImpl.class +org/oppia/android/app/application/ApplicationComponent$Builder.class +org/oppia/android/app/application/ApplicationComponent.class +org/oppia/android/app/application/ApplicationInjector.class +org/oppia/android/app/application/ApplicationInjectorProvider$DefaultImpls.class +org/oppia/android/app/application/ApplicationInjectorProvider.class +org/oppia/android/app/application/ApplicationModule.class +org/oppia/android/app/application/dev/DaggerDeveloperApplicationComponent$ActivityComponentImplBuilder.class +org/oppia/android/app/application/dev/DaggerDeveloperApplicationComponent$Builder.class +org/oppia/android/app/application/dev/DaggerDeveloperApplicationComponent.class +org/oppia/android/app/application/dev/DeveloperOppiaApplication.class +org/oppia/android/app/translation/AppLanguageActivityInjector.class +org/oppia/android/app/translation/AppLanguageActivityInjectorProvider.class +org/oppia/android/app/translation/AppLanguageApplicationInjector.class +org/oppia/android/app/translation/AppLanguageApplicationInjectorProvider.class +org/oppia/android/app/utility/datetime/DateTimeUtil$Injector.class +org/oppia/android/domain/locale/LocaleApplicationInjector.class +org/oppia/android/domain/locale/LocaleApplicationInjectorProvider.class +org/oppia/android/domain/oppialogger/ApplicationStartupListener.class +org/oppia/android/util/data/DataProvidersInjector.class +org/oppia/android/util/data/DataProvidersInjectorProvider.class +org/oppia/android/util/system/OppiaClockInjector.class +org/oppia/android/util/system/OppiaClockInjectorProvider.class diff --git a/model/src/main/proto/arguments.proto b/model/src/main/proto/arguments.proto index 8540563d3ee..ea50bf99e00 100644 --- a/model/src/main/proto/arguments.proto +++ b/model/src/main/proto/arguments.proto @@ -93,11 +93,9 @@ message DestinationScreen { // Intent extras for RecentlyPlayedActivity. message RecentlyPlayedActivityParams { - // The ID of current profile. - ProfileId profile_id = 1; // The title which should be displayed for the activity. - RecentlyPlayedActivityTitle activity_title = 2; + RecentlyPlayedActivityTitle activity_title = 1; } // Corresponds to activity title of RecentlyPlayedActivity. @@ -120,9 +118,6 @@ enum RecentlyPlayedActivityTitle { // Params required when creating a new ExplorationActivity. message ExplorationActivityParams { - // The ID of the profile that wants to start an exploration play session. - ProfileId profile_id = 1; - // The ID of the classroom to which the opening exploration belongs. string classroom_id = 7; @@ -156,74 +151,65 @@ message ExplorationActivityParams { // Arguments that must be passed to a new ExplorationFragment. message ExplorationFragmentArguments { - // The ID of the profile that wants to start an exploration play session. - ProfileId profile_id = 1; - // The ID of the classroom to which the opening exploration belongs. - string classroom_id = 6; + string classroom_id = 5; // The ID of the topic to which the opening exploration belongs. - string topic_id = 2; + string topic_id = 1; // The ID of the story to which the opening exploration belongs. - string story_id = 3; + string story_id = 2; // The exploration being opened for a new play session. - string exploration_id = 4; + string exploration_id = 3; // The text size at which content in the exploration should be rendered. - ReadingTextSize reading_text_size = 5; + ReadingTextSize reading_text_size = 4; } // Params required when creating a new ResumeLessonActivity. message ResumeLessonActivityParams { - // The ID of the profile that wants to start an exploration play session. - ProfileId profile_id = 1; - // The ID of the classroom to which the opening exploration belongs. - string classroom_id = 7; + string classroom_id = 6; // The ID of the topic to which the opening exploration belongs. - string topic_id = 2; + string topic_id = 1; // The ID of the story to which the opening exploration belongs. - string story_id = 3; + string story_id = 2; // The exploration being opened for a new play session. - string exploration_id = 4; + string exploration_id = 3; // The screen from which this activity was opened. - ExplorationActivityParams.ParentScreen parent_screen = 5; + ExplorationActivityParams.ParentScreen parent_screen = 4; // The checkpoint that may be used to resume the exploration play session. - ExplorationCheckpoint checkpoint = 6; + ExplorationCheckpoint checkpoint = 5; } // Arguments that must be passed to a new ResumeLessonFragment. message ResumeLessonFragmentArguments { - // The ID of the profile that wants to start an exploration play session. - ProfileId profile_id = 1; - // The ID of the classroom to which the opening exploration belongs. - string classroom_id = 7; + string classroom_id = 6; // The ID of the topic to which the opening exploration belongs. - string topic_id = 2; + string topic_id = 1; // The ID of the story to which the opening exploration belongs. - string story_id = 3; + string story_id = 2; // The exploration being opened for a new play session. - string exploration_id = 4; + string exploration_id = 3; // The screen from which this activity was opened. - ExplorationActivityParams.ParentScreen parent_screen = 5; + ExplorationActivityParams.ParentScreen parent_screen = 4; // The checkpoint that may be used to resume the exploration play session. - ExplorationCheckpoint checkpoint = 6; + ExplorationCheckpoint checkpoint = 5; // The text size at which content in the resume lesson should be rendered. - ReadingTextSize reading_text_size = 8; + ReadingTextSize reading_text_size = 7; } // Params required when creating a new ReadingTextSizeActivity. @@ -339,23 +325,19 @@ message AppLanguageActivityStateBundle { // Represents the parameters needed to create SurveyActivity. message SurveyActivityParams { - // The ID of the profile for which the survey is to be shown. - ProfileId profile_id = 1; // The ID of the topic to which the triggering exploration belongs. - string topic_id = 2; + string topic_id = 1; // The ID of the triggering exploration. - string exploration_id = 3; + string exploration_id = 2; } // Arguments required when creating a QuestionPlayerFragment. message QuestionPlayerFragmentArguments{ - // The ID of current profile. - ProfileId profile_id = 1; // The ReadingTextSize previously selected by the user (upon opening the fragment). - ReadingTextSize reading_text_size = 2; + ReadingTextSize reading_text_size = 1; } // Represents the parameters needed to create TopicActivity. From f52b999db064d899ecf9956c44aaa2c09a6af9bc Mon Sep 17 00:00:00 2001 From: jainv4156 <123441149+jainv4156@users.noreply.github.com> Date: Wed, 26 Feb 2025 17:15:06 +0530 Subject: [PATCH 02/11] Delete config/kitkat_main_dex_class_list.txt --- config/kitkat_main_dex_class_list.txt | 50 --------------------------- 1 file changed, 50 deletions(-) delete mode 100644 config/kitkat_main_dex_class_list.txt diff --git a/config/kitkat_main_dex_class_list.txt b/config/kitkat_main_dex_class_list.txt deleted file mode 100644 index ea2de317d21..00000000000 --- a/config/kitkat_main_dex_class_list.txt +++ /dev/null @@ -1,50 +0,0 @@ -androidx/multidex/BuildConfig.class -androidx/multidex/MultiDex$V19.class -androidx/multidex/MultiDex.class -androidx/multidex/MultiDexApplication.class -androidx/multidex/MultiDexExtractor$1.class -androidx/multidex/MultiDexExtractor$ExtractedDex.class -androidx/multidex/MultiDexExtractor.class -androidx/multidex/ZipUtil$CentralDirectory.class -androidx/multidex/ZipUtil.class -androidx/work/Configuration$Provider.class -androidx/work/Configuration.class -androidx/work/WorkManager.class -javax/inject/Provider.class -kotlin/Function.class -kotlin/jvm/functions/Function0.class -kotlin/jvm/internal/FunctionBase.class -kotlin/jvm/internal/Intrinsics.class -kotlin/jvm/internal/Lambda.class -kotlin/Lazy.class -kotlin/LazyKt.class -kotlin/LazyKt__LazyJVMKt.class -kotlin/LazyKt__LazyKt.class -kotlin/SynchronizedLazyImpl.class -kotlin/UNINITIALIZED_VALUE.class -org/oppia/android/app/activity/ActivityComponent.class -org/oppia/android/app/activity/ActivityComponentFactory.class -org/oppia/android/app/activity/ActivityComponentImpl$Builder.class -org/oppia/android/app/activity/ActivityComponentImpl.class -org/oppia/android/app/application/ApplicationComponent$Builder.class -org/oppia/android/app/application/ApplicationComponent.class -org/oppia/android/app/application/ApplicationInjector.class -org/oppia/android/app/application/ApplicationInjectorProvider$DefaultImpls.class -org/oppia/android/app/application/ApplicationInjectorProvider.class -org/oppia/android/app/application/ApplicationModule.class -org/oppia/android/app/application/dev/DaggerDeveloperApplicationComponent$ActivityComponentImplBuilder.class -org/oppia/android/app/application/dev/DaggerDeveloperApplicationComponent$Builder.class -org/oppia/android/app/application/dev/DaggerDeveloperApplicationComponent.class -org/oppia/android/app/application/dev/DeveloperOppiaApplication.class -org/oppia/android/app/translation/AppLanguageActivityInjector.class -org/oppia/android/app/translation/AppLanguageActivityInjectorProvider.class -org/oppia/android/app/translation/AppLanguageApplicationInjector.class -org/oppia/android/app/translation/AppLanguageApplicationInjectorProvider.class -org/oppia/android/app/utility/datetime/DateTimeUtil$Injector.class -org/oppia/android/domain/locale/LocaleApplicationInjector.class -org/oppia/android/domain/locale/LocaleApplicationInjectorProvider.class -org/oppia/android/domain/oppialogger/ApplicationStartupListener.class -org/oppia/android/util/data/DataProvidersInjector.class -org/oppia/android/util/data/DataProvidersInjectorProvider.class -org/oppia/android/util/system/OppiaClockInjector.class -org/oppia/android/util/system/OppiaClockInjectorProvider.class From 535e1f64020d5b8d91bbbd5542c950addc359b5f Mon Sep 17 00:00:00 2001 From: jainv4156 Date: Wed, 26 Feb 2025 17:28:51 +0530 Subject: [PATCH 03/11] fix lint issues --- .../app/home/recentlyplayed/RecentlyPlayedActivity.kt | 1 - .../recentlyplayed/RecentlyPlayedActivityPresenter.kt | 2 +- .../app/home/recentlyplayed/RecentlyPlayedFragment.kt | 1 - .../recentlyplayed/RecentlyPlayedFragmentPresenter.kt | 2 +- .../app/player/exploration/ExplorationActivity.kt | 2 +- .../exploration/ExplorationFragmentPresenter.kt | 11 +++++------ .../testing/StateFragmentTestActivityPresenter.kt | 4 ++-- .../android/app/resumelesson/ResumeLessonActivity.kt | 4 ++-- .../android/app/resumelesson/ResumeLessonFragment.kt | 5 +++-- .../org/oppia/android/app/survey/SurveyActivity.kt | 2 +- .../android/app/testing/ExplorationTestActivity.kt | 1 - .../questionplayer/QuestionPlayerActivityPresenter.kt | 4 ++-- .../topic/questionplayer/QuestionPlayerFragment.kt | 7 ++++--- .../app/resumelesson/ResumeLessonActivityTest.kt | 1 - 14 files changed, 22 insertions(+), 25 deletions(-) diff --git a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivity.kt b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivity.kt index 9f16127175b..d124746fee6 100644 --- a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivity.kt +++ b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivity.kt @@ -10,7 +10,6 @@ import org.oppia.android.app.activity.InjectableAutoLocalizedAppCompatActivity import org.oppia.android.app.home.RouteToExplorationListener import org.oppia.android.app.model.ExplorationActivityParams import org.oppia.android.app.model.ExplorationCheckpoint -import org.oppia.android.app.model.ProfileId import org.oppia.android.app.model.RecentlyPlayedActivityParams import org.oppia.android.app.model.ScreenName import org.oppia.android.app.player.exploration.ExplorationActivity diff --git a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivityPresenter.kt index b8ab678b21d..587f8d3d7d2 100644 --- a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedActivityPresenter.kt @@ -8,8 +8,8 @@ import org.oppia.android.app.model.RecentlyPlayedActivityParams import org.oppia.android.app.model.RecentlyPlayedActivityTitle import org.oppia.android.app.translation.AppLanguageResourceHandler import org.oppia.android.databinding.RecentlyPlayedActivityBinding -import javax.inject.Inject import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId +import javax.inject.Inject /** The presenter for [RecentlyPlayedActivity]. */ @ActivityScope diff --git a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragment.kt b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragment.kt index ad5494389ad..3992cf44eaa 100644 --- a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragment.kt +++ b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragment.kt @@ -10,7 +10,6 @@ import org.oppia.android.app.fragment.InjectableFragment import org.oppia.android.app.model.ProfileId import org.oppia.android.app.model.PromotedStory import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.decorateWithUserProfileId -import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId import javax.inject.Inject /** Fragment that contains all recently played stories. */ diff --git a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt index c4a70497ee4..3127b35a270 100755 --- a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt @@ -26,8 +26,8 @@ import org.oppia.android.domain.exploration.lightweightcheckpointing.Exploration import org.oppia.android.domain.oppialogger.OppiaLogger import org.oppia.android.util.data.AsyncResult import org.oppia.android.util.data.DataProviders.Companion.toLiveData -import javax.inject.Inject import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId +import javax.inject.Inject /** The presenter for [RecentlyPlayedFragment]. */ @FragmentScope diff --git a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivity.kt b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivity.kt index 52c834a7601..3e98e7b775f 100755 --- a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivity.kt +++ b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivity.kt @@ -27,8 +27,8 @@ import org.oppia.android.app.topic.conceptcard.ConceptCardListener import org.oppia.android.util.extensions.getProtoExtra import org.oppia.android.util.extensions.putProtoExtra import org.oppia.android.util.logging.CurrentAppScreenNameIntentDecorator.decorateWithScreenName -import javax.inject.Inject import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId +import javax.inject.Inject const val TAG_HINTS_AND_SOLUTION_DIALOG = "HINTS_AND_SOLUTION_DIALOG" diff --git a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt index b4abd65f744..5ce964aac1b 100755 --- a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt @@ -12,7 +12,6 @@ import androidx.fragment.app.Fragment import org.oppia.android.R import org.oppia.android.app.fragment.FragmentScope import org.oppia.android.app.model.ExplorationFragmentArguments -import org.oppia.android.app.model.ProfileId import org.oppia.android.app.model.ReadingTextSize import org.oppia.android.app.model.Spotlight import org.oppia.android.app.player.state.StateFragment @@ -29,8 +28,8 @@ import org.oppia.android.util.data.AsyncResult import org.oppia.android.util.data.DataProviders.Companion.toLiveData import org.oppia.android.util.extensions.getProto import org.oppia.android.util.extensions.putProto -import javax.inject.Inject import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId +import javax.inject.Inject /** The presenter for [ExplorationFragment]. */ @FragmentScope @@ -44,7 +43,6 @@ class ExplorationFragmentPresenter @Inject constructor( private val resourceHandler: AppLanguageResourceHandler ) { - /** Handles the [Fragment.onAttach] portion of [ExplorationFragment]'s lifecycle. */ fun handleAttach(context: Context) { fontScaleConfigurationUtil.adjustFontScale(context, retrieveArguments().readingTextSize) @@ -57,7 +55,7 @@ class ExplorationFragmentPresenter @Inject constructor( ExplorationFragmentBinding.inflate(inflater, container, /* attachToRoot= */ false).root val stateFragment = StateFragment.newInstance( - args.topicId, args.storyId, args.explorationId + args.topicId, args.storyId, args.explorationId ) logPracticeFragmentEvent(args.classroomId, args.topicId, args.storyId, args.explorationId) if (getStateFragment() == null) { @@ -71,14 +69,15 @@ class ExplorationFragmentPresenter @Inject constructor( /** Handles the [Fragment.onViewCreated] portion of [ExplorationFragment]'s lifecycle. */ fun handleViewCreated() { - val profileDataProvider = profileManagementController.getProfile(activity.intent.extractCurrentUserProfileId()) + val profileDataProvider = profileManagementController.getProfile( + activity.intent.extractCurrentUserProfileId() + ) profileDataProvider.toLiveData().observe( fragment ) { result -> val readingTextSize = retrieveArguments().readingTextSize if (result is AsyncResult.Success) { if (result.value.readingTextSize != readingTextSize) { - // Since text views are based on sp for sizing, the activity needs to be recreated so that // sp can be correctly recomputed. selectNewReadingTextSize(result.value.readingTextSize) diff --git a/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt index 72dccc2ff67..02a3b5cffe8 100644 --- a/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt @@ -122,7 +122,7 @@ class StateFragmentTestActivityPresenter @Inject constructor( oppiaLogger.e(TEST_ACTIVITY_TAG, "Failed to load exploration", result.error) is AsyncResult.Success -> { oppiaLogger.d(TEST_ACTIVITY_TAG, "Successfully loaded exploration") - initializeExploration( topicId, storyId, explorationId) + initializeExploration(topicId, storyId, explorationId) } } } @@ -140,7 +140,7 @@ class StateFragmentTestActivityPresenter @Inject constructor( ) { stateFragmentTestViewModel.hasExplorationStarted.set(true) - val stateFragment = StateFragment.newInstance( topicId, storyId, explorationId) + val stateFragment = StateFragment.newInstance(topicId, storyId, explorationId) activity.supportFragmentManager.beginTransaction().add( R.id.state_fragment_placeholder, stateFragment diff --git a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonActivity.kt b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonActivity.kt index 79c86851381..123c2149641 100644 --- a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonActivity.kt +++ b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonActivity.kt @@ -18,8 +18,8 @@ import org.oppia.android.app.player.exploration.ExplorationActivity import org.oppia.android.util.extensions.getProtoExtra import org.oppia.android.util.extensions.putProtoExtra import org.oppia.android.util.logging.CurrentAppScreenNameIntentDecorator.decorateWithScreenName -import javax.inject.Inject import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId +import javax.inject.Inject /** Activity that allows the user to resume a saved exploration. */ class ResumeLessonActivity : @@ -34,7 +34,7 @@ class ResumeLessonActivity : (activityComponent as ActivityComponentImpl).inject(this) val params = intent.getProtoExtra(PARAMS_KEY, ResumeLessonActivityParams.getDefaultInstance()) - val profileId :ProfileId = intent.extractCurrentUserProfileId() + val profileId: ProfileId = intent.extractCurrentUserProfileId() resumeLessonActivityPresenter.handleOnCreate( profileId, params.classroomId, diff --git a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragment.kt b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragment.kt index 67093b8900b..cb44b98983a 100644 --- a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragment.kt +++ b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragment.kt @@ -14,8 +14,8 @@ import org.oppia.android.app.model.ReadingTextSize import org.oppia.android.app.model.ResumeLessonFragmentArguments import org.oppia.android.util.extensions.getProto import org.oppia.android.util.extensions.putProto -import javax.inject.Inject import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId +import javax.inject.Inject /** Fragment that allows the user to resume a saved exploration. */ class ResumeLessonFragment : InjectableFragment() { @@ -71,7 +71,8 @@ class ResumeLessonFragment : InjectableFragment() { RESUME_LESSON_FRAGMENT_ARGUMENTS_KEY, ResumeLessonFragmentArguments.getDefaultInstance() ) - val profileId :ProfileId = activity?.intent?.extractCurrentUserProfileId() ?: ProfileId.getDefaultInstance() + val profileId: ProfileId = + activity?.intent?.extractCurrentUserProfileId() ?: ProfileId.getDefaultInstance() return resumeLessonFragmentPresenter.handleOnCreate( inflater, diff --git a/app/src/main/java/org/oppia/android/app/survey/SurveyActivity.kt b/app/src/main/java/org/oppia/android/app/survey/SurveyActivity.kt index b80dc9bcad5..c5ab371a5d0 100644 --- a/app/src/main/java/org/oppia/android/app/survey/SurveyActivity.kt +++ b/app/src/main/java/org/oppia/android/app/survey/SurveyActivity.kt @@ -11,8 +11,8 @@ import org.oppia.android.app.model.SurveyActivityParams import org.oppia.android.util.extensions.getProtoExtra import org.oppia.android.util.extensions.putProtoExtra import org.oppia.android.util.logging.CurrentAppScreenNameIntentDecorator.decorateWithScreenName -import javax.inject.Inject import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId +import javax.inject.Inject /** The activity for showing a survey. */ class SurveyActivity : InjectableAutoLocalizedAppCompatActivity() { diff --git a/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivity.kt b/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivity.kt index 19bde9b2b56..25097a69343 100644 --- a/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivity.kt +++ b/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivity.kt @@ -5,7 +5,6 @@ import org.oppia.android.app.activity.ActivityComponentImpl import org.oppia.android.app.activity.InjectableAutoLocalizedAppCompatActivity import org.oppia.android.app.home.RouteToExplorationListener import org.oppia.android.app.model.ExplorationActivityParams -import org.oppia.android.app.model.ProfileId import org.oppia.android.app.player.exploration.ExplorationActivity import org.oppia.android.app.topic.TopicFragment import org.oppia.android.app.utility.SplitScreenManager diff --git a/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerActivityPresenter.kt index 5b5927ac0b3..8e4e97396a4 100644 --- a/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerActivityPresenter.kt @@ -75,7 +75,7 @@ class QuestionPlayerActivityPresenter @Inject constructor( startTrainingSessionWithCallback { activity.supportFragmentManager.beginTransaction().add( R.id.question_player_fragment_placeholder, - QuestionPlayerFragment.newInstance( readingTextSize), + QuestionPlayerFragment.newInstance(readingTextSize), TAG_QUESTION_PLAYER_FRAGMENT ).commitNow() } @@ -150,7 +150,7 @@ class QuestionPlayerActivityPresenter @Inject constructor( // Re-add the player fragment when the new session is ready. activity.supportFragmentManager.beginTransaction().add( R.id.question_player_fragment_placeholder, - QuestionPlayerFragment.newInstance( readingTextSize), + QuestionPlayerFragment.newInstance(readingTextSize), TAG_QUESTION_PLAYER_FRAGMENT ).commitNow() } diff --git a/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerFragment.kt b/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerFragment.kt index 1b7f57e3cd5..3da25a20a66 100644 --- a/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerFragment.kt +++ b/app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerFragment.kt @@ -24,8 +24,8 @@ import org.oppia.android.app.player.state.listener.ShowHintAvailabilityListener import org.oppia.android.app.player.state.listener.SubmitNavigationButtonListener import org.oppia.android.util.extensions.getProto import org.oppia.android.util.extensions.putProto -import javax.inject.Inject import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId +import javax.inject.Inject /** Fragment that contains all questions in Question Player. */ class QuestionPlayerFragment : @@ -59,7 +59,8 @@ class QuestionPlayerFragment : UserAnswerState.getDefaultInstance() ) ?: UserAnswerState.getDefaultInstance() - val profileId :ProfileId = activity?.intent?.extractCurrentUserProfileId() ?: ProfileId.getDefaultInstance() + val profileId: ProfileId = + activity?.intent?.extractCurrentUserProfileId() ?: ProfileId.getDefaultInstance() return questionPlayerFragmentPresenter.handleCreateView( inflater, container, profileId, userAnswerState ) @@ -116,7 +117,7 @@ class QuestionPlayerFragment : * @param profileId the profile in which the question play session will be played * @return a new [QuestionPlayerFragment] to start a question play session */ - fun newInstance( readingTextSize: ReadingTextSize): + fun newInstance(readingTextSize: ReadingTextSize): QuestionPlayerFragment { val args = QuestionPlayerFragmentArguments.newBuilder().apply { this.readingTextSize = readingTextSize diff --git a/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonActivityTest.kt b/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonActivityTest.kt index c36c29faa98..a781ba0cf61 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonActivityTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonActivityTest.kt @@ -40,7 +40,6 @@ import org.oppia.android.app.devoptions.DeveloperOptionsModule import org.oppia.android.app.devoptions.DeveloperOptionsStarterModule import org.oppia.android.app.model.ExplorationActivityParams import org.oppia.android.app.model.ExplorationCheckpoint -import org.oppia.android.app.model.ProfileId import org.oppia.android.app.model.ScreenName import org.oppia.android.app.player.state.itemviewmodel.SplitScreenInteractionModule import org.oppia.android.app.shim.ViewBindingShimModule From 3f092158a635b60ade77a2e18f6169fa33545606 Mon Sep 17 00:00:00 2001 From: jainv4156 Date: Wed, 26 Feb 2025 22:25:32 +0530 Subject: [PATCH 04/11] refactor testfiles --- .../app/home/RecentlyPlayedFragmentTest.kt | 189 ++++++---------- .../exploration/ExplorationActivityTest.kt | 205 ++++++------------ .../ProfileProgressFragmentTest.kt | 2 - .../resumelesson/ResumeLessonFragmentTest.kt | 3 - .../android/app/story/StoryActivityTest.kt | 1 - .../android/app/survey/SurveyActivityTest.kt | 6 +- .../app/activity/route/ActivityRouterTest.kt | 1 - .../ExplorationActivityLocalTest.kt | 6 - .../app/testing/RecentlyPlayedSpanTest.kt | 33 +-- config/kitkat_main_dex_class_list.txt | 50 +++++ 10 files changed, 189 insertions(+), 307 deletions(-) create mode 100644 config/kitkat_main_dex_class_list.txt diff --git a/app/src/sharedTest/java/org/oppia/android/app/home/RecentlyPlayedFragmentTest.kt b/app/src/sharedTest/java/org/oppia/android/app/home/RecentlyPlayedFragmentTest.kt index b1a9e948d59..b5bda26f38c 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/home/RecentlyPlayedFragmentTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/home/RecentlyPlayedFragmentTest.kt @@ -193,14 +193,12 @@ class RecentlyPlayedFragmentTest { } private fun createRecentlyPlayedActivityIntent( - internalProfileId: Int, recentlyPlayedActivityTitle: RecentlyPlayedActivityTitle = RecentlyPlayedActivityTitle.RECENTLY_PLAYED_STORIES ): Intent { val recentlyPlayedActivityParams = RecentlyPlayedActivityParams .newBuilder() - .setProfileId(ProfileId.newBuilder().setInternalId(internalProfileId).build()) .setActivityTitle(recentlyPlayedActivityTitle) .build() return RecentlyPlayedActivity.createRecentlyPlayedActivityIntent( @@ -211,7 +209,7 @@ class RecentlyPlayedFragmentTest { @Test fun testActivity_createIntent_verifyScreenNameInIntent() { - val screenName = createRecentlyPlayedActivityIntent(internalProfileId) + val screenName = createRecentlyPlayedActivityIntent() .extractCurrentAppScreenName() assertThat(screenName).isEqualTo(ScreenName.RECENTLY_PLAYED_ACTIVITY) @@ -220,9 +218,7 @@ class RecentlyPlayedFragmentTest { @Test fun testRecentlyPlayedTestActivity_clickOnToolbarNavigationButton_closeActivity() { activityTestRule.launchActivity( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ) onView(withContentDescription(R.string.navigate_up)).perform(click()) assertThat(activityTestRule.activity.isFinishing).isTrue() @@ -240,9 +236,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = false ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView( @@ -268,9 +262,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView( @@ -296,9 +288,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -330,9 +320,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView( @@ -356,7 +344,6 @@ class RecentlyPlayedFragmentTest { ) ActivityScenario.launch( createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId, RecentlyPlayedActivityTitle.STORIES_FOR_YOU ) ).use { @@ -380,9 +367,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = false ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -410,9 +395,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = false ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView( @@ -435,9 +418,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = false ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -466,9 +447,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = false ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -495,9 +474,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = false ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -530,9 +507,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = false ) activityTestRule.launchActivity( - createRecentlyPlayedActivityIntent( - internalProfileId = profileId.internalId - ) + createRecentlyPlayedActivityIntent() ) activityTestRule.activity.window.decorView.layoutDirection = ViewCompat.LAYOUT_DIRECTION_RTL testCoroutineDispatchers.runCurrent() @@ -571,9 +546,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = false ) activityTestRule.launchActivity( - createRecentlyPlayedActivityIntent( - internalProfileId = profileId.internalId - ) + createRecentlyPlayedActivityIntent() ) activityTestRule.activity.window.decorView.layoutDirection = ViewCompat.LAYOUT_DIRECTION_RTL testCoroutineDispatchers.runCurrent() @@ -619,9 +592,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = false ) activityTestRule.launchActivity( - createRecentlyPlayedActivityIntent( - internalProfileId = profileId.internalId - ) + createRecentlyPlayedActivityIntent() ) activityTestRule.activity.window.decorView.layoutDirection = ViewCompat.LAYOUT_DIRECTION_RTL testCoroutineDispatchers.runCurrent() @@ -673,9 +644,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = false ) activityTestRule.launchActivity( - createRecentlyPlayedActivityIntent( - internalProfileId = profileId.internalId - ) + createRecentlyPlayedActivityIntent() ) activityTestRule.activity.window.decorView.layoutDirection = ViewCompat.LAYOUT_DIRECTION_RTL testCoroutineDispatchers.runCurrent() @@ -724,9 +693,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) activityTestRule.launchActivity( - createRecentlyPlayedActivityIntent( - internalProfileId = profileId.internalId - ) + createRecentlyPlayedActivityIntent() ) testCoroutineDispatchers.runCurrent() val recycler: RecyclerView = @@ -750,9 +717,7 @@ class RecentlyPlayedFragmentTest { ) activityTestRule.launchActivity( - createRecentlyPlayedActivityIntent( - internalProfileId = profileId.internalId - ) + createRecentlyPlayedActivityIntent() ) activityTestRule.activity.window.decorView.layoutDirection = ViewCompat.LAYOUT_DIRECTION_RTL testCoroutineDispatchers.runCurrent() @@ -778,9 +743,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -812,9 +775,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -847,9 +808,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -880,9 +839,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -914,9 +871,7 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -948,9 +903,7 @@ class RecentlyPlayedFragmentTest { FRACTIONS_STORY_0_EXPLORATION_0_CURRENT_VERSION ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -1006,9 +959,8 @@ class RecentlyPlayedFragmentTest { version = 1 // Old version, but it doesn't matter since the new version is incompatible. ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -1046,9 +998,8 @@ class RecentlyPlayedFragmentTest { @Test fun testRecentlyPlayedTestAct_clickStory_chapterAsNotStarted_opensExplorationLessonActivity() { ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -1091,9 +1042,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = false ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -1140,9 +1090,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -1174,9 +1123,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -1206,9 +1154,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = false ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(isRoot()).perform(orientationLandscape()) @@ -1232,9 +1179,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(isRoot()).perform(orientationLandscape()) @@ -1258,9 +1204,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(isRoot()).perform(orientationLandscape()) @@ -1291,9 +1236,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(isRoot()).perform(orientationLandscape()) @@ -1326,9 +1270,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(isRoot()).perform(orientationLandscape()) @@ -1361,9 +1304,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(isRoot()).perform(orientationLandscape()) @@ -1397,9 +1339,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(isRoot()).perform(orientationLandscape()) @@ -1431,9 +1372,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(isRoot()).perform(orientationLandscape()) @@ -1466,9 +1406,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { onView(isRoot()).perform(orientationLandscape()) testCoroutineDispatchers.runCurrent() @@ -1501,9 +1440,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(isRoot()).perform(orientationLandscape()) @@ -1536,9 +1474,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -1567,9 +1504,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).perform( @@ -1598,9 +1534,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(isRoot()).perform(orientationLandscape()) @@ -1630,9 +1565,8 @@ class RecentlyPlayedFragmentTest { timestampOlderThanOneWeek = true ) ActivityScenario.launch( - createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId - ) + createRecentlyPlayedActivityIntent() + ).use { testCoroutineDispatchers.runCurrent() onView(isRoot()).perform(orientationLandscape()) @@ -1654,7 +1588,6 @@ class RecentlyPlayedFragmentTest { fun testFragment_argumentsAreCorrect() { ActivityScenario.launch( createRecentlyPlayedActivityIntent( - internalProfileId = internalProfileId, RecentlyPlayedActivityTitle.STORIES_FOR_YOU ) ).use { scenario -> diff --git a/app/src/sharedTest/java/org/oppia/android/app/player/exploration/ExplorationActivityTest.kt b/app/src/sharedTest/java/org/oppia/android/app/player/exploration/ExplorationActivityTest.kt index e5e87760454..5abf840e54b 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/player/exploration/ExplorationActivityTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/player/exploration/ExplorationActivityTest.kt @@ -263,7 +263,6 @@ class ExplorationActivityTest { @Test fun testActivity_createIntent_verifyScreenNameInIntent() { val screenName = createExplorationActivityIntent( - internalProfileId, TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -279,7 +278,6 @@ class ExplorationActivityTest { markAllSpotlightsSeen() explorationActivityTestRule.launchActivity( createExplorationActivityIntent( - internalProfileId, TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -297,8 +295,7 @@ class ExplorationActivityTest { @Test fun testExploration_toolbarTitle_isDisplayedSuccessfully() { launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -325,8 +322,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() fakeAccessibilityService.setScreenReaderEnabled(false) explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -349,8 +345,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() fakeAccessibilityService.setScreenReaderEnabled(true) explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -373,8 +368,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() fakeAccessibilityService.setScreenReaderEnabled(false) explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -397,8 +391,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() fakeAccessibilityService.setScreenReaderEnabled(true) explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -419,8 +412,7 @@ class ExplorationActivityTest { @Test fun testExploration_configurationChange_toolbarTitle_isDisplayedSuccessfully() { launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -447,8 +439,7 @@ class ExplorationActivityTest { fun testExploration_toolbarAudioIcon_defaultContentDescription_isCorrect() { setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -477,8 +468,7 @@ class ExplorationActivityTest { markSpotlightSeen(Spotlight.FeatureCase.LESSONS_BACK_BUTTON) markSpotlightSeen(Spotlight.FeatureCase.VOICEOVER_PLAY_ICON) launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -508,8 +498,7 @@ class ExplorationActivityTest { markSpotlightSeen(Spotlight.FeatureCase.LESSONS_BACK_BUTTON) markSpotlightSeen(Spotlight.FeatureCase.VOICEOVER_PLAY_ICON) launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -532,8 +521,7 @@ class ExplorationActivityTest { } launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -560,8 +548,7 @@ class ExplorationActivityTest { fun testBackButtonSpotlight_setToShowOnFirstLogin_notSeen_checkSpotlightIsShown() { setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -588,8 +575,7 @@ class ExplorationActivityTest { markSpotlightSeen(Spotlight.FeatureCase.VOICEOVER_PLAY_ICON) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -609,8 +595,7 @@ class ExplorationActivityTest { } launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -638,8 +623,7 @@ class ExplorationActivityTest { setUpAudioForFractionLesson() markSpotlightSeen(Spotlight.FeatureCase.LESSONS_BACK_BUTTON) launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -667,8 +651,7 @@ class ExplorationActivityTest { setUpAudioForFractionLesson() markSpotlightSeen(Spotlight.FeatureCase.LESSONS_BACK_BUTTON) launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -688,8 +671,7 @@ class ExplorationActivityTest { } launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -716,8 +698,7 @@ class ExplorationActivityTest { markSpotlightSeen(Spotlight.FeatureCase.LESSONS_BACK_BUTTON) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -744,8 +725,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -773,8 +753,7 @@ class ExplorationActivityTest { fun testExploration_clickAudioIconTwice_contentDescription_changesToDefault() { setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -802,8 +781,7 @@ class ExplorationActivityTest { @Test fun testAudioWithNoVoiceover_openPrototypeExploration_checkAudioButtonIsHidden() { launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -826,8 +804,7 @@ class ExplorationActivityTest { @Test fun testAudioWithNoVoiceover_prototypeExploration_configChange_checkAudioButtonIsHidden() { launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -853,8 +830,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -884,8 +860,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -915,8 +890,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -947,8 +921,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -988,8 +961,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -1036,8 +1008,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -1081,8 +1052,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -1127,8 +1097,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -1168,8 +1137,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1232,8 +1200,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -1278,8 +1245,7 @@ class ExplorationActivityTest { fun testExplorationActivity_loadExplorationFragment_hasDummyString() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1295,8 +1261,7 @@ class ExplorationActivityTest { fun testExplorationActivity_onBackPressed_showsUnsavedExplorationDialog() { setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1326,8 +1291,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1357,8 +1321,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -1397,8 +1360,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1427,8 +1389,7 @@ class ExplorationActivityTest { fun testExpActivity_showUnsavedExpDialog_leave_closesExpActivity() { setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1460,8 +1421,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1502,8 +1462,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1536,8 +1495,7 @@ class ExplorationActivityTest { fun testExpActivity_progressSaved_onBackPressed_closesExpActivity() { setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1564,8 +1522,7 @@ class ExplorationActivityTest { fun testExpActivity_progressSaved_onToolbarClosePressed_closesExpActivity() { setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1599,8 +1556,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1641,8 +1597,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1679,8 +1634,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1718,8 +1672,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1759,8 +1712,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1801,8 +1753,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1842,8 +1793,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1895,8 +1845,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1948,8 +1897,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1991,8 +1939,7 @@ class ExplorationActivityTest { fun testExpActivity_pressBack_whenProgressControllerBroken_stillEndsActivity() { setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -2025,8 +1972,7 @@ class ExplorationActivityTest { fun testExpActivity_startNewExploration_pressBack_logsLessonSavedAdvertentlyEvent() { setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -2057,8 +2003,7 @@ class ExplorationActivityTest { setUpAudioForFractionLesson() markAllSpotlightsSeen() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -2092,8 +2037,7 @@ class ExplorationActivityTest { fun testExpActivity_replayExploration_pressBack_doesNotLogLessonSavedAdvertentlyEvent() { setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -2124,8 +2068,7 @@ class ExplorationActivityTest { setUpAudioForFractionLesson() markAllSpotlightsSeen() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -2160,8 +2103,7 @@ class ExplorationActivityTest { OppiaLanguage.ENGLISH ) launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2192,8 +2134,7 @@ class ExplorationActivityTest { OppiaLanguage.ARABIC ) launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2224,8 +2165,7 @@ class ExplorationActivityTest { OppiaLanguage.ENGLISH ) launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2262,8 +2202,7 @@ class ExplorationActivityTest { fun testExpActivity_showHint_hasCorrectContentDescription() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2306,8 +2245,7 @@ class ExplorationActivityTest { fun testExpActivity_showHint_checkExpandListIconWithScreenReader_isClickable() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2344,8 +2282,7 @@ class ExplorationActivityTest { fun testExpActivity_showHint_checkExpandListIconWithoutScreenReader_isNotClickable() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2387,8 +2324,7 @@ class ExplorationActivityTest { OppiaLanguage.ARABIC ) launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2425,8 +2361,7 @@ class ExplorationActivityTest { fun testExplorationActivity_initialise_openBottomSheet_showsBottomSheet() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2453,8 +2388,7 @@ class ExplorationActivityTest { fun testExplorationActivity_openBottomsheet_selectHelpInBottomsheet_opensHelpActivity() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2492,8 +2426,7 @@ class ExplorationActivityTest { fun testExplorationActivity_openBottomsheet_selectOptionsInBottomsheet_opensOptionsActivity() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2531,8 +2464,7 @@ class ExplorationActivityTest { fun testExplorationActivity_openBottomsheet_selectCloseOption_bottomSheetCloses() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2563,8 +2495,7 @@ class ExplorationActivityTest { fun testExpActivity_openConceptCard_selectNavigationUp_conceptCardCloses() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( - internalProfileId, + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2663,7 +2594,6 @@ class ExplorationActivityTest { } private fun createExplorationActivityIntent( - internalProfileId: Int, classroomId: String, topicId: String, storyId: String, @@ -2674,7 +2604,6 @@ class ExplorationActivityTest { // typical route to playing an exploration. return ExplorationActivity.createExplorationActivityIntent( ApplicationProvider.getApplicationContext(), - ProfileId.newBuilder().apply { internalId = internalProfileId }.build(), classroomId, topicId, storyId, diff --git a/app/src/sharedTest/java/org/oppia/android/app/profileprogress/ProfileProgressFragmentTest.kt b/app/src/sharedTest/java/org/oppia/android/app/profileprogress/ProfileProgressFragmentTest.kt index dd3d4d3e0de..531f64ddbdd 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/profileprogress/ProfileProgressFragmentTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/profileprogress/ProfileProgressFragmentTest.kt @@ -684,7 +684,6 @@ class ProfileProgressFragmentTest { ) val recentlyPlayedActivityParams = RecentlyPlayedActivityParams .newBuilder() - .setProfileId(ProfileId.newBuilder().setInternalId(internalProfileId).build()) .setActivityTitle(RecentlyPlayedActivityTitle.STORIES_FOR_YOU) .build() clickProfileProgressItem(itemPosition = 0, targetViewId = R.id.view_all_text_view) @@ -720,7 +719,6 @@ class ProfileProgressFragmentTest { ) val recentlyPlayedActivityParams = RecentlyPlayedActivityParams .newBuilder() - .setProfileId(ProfileId.newBuilder().setInternalId(internalProfileId).build()) .setActivityTitle(RecentlyPlayedActivityTitle.RECENTLY_PLAYED_STORIES) .build() clickProfileProgressItem(itemPosition = 0, targetViewId = R.id.view_all_text_view) diff --git a/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentTest.kt b/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentTest.kt index aaf51755696..108e573aa19 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentTest.kt @@ -288,7 +288,6 @@ class ResumeLessonFragmentTest { ResumeLessonFragment.RESUME_LESSON_FRAGMENT_ARGUMENTS_KEY, ResumeLessonFragmentArguments.getDefaultInstance() ) - val receivedProfileId = args.profileId val receivedClassroomId = args.classroomId val receivedTopicId = args.topicId val receivedStoryId = args.storyId @@ -296,8 +295,6 @@ class ResumeLessonFragmentTest { val receivedParentScreen = args.parentScreen val receivedCheckpoint = args.checkpoint - assertThat(receivedProfileId) - .isEqualTo(ProfileId.newBuilder().apply { internalId = 1 }.build()) assertThat(receivedClassroomId).isEqualTo(TEST_CLASSROOM_ID_1) assertThat(receivedTopicId).isEqualTo(FRACTIONS_TOPIC_ID) assertThat(receivedStoryId).isEqualTo(FRACTIONS_STORY_ID_0) diff --git a/app/src/sharedTest/java/org/oppia/android/app/story/StoryActivityTest.kt b/app/src/sharedTest/java/org/oppia/android/app/story/StoryActivityTest.kt index 117640c66e7..02217f5444c 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/story/StoryActivityTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/story/StoryActivityTest.kt @@ -207,7 +207,6 @@ class StoryActivityTest { storyId = TEST_STORY_ID_0 topicId = TEST_TOPIC_ID_0 classroomId = TEST_CLASSROOM_ID_0 - profileId = ProfileId.newBuilder().apply { internalId = internalProfileId }.build() parentScreen = ExplorationActivityParams.ParentScreen.STORY_SCREEN isCheckpointingEnabled = true }.build() diff --git a/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyActivityTest.kt b/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyActivityTest.kt index da441f223be..9d475307dc3 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyActivityTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyActivityTest.kt @@ -106,8 +106,6 @@ class SurveyActivityTest { @get:Rule val oppiaTestRule = OppiaTestRule() - private val profileId = ProfileId.newBuilder().setInternalId(0).build() - @Inject lateinit var testCoroutineDispatchers: TestCoroutineDispatchers @@ -136,7 +134,7 @@ class SurveyActivityTest { @Test fun testSurveyActivity_hasCorrectActivityLabel() { - activityTestRule.launchActivity(createSurveyActivityIntent(profileId)) + activityTestRule.launchActivity(createSurveyActivityIntent()) val title = activityTestRule.activity.title // Verify that the activity label is correct as a proxy to verify TalkBack will announce the @@ -158,7 +156,7 @@ class SurveyActivityTest { .inject(this) } - private fun createSurveyActivityIntent(profileId: ProfileId): Intent { + private fun createSurveyActivityIntent(): Intent { return SurveyActivity.createSurveyActivityIntent( context, TEST_TOPIC_ID_0, TEST_EXPLORATION_ID_2 ) diff --git a/app/src/test/java/org/oppia/android/app/activity/route/ActivityRouterTest.kt b/app/src/test/java/org/oppia/android/app/activity/route/ActivityRouterTest.kt index d1f06461035..edf3c773b5b 100644 --- a/app/src/test/java/org/oppia/android/app/activity/route/ActivityRouterTest.kt +++ b/app/src/test/java/org/oppia/android/app/activity/route/ActivityRouterTest.kt @@ -129,7 +129,6 @@ class ActivityRouterTest { val recentlyPlayedActivityParams = RecentlyPlayedActivityParams .newBuilder() - .setProfileId(ProfileId.newBuilder().setInternalId(internalProfileId).build()) .setActivityTitle(RecentlyPlayedActivityTitle.RECENTLY_PLAYED_STORIES).build() activityRouter.routeToScreen( DestinationScreen diff --git a/app/src/test/java/org/oppia/android/app/player/exploration/ExplorationActivityLocalTest.kt b/app/src/test/java/org/oppia/android/app/player/exploration/ExplorationActivityLocalTest.kt index b5059c0892e..29c5ca5ecc2 100644 --- a/app/src/test/java/org/oppia/android/app/player/exploration/ExplorationActivityLocalTest.kt +++ b/app/src/test/java/org/oppia/android/app/player/exploration/ExplorationActivityLocalTest.kt @@ -155,7 +155,6 @@ class ExplorationActivityLocalTest { ) launch( createExplorationActivityIntent( - internalProfileId, TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -190,7 +189,6 @@ class ExplorationActivityLocalTest { launch( createExplorationActivityIntent( - internalProfileId, TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -244,7 +242,6 @@ class ExplorationActivityLocalTest { launch( createExplorationActivityIntent( - internalProfileId, TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -289,7 +286,6 @@ class ExplorationActivityLocalTest { launch( createExplorationActivityIntent( - internalProfileId, TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -377,7 +373,6 @@ class ExplorationActivityLocalTest { } private fun createExplorationActivityIntent( - internalProfileId: Int, classroomId: String, topicId: String, storyId: String, @@ -385,7 +380,6 @@ class ExplorationActivityLocalTest { ): Intent { return ExplorationActivity.createExplorationActivityIntent( ApplicationProvider.getApplicationContext(), - ProfileId.newBuilder().apply { internalId = internalProfileId }.build(), classroomId, topicId, storyId, diff --git a/app/src/test/java/org/oppia/android/app/testing/RecentlyPlayedSpanTest.kt b/app/src/test/java/org/oppia/android/app/testing/RecentlyPlayedSpanTest.kt index 538f31e64b9..3514c523ee6 100644 --- a/app/src/test/java/org/oppia/android/app/testing/RecentlyPlayedSpanTest.kt +++ b/app/src/test/java/org/oppia/android/app/testing/RecentlyPlayedSpanTest.kt @@ -144,9 +144,7 @@ class RecentlyPlayedSpanTest { @Test fun testRecentlyPlayedSpanTest_checkSpanForItem0_port_hasCorrectSpanCount() { launch( - createRecentlyPlayedActivityIntent( - internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).check( @@ -161,7 +159,7 @@ class RecentlyPlayedSpanTest { @Config(qualifiers = "sw600dp-port") @Test fun testRecentlyPlayedSpanTest_checkSpanForItem0_tablet_hasCorrectSpanCount() { - launch(createRecentlyPlayedActivityIntent(internalProfileId)).use { + launch(createRecentlyPlayedActivityIntent()).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).check( hasGridItemCount( @@ -176,9 +174,7 @@ class RecentlyPlayedSpanTest { @Test fun testRecentlyPlayedSpanTest_checkSpanForItem0_landscape_hasCorrectSpanCount() { launch( - createRecentlyPlayedActivityIntent( - internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).check( @@ -194,9 +190,7 @@ class RecentlyPlayedSpanTest { @Test fun testRecentlyPlayedSpanTest_checkSpanForItem0_landscape_tablet_hasCorrectSpanCount() { launch( - createRecentlyPlayedActivityIntent( - internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).check( @@ -212,9 +206,7 @@ class RecentlyPlayedSpanTest { @Test fun testRecentlyPlayedSpanTest_checkSpanForItem2_port_hasCorrectSpanCount() { launch( - createRecentlyPlayedActivityIntent( - internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).check( @@ -230,9 +222,7 @@ class RecentlyPlayedSpanTest { @Test fun testRecentlyPlayedSpanTest_checkSpanForItem2_tablet_hasCorrectSpanCount() { launch( - createRecentlyPlayedActivityIntent( - internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).check( @@ -248,9 +238,7 @@ class RecentlyPlayedSpanTest { @Test fun testRecentlyPlayedSpanTest_checkSpanForItem2_landscape_hasCorrectSpanCount() { launch( - createRecentlyPlayedActivityIntent( - internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).check( @@ -266,9 +254,7 @@ class RecentlyPlayedSpanTest { @Test fun testRecentlyPlayedSpanTest_checkSpanForItem2_landscape_tablet_hasCorrectSpanCount() { launch( - createRecentlyPlayedActivityIntent( - internalProfileId - ) + createRecentlyPlayedActivityIntent() ).use { testCoroutineDispatchers.runCurrent() onView(withId(R.id.ongoing_story_recycler_view)).check( @@ -280,11 +266,10 @@ class RecentlyPlayedSpanTest { } } - private fun createRecentlyPlayedActivityIntent(profileId: Int): Intent { + private fun createRecentlyPlayedActivityIntent(): Intent { val recentlyPlayedActivityParams = RecentlyPlayedActivityParams .newBuilder() - .setProfileId(ProfileId.newBuilder().setInternalId(profileId).build()) .build() return RecentlyPlayedActivity.createRecentlyPlayedActivityIntent( context, diff --git a/config/kitkat_main_dex_class_list.txt b/config/kitkat_main_dex_class_list.txt new file mode 100644 index 00000000000..ea2de317d21 --- /dev/null +++ b/config/kitkat_main_dex_class_list.txt @@ -0,0 +1,50 @@ +androidx/multidex/BuildConfig.class +androidx/multidex/MultiDex$V19.class +androidx/multidex/MultiDex.class +androidx/multidex/MultiDexApplication.class +androidx/multidex/MultiDexExtractor$1.class +androidx/multidex/MultiDexExtractor$ExtractedDex.class +androidx/multidex/MultiDexExtractor.class +androidx/multidex/ZipUtil$CentralDirectory.class +androidx/multidex/ZipUtil.class +androidx/work/Configuration$Provider.class +androidx/work/Configuration.class +androidx/work/WorkManager.class +javax/inject/Provider.class +kotlin/Function.class +kotlin/jvm/functions/Function0.class +kotlin/jvm/internal/FunctionBase.class +kotlin/jvm/internal/Intrinsics.class +kotlin/jvm/internal/Lambda.class +kotlin/Lazy.class +kotlin/LazyKt.class +kotlin/LazyKt__LazyJVMKt.class +kotlin/LazyKt__LazyKt.class +kotlin/SynchronizedLazyImpl.class +kotlin/UNINITIALIZED_VALUE.class +org/oppia/android/app/activity/ActivityComponent.class +org/oppia/android/app/activity/ActivityComponentFactory.class +org/oppia/android/app/activity/ActivityComponentImpl$Builder.class +org/oppia/android/app/activity/ActivityComponentImpl.class +org/oppia/android/app/application/ApplicationComponent$Builder.class +org/oppia/android/app/application/ApplicationComponent.class +org/oppia/android/app/application/ApplicationInjector.class +org/oppia/android/app/application/ApplicationInjectorProvider$DefaultImpls.class +org/oppia/android/app/application/ApplicationInjectorProvider.class +org/oppia/android/app/application/ApplicationModule.class +org/oppia/android/app/application/dev/DaggerDeveloperApplicationComponent$ActivityComponentImplBuilder.class +org/oppia/android/app/application/dev/DaggerDeveloperApplicationComponent$Builder.class +org/oppia/android/app/application/dev/DaggerDeveloperApplicationComponent.class +org/oppia/android/app/application/dev/DeveloperOppiaApplication.class +org/oppia/android/app/translation/AppLanguageActivityInjector.class +org/oppia/android/app/translation/AppLanguageActivityInjectorProvider.class +org/oppia/android/app/translation/AppLanguageApplicationInjector.class +org/oppia/android/app/translation/AppLanguageApplicationInjectorProvider.class +org/oppia/android/app/utility/datetime/DateTimeUtil$Injector.class +org/oppia/android/domain/locale/LocaleApplicationInjector.class +org/oppia/android/domain/locale/LocaleApplicationInjectorProvider.class +org/oppia/android/domain/oppialogger/ApplicationStartupListener.class +org/oppia/android/util/data/DataProvidersInjector.class +org/oppia/android/util/data/DataProvidersInjectorProvider.class +org/oppia/android/util/system/OppiaClockInjector.class +org/oppia/android/util/system/OppiaClockInjectorProvider.class From 074876536e84fb4dbe605c32b55084220ef02e13 Mon Sep 17 00:00:00 2001 From: jainv4156 Date: Wed, 26 Feb 2025 23:20:15 +0530 Subject: [PATCH 05/11] Updated commit without unwanted file --- .../ExplorationFragmentPresenter.kt | 3 +- .../android/app/player/state/StateFragment.kt | 2 + .../StateFragmentTestActivityPresenter.kt | 2 +- .../exploration/ExplorationActivityTest.kt | 104 +++++++++--------- .../resumelesson/ResumeLessonFragmentTest.kt | 1 - .../android/app/story/StoryActivityTest.kt | 1 - .../android/app/survey/SurveyActivityTest.kt | 1 - .../app/activity/route/ActivityRouterTest.kt | 1 - 8 files changed, 57 insertions(+), 58 deletions(-) diff --git a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt index 5ce964aac1b..473c7affa54 100755 --- a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt @@ -51,11 +51,12 @@ class ExplorationFragmentPresenter @Inject constructor( /** Handles the [Fragment.onCreateView] portion of [ExplorationFragment]'s lifecycle. */ fun handleCreateView(inflater: LayoutInflater, container: ViewGroup?): View { val args = retrieveArguments() + val profileId = activity.intent.extractCurrentUserProfileId().internalId val binding = ExplorationFragmentBinding.inflate(inflater, container, /* attachToRoot= */ false).root val stateFragment = StateFragment.newInstance( - args.topicId, args.storyId, args.explorationId + profileId,args.topicId, args.storyId, args.explorationId ) logPracticeFragmentEvent(args.classroomId, args.topicId, args.storyId, args.explorationId) if (getStateFragment() == null) { diff --git a/app/src/main/java/org/oppia/android/app/player/state/StateFragment.kt b/app/src/main/java/org/oppia/android/app/player/state/StateFragment.kt index 458593cca20..df5e8a07dde 100755 --- a/app/src/main/java/org/oppia/android/app/player/state/StateFragment.kt +++ b/app/src/main/java/org/oppia/android/app/player/state/StateFragment.kt @@ -55,12 +55,14 @@ class StateFragment : * @return a new instance of [StateFragment]. */ fun newInstance( + internalProfileId: Int, topicId: String, storyId: String, explorationId: String ): StateFragment { val args = StateFragmentArguments.newBuilder().apply { + this.internalProfileId = internalProfileId this.topicId = topicId this.storyId = storyId this.explorationId = explorationId diff --git a/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt index 02a3b5cffe8..c91f68b780b 100644 --- a/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt @@ -140,7 +140,7 @@ class StateFragmentTestActivityPresenter @Inject constructor( ) { stateFragmentTestViewModel.hasExplorationStarted.set(true) - val stateFragment = StateFragment.newInstance(topicId, storyId, explorationId) + val stateFragment = StateFragment.newInstance(profileId,topicId, storyId, explorationId) activity.supportFragmentManager.beginTransaction().add( R.id.state_fragment_placeholder, stateFragment diff --git a/app/src/sharedTest/java/org/oppia/android/app/player/exploration/ExplorationActivityTest.kt b/app/src/sharedTest/java/org/oppia/android/app/player/exploration/ExplorationActivityTest.kt index 5abf840e54b..1f69cf59407 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/player/exploration/ExplorationActivityTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/player/exploration/ExplorationActivityTest.kt @@ -322,7 +322,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() fakeAccessibilityService.setScreenReaderEnabled(false) explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -345,7 +345,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() fakeAccessibilityService.setScreenReaderEnabled(true) explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -368,7 +368,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() fakeAccessibilityService.setScreenReaderEnabled(false) explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -391,7 +391,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() fakeAccessibilityService.setScreenReaderEnabled(true) explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -412,7 +412,7 @@ class ExplorationActivityTest { @Test fun testExploration_configurationChange_toolbarTitle_isDisplayedSuccessfully() { launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -439,7 +439,7 @@ class ExplorationActivityTest { fun testExploration_toolbarAudioIcon_defaultContentDescription_isCorrect() { setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -468,7 +468,7 @@ class ExplorationActivityTest { markSpotlightSeen(Spotlight.FeatureCase.LESSONS_BACK_BUTTON) markSpotlightSeen(Spotlight.FeatureCase.VOICEOVER_PLAY_ICON) launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -498,7 +498,7 @@ class ExplorationActivityTest { markSpotlightSeen(Spotlight.FeatureCase.LESSONS_BACK_BUTTON) markSpotlightSeen(Spotlight.FeatureCase.VOICEOVER_PLAY_ICON) launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -521,7 +521,7 @@ class ExplorationActivityTest { } launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -548,7 +548,7 @@ class ExplorationActivityTest { fun testBackButtonSpotlight_setToShowOnFirstLogin_notSeen_checkSpotlightIsShown() { setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -575,7 +575,7 @@ class ExplorationActivityTest { markSpotlightSeen(Spotlight.FeatureCase.VOICEOVER_PLAY_ICON) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1008,7 +1008,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -1052,7 +1052,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -1097,7 +1097,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -1137,7 +1137,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1200,7 +1200,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -1245,7 +1245,7 @@ class ExplorationActivityTest { fun testExplorationActivity_loadExplorationFragment_hasDummyString() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1261,7 +1261,7 @@ class ExplorationActivityTest { fun testExplorationActivity_onBackPressed_showsUnsavedExplorationDialog() { setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1291,7 +1291,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1321,7 +1321,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -1360,7 +1360,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1389,7 +1389,7 @@ class ExplorationActivityTest { fun testExpActivity_showUnsavedExpDialog_leave_closesExpActivity() { setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1421,7 +1421,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1462,7 +1462,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1495,7 +1495,7 @@ class ExplorationActivityTest { fun testExpActivity_progressSaved_onBackPressed_closesExpActivity() { setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1522,7 +1522,7 @@ class ExplorationActivityTest { fun testExpActivity_progressSaved_onToolbarClosePressed_closesExpActivity() { setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1556,7 +1556,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1597,7 +1597,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1634,7 +1634,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1672,7 +1672,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1712,7 +1712,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1753,7 +1753,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1793,7 +1793,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1845,7 +1845,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1897,7 +1897,7 @@ class ExplorationActivityTest { ) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1939,7 +1939,7 @@ class ExplorationActivityTest { fun testExpActivity_pressBack_whenProgressControllerBroken_stillEndsActivity() { setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -1972,7 +1972,7 @@ class ExplorationActivityTest { fun testExpActivity_startNewExploration_pressBack_logsLessonSavedAdvertentlyEvent() { setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -2003,7 +2003,7 @@ class ExplorationActivityTest { setUpAudioForFractionLesson() markAllSpotlightsSeen() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -2037,7 +2037,7 @@ class ExplorationActivityTest { fun testExpActivity_replayExploration_pressBack_doesNotLogLessonSavedAdvertentlyEvent() { setUpAudioForFractionLesson() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -2068,7 +2068,7 @@ class ExplorationActivityTest { setUpAudioForFractionLesson() markAllSpotlightsSeen() explorationActivityTestRule.launchActivity( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -2103,7 +2103,7 @@ class ExplorationActivityTest { OppiaLanguage.ENGLISH ) launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2134,7 +2134,7 @@ class ExplorationActivityTest { OppiaLanguage.ARABIC ) launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2165,7 +2165,7 @@ class ExplorationActivityTest { OppiaLanguage.ENGLISH ) launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2202,7 +2202,7 @@ class ExplorationActivityTest { fun testExpActivity_showHint_hasCorrectContentDescription() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2245,7 +2245,7 @@ class ExplorationActivityTest { fun testExpActivity_showHint_checkExpandListIconWithScreenReader_isClickable() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2282,7 +2282,7 @@ class ExplorationActivityTest { fun testExpActivity_showHint_checkExpandListIconWithoutScreenReader_isNotClickable() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2324,7 +2324,7 @@ class ExplorationActivityTest { OppiaLanguage.ARABIC ) launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2361,7 +2361,7 @@ class ExplorationActivityTest { fun testExplorationActivity_initialise_openBottomSheet_showsBottomSheet() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2388,7 +2388,7 @@ class ExplorationActivityTest { fun testExplorationActivity_openBottomsheet_selectHelpInBottomsheet_opensHelpActivity() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2426,7 +2426,7 @@ class ExplorationActivityTest { fun testExplorationActivity_openBottomsheet_selectOptionsInBottomsheet_opensOptionsActivity() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2464,7 +2464,7 @@ class ExplorationActivityTest { fun testExplorationActivity_openBottomsheet_selectCloseOption_bottomSheetCloses() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -2495,7 +2495,7 @@ class ExplorationActivityTest { fun testExpActivity_openConceptCard_selectNavigationUp_conceptCardCloses() { markAllSpotlightsSeen() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, diff --git a/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentTest.kt b/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentTest.kt index 108e573aa19..62affec24a8 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentTest.kt @@ -39,7 +39,6 @@ import org.oppia.android.app.devoptions.DeveloperOptionsModule import org.oppia.android.app.devoptions.DeveloperOptionsStarterModule import org.oppia.android.app.model.ExplorationActivityParams import org.oppia.android.app.model.ExplorationCheckpoint -import org.oppia.android.app.model.ProfileId import org.oppia.android.app.model.ReadingTextSize import org.oppia.android.app.model.ResumeLessonFragmentArguments import org.oppia.android.app.player.state.itemviewmodel.SplitScreenInteractionModule diff --git a/app/src/sharedTest/java/org/oppia/android/app/story/StoryActivityTest.kt b/app/src/sharedTest/java/org/oppia/android/app/story/StoryActivityTest.kt index 02217f5444c..fc6a620fa3f 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/story/StoryActivityTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/story/StoryActivityTest.kt @@ -38,7 +38,6 @@ import org.oppia.android.app.application.testing.TestingBuildFlavorModule import org.oppia.android.app.devoptions.DeveloperOptionsModule import org.oppia.android.app.devoptions.DeveloperOptionsStarterModule import org.oppia.android.app.model.ExplorationActivityParams -import org.oppia.android.app.model.ProfileId import org.oppia.android.app.model.ScreenName import org.oppia.android.app.player.exploration.ExplorationActivity import org.oppia.android.app.player.state.itemviewmodel.SplitScreenInteractionModule diff --git a/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyActivityTest.kt b/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyActivityTest.kt index 9d475307dc3..caa3f47be66 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyActivityTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/survey/SurveyActivityTest.kt @@ -27,7 +27,6 @@ import org.oppia.android.app.application.ApplicationStartupListenerModule import org.oppia.android.app.application.testing.TestingBuildFlavorModule import org.oppia.android.app.devoptions.DeveloperOptionsModule import org.oppia.android.app.devoptions.DeveloperOptionsStarterModule -import org.oppia.android.app.model.ProfileId import org.oppia.android.app.model.ScreenName import org.oppia.android.app.player.state.itemviewmodel.SplitScreenInteractionModule import org.oppia.android.app.shim.ViewBindingShimModule diff --git a/app/src/test/java/org/oppia/android/app/activity/route/ActivityRouterTest.kt b/app/src/test/java/org/oppia/android/app/activity/route/ActivityRouterTest.kt index edf3c773b5b..468e5db743e 100644 --- a/app/src/test/java/org/oppia/android/app/activity/route/ActivityRouterTest.kt +++ b/app/src/test/java/org/oppia/android/app/activity/route/ActivityRouterTest.kt @@ -30,7 +30,6 @@ import org.oppia.android.app.devoptions.DeveloperOptionsModule import org.oppia.android.app.devoptions.DeveloperOptionsStarterModule import org.oppia.android.app.home.recentlyplayed.RecentlyPlayedActivity import org.oppia.android.app.model.DestinationScreen -import org.oppia.android.app.model.ProfileId import org.oppia.android.app.model.RecentlyPlayedActivityParams import org.oppia.android.app.model.RecentlyPlayedActivityTitle import org.oppia.android.app.player.state.itemviewmodel.SplitScreenInteractionModule From fe1fedc4dc9c06f78ebc0395d0dd8742aef2f640 Mon Sep 17 00:00:00 2001 From: jainv4156 Date: Wed, 26 Feb 2025 23:22:04 +0530 Subject: [PATCH 06/11] fix lint errors --- .../ExplorationFragmentPresenter.kt | 2 +- .../StateFragmentTestActivityPresenter.kt | 2 +- .../exploration/ExplorationActivityTest.kt | 30 +++++++++---------- 3 files changed, 17 insertions(+), 17 deletions(-) diff --git a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt index 473c7affa54..e3b35c02173 100755 --- a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt @@ -56,7 +56,7 @@ class ExplorationFragmentPresenter @Inject constructor( ExplorationFragmentBinding.inflate(inflater, container, /* attachToRoot= */ false).root val stateFragment = StateFragment.newInstance( - profileId,args.topicId, args.storyId, args.explorationId + profileId, args.topicId, args.storyId, args.explorationId ) logPracticeFragmentEvent(args.classroomId, args.topicId, args.storyId, args.explorationId) if (getStateFragment() == null) { diff --git a/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt index c91f68b780b..b3477ad7018 100644 --- a/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/player/state/testing/StateFragmentTestActivityPresenter.kt @@ -140,7 +140,7 @@ class StateFragmentTestActivityPresenter @Inject constructor( ) { stateFragmentTestViewModel.hasExplorationStarted.set(true) - val stateFragment = StateFragment.newInstance(profileId,topicId, storyId, explorationId) + val stateFragment = StateFragment.newInstance(profileId, topicId, storyId, explorationId) activity.supportFragmentManager.beginTransaction().add( R.id.state_fragment_placeholder, stateFragment diff --git a/app/src/sharedTest/java/org/oppia/android/app/player/exploration/ExplorationActivityTest.kt b/app/src/sharedTest/java/org/oppia/android/app/player/exploration/ExplorationActivityTest.kt index 1f69cf59407..f18933cede0 100644 --- a/app/src/sharedTest/java/org/oppia/android/app/player/exploration/ExplorationActivityTest.kt +++ b/app/src/sharedTest/java/org/oppia/android/app/player/exploration/ExplorationActivityTest.kt @@ -295,7 +295,7 @@ class ExplorationActivityTest { @Test fun testExploration_toolbarTitle_isDisplayedSuccessfully() { launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -595,7 +595,7 @@ class ExplorationActivityTest { } launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -623,7 +623,7 @@ class ExplorationActivityTest { setUpAudioForFractionLesson() markSpotlightSeen(Spotlight.FeatureCase.LESSONS_BACK_BUTTON) launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -651,7 +651,7 @@ class ExplorationActivityTest { setUpAudioForFractionLesson() markSpotlightSeen(Spotlight.FeatureCase.LESSONS_BACK_BUTTON) launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -671,7 +671,7 @@ class ExplorationActivityTest { } launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -698,7 +698,7 @@ class ExplorationActivityTest { markSpotlightSeen(Spotlight.FeatureCase.LESSONS_BACK_BUTTON) setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -725,7 +725,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -753,7 +753,7 @@ class ExplorationActivityTest { fun testExploration_clickAudioIconTwice_contentDescription_changesToDefault() { setUpAudioForFractionLesson() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, FRACTIONS_TOPIC_ID, FRACTIONS_STORY_ID_0, @@ -781,7 +781,7 @@ class ExplorationActivityTest { @Test fun testAudioWithNoVoiceover_openPrototypeExploration_checkAudioButtonIsHidden() { launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -804,7 +804,7 @@ class ExplorationActivityTest { @Test fun testAudioWithNoVoiceover_prototypeExploration_configChange_checkAudioButtonIsHidden() { launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_0, TEST_TOPIC_ID_0, TEST_STORY_ID_0, @@ -830,7 +830,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -860,7 +860,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -890,7 +890,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -921,7 +921,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, @@ -961,7 +961,7 @@ class ExplorationActivityTest { markAllSpotlightsSeen() setUpAudio() launch( - createExplorationActivityIntent( + createExplorationActivityIntent( TEST_CLASSROOM_ID_1, RATIOS_TOPIC_ID, RATIOS_STORY_ID_0, From a4c474e486b42a0f51c8ad5340559834b4bdedc9 Mon Sep 17 00:00:00 2001 From: jainv4156 <123441149+jainv4156@users.noreply.github.com> Date: Wed, 26 Feb 2025 23:24:26 +0530 Subject: [PATCH 07/11] Delete config/kitkat_main_dex_class_list.txt --- config/kitkat_main_dex_class_list.txt | 50 --------------------------- 1 file changed, 50 deletions(-) delete mode 100644 config/kitkat_main_dex_class_list.txt diff --git a/config/kitkat_main_dex_class_list.txt b/config/kitkat_main_dex_class_list.txt deleted file mode 100644 index ea2de317d21..00000000000 --- a/config/kitkat_main_dex_class_list.txt +++ /dev/null @@ -1,50 +0,0 @@ -androidx/multidex/BuildConfig.class -androidx/multidex/MultiDex$V19.class -androidx/multidex/MultiDex.class -androidx/multidex/MultiDexApplication.class -androidx/multidex/MultiDexExtractor$1.class -androidx/multidex/MultiDexExtractor$ExtractedDex.class -androidx/multidex/MultiDexExtractor.class -androidx/multidex/ZipUtil$CentralDirectory.class -androidx/multidex/ZipUtil.class -androidx/work/Configuration$Provider.class -androidx/work/Configuration.class -androidx/work/WorkManager.class -javax/inject/Provider.class -kotlin/Function.class -kotlin/jvm/functions/Function0.class -kotlin/jvm/internal/FunctionBase.class -kotlin/jvm/internal/Intrinsics.class -kotlin/jvm/internal/Lambda.class -kotlin/Lazy.class -kotlin/LazyKt.class -kotlin/LazyKt__LazyJVMKt.class -kotlin/LazyKt__LazyKt.class -kotlin/SynchronizedLazyImpl.class -kotlin/UNINITIALIZED_VALUE.class -org/oppia/android/app/activity/ActivityComponent.class -org/oppia/android/app/activity/ActivityComponentFactory.class -org/oppia/android/app/activity/ActivityComponentImpl$Builder.class -org/oppia/android/app/activity/ActivityComponentImpl.class -org/oppia/android/app/application/ApplicationComponent$Builder.class -org/oppia/android/app/application/ApplicationComponent.class -org/oppia/android/app/application/ApplicationInjector.class -org/oppia/android/app/application/ApplicationInjectorProvider$DefaultImpls.class -org/oppia/android/app/application/ApplicationInjectorProvider.class -org/oppia/android/app/application/ApplicationModule.class -org/oppia/android/app/application/dev/DaggerDeveloperApplicationComponent$ActivityComponentImplBuilder.class -org/oppia/android/app/application/dev/DaggerDeveloperApplicationComponent$Builder.class -org/oppia/android/app/application/dev/DaggerDeveloperApplicationComponent.class -org/oppia/android/app/application/dev/DeveloperOppiaApplication.class -org/oppia/android/app/translation/AppLanguageActivityInjector.class -org/oppia/android/app/translation/AppLanguageActivityInjectorProvider.class -org/oppia/android/app/translation/AppLanguageApplicationInjector.class -org/oppia/android/app/translation/AppLanguageApplicationInjectorProvider.class -org/oppia/android/app/utility/datetime/DateTimeUtil$Injector.class -org/oppia/android/domain/locale/LocaleApplicationInjector.class -org/oppia/android/domain/locale/LocaleApplicationInjectorProvider.class -org/oppia/android/domain/oppialogger/ApplicationStartupListener.class -org/oppia/android/util/data/DataProvidersInjector.class -org/oppia/android/util/data/DataProvidersInjectorProvider.class -org/oppia/android/util/system/OppiaClockInjector.class -org/oppia/android/util/system/OppiaClockInjectorProvider.class From 45257da323b77648373edd52b4997bdffe261c64 Mon Sep 17 00:00:00 2001 From: Ayush Yadav <143514610+theayushyadav11@users.noreply.github.com> Date: Tue, 4 Mar 2025 05:32:31 +0530 Subject: [PATCH 08/11] Fixes #4098: Added tests for ComparableOperationSubjectTest (#5673) Fixes #4098: This pull request includes changes to add tests for the `ComparableOperationSubject` class and update the build configuration to include these tests. The most important changes are: ### Test Additions: * Added tests for `ComparableOperationSubject` ### Build Configuration: * Added a new `oppia_android_test` target for `ComparableOperationSubjectTest` in the `BUILD.bazel` file to include the necessary dependencies and configuration for running the tests. #### Screenshot of the passing tests. ![image](https://github.com/user-attachments/assets/138a2460-12ff-46d2-8d34-3e503960a381) ## Essential Checklist - [x] The PR title and explanation each start with "Fix #bugnum: " (If this PR fixes part of an issue, prefix the title with "Fix part of #bugnum: ...".) - [x] Any changes to [scripts/assets](https://github.com/oppia/oppia-android/tree/develop/scripts/assets) files have their rationale included in the PR explanation. - [x] The PR follows the [style guide](https://github.com/oppia/oppia-android/wiki/Coding-style-guide). - [x] The PR does not contain any unnecessary code changes from Android Studio ([reference](https://github.com/oppia/oppia-android/wiki/Guidance-on-submitting-a-PR#undo-unnecessary-changes)). - [x] The PR is made from a branch that's **not** called "develop" and is up-to-date with "develop". - [x] The PR is **assigned** to the appropriate reviewers ([reference](https://github.com/oppia/oppia-android/wiki/Guidance-on-submitting-a-PR#clarification-regarding-assignees-and-reviewers-section)). --------- Co-authored-by: theayushyadav11 --- scripts/assets/test_file_exemptions.textproto | 4 - .../math/ComparableOperationSubject.kt | 2 - .../oppia/android/testing/math/BUILD.bazel | 16 + .../math/ComparableOperationSubjectTest.kt | 431 ++++++++++++++++++ 4 files changed, 447 insertions(+), 6 deletions(-) create mode 100644 testing/src/test/java/org/oppia/android/testing/math/ComparableOperationSubjectTest.kt diff --git a/scripts/assets/test_file_exemptions.textproto b/scripts/assets/test_file_exemptions.textproto index 2b4731054d5..366454b66b3 100644 --- a/scripts/assets/test_file_exemptions.textproto +++ b/scripts/assets/test_file_exemptions.textproto @@ -4098,10 +4098,6 @@ test_file_exemption { exempted_file_path: "testing/src/main/java/org/oppia/android/testing/logging/SyncStatusTestModule.kt" override_min_coverage_percent_required: 0 } -test_file_exemption { - exempted_file_path: "testing/src/main/java/org/oppia/android/testing/math/ComparableOperationSubject.kt" - test_file_not_required: true -} test_file_exemption { exempted_file_path: "testing/src/main/java/org/oppia/android/testing/mockito/MockitoKotlinHelper.kt" test_file_not_required: true diff --git a/testing/src/main/java/org/oppia/android/testing/math/ComparableOperationSubject.kt b/testing/src/main/java/org/oppia/android/testing/math/ComparableOperationSubject.kt index 06dd8bae7ba..cddce924cdb 100644 --- a/testing/src/main/java/org/oppia/android/testing/math/ComparableOperationSubject.kt +++ b/testing/src/main/java/org/oppia/android/testing/math/ComparableOperationSubject.kt @@ -12,8 +12,6 @@ import org.oppia.android.app.model.ComparableOperation.ComparisonTypeCase import org.oppia.android.app.model.Real import org.oppia.android.testing.math.RealSubject.Companion.assertThat -// TODO(#4098): Add tests for this class. - /** * Truth subject for verifying properties of [ComparableOperation]s. * diff --git a/testing/src/test/java/org/oppia/android/testing/math/BUILD.bazel b/testing/src/test/java/org/oppia/android/testing/math/BUILD.bazel index cdc91cd8b0f..dce7fbafab7 100644 --- a/testing/src/test/java/org/oppia/android/testing/math/BUILD.bazel +++ b/testing/src/test/java/org/oppia/android/testing/math/BUILD.bazel @@ -112,3 +112,19 @@ oppia_android_test( "//third_party:robolectric_android-all", ], ) + +oppia_android_test( + name = "ComparableOperationSubjectTest", + srcs = ["ComparableOperationSubjectTest.kt"], + custom_package = "org.oppia.android.testing.math", + test_class = "org.oppia.android.testing.math.ComparableOperationSubjectTest", + test_manifest = "//testing:test_manifest", + deps = [ + "//model/src/main/proto:math_java_proto_lite", + "//testing/src/main/java/org/oppia/android/testing/math:comparable_operation_subject", + "//testing/src/main/java/org/oppia/android/testing/robolectric:test_module", + "//third_party:com_google_truth_truth", + "//third_party:junit_junit", + "//third_party:robolectric_android-all", + ], +) diff --git a/testing/src/test/java/org/oppia/android/testing/math/ComparableOperationSubjectTest.kt b/testing/src/test/java/org/oppia/android/testing/math/ComparableOperationSubjectTest.kt new file mode 100644 index 00000000000..ca959aa9647 --- /dev/null +++ b/testing/src/test/java/org/oppia/android/testing/math/ComparableOperationSubjectTest.kt @@ -0,0 +1,431 @@ +package org.oppia.android.testing.math + +import org.junit.Assert.assertThrows +import org.junit.Test +import org.junit.runner.RunWith +import org.junit.runners.JUnit4 +import org.oppia.android.app.model.ComparableOperation +import org.oppia.android.app.model.Real +import org.oppia.android.testing.math.ComparableOperationSubject.Companion.assertThat + +/** Tests for [ComparableOperationSubject]. */ +@RunWith(JUnit4::class) +class ComparableOperationSubjectTest { + + private fun createConstantOperation(value: Int): ComparableOperation { + return ComparableOperation.newBuilder() + .setConstantTerm(Real.newBuilder().setInteger(value)) + .build() + } + + private fun createVariableOperation(name: String): ComparableOperation { + return ComparableOperation.newBuilder() + .setVariableTerm(name) + .build() + } + + private fun createCommutativeAccumulation( + type: ComparableOperation.CommutativeAccumulation.AccumulationType, + vararg operations: ComparableOperation + ): ComparableOperation { + val accumulation = ComparableOperation.CommutativeAccumulation.newBuilder() + .setAccumulationType(type) + operations.forEach { accumulation.addCombinedOperations(it) } + return ComparableOperation.newBuilder() + .setCommutativeAccumulation(accumulation) + .build() + } + + @Test + fun testComparableOperationSubject_hasStructureThatMatches() { + val operation = createConstantOperation(42) + + assertThat(operation).hasStructureThatMatches { + constantTerm { + withValueThat().isIntegerThat().isEqualTo(42) + } + } + } + + @Test + fun testComparableOperationSubject_failsWithInvalidStructure() { + val operation = createConstantOperation(42) + assertThrows(AssertionError::class.java) { + assertThat(operation).hasStructureThatMatches { + variableTerm { + withNameThat().isEqualTo("x") + } + } + } + } + + @Test + fun testComparableOperationSubject_hasNegatedProperty_matchesFalse() { + val operation = createConstantOperation(42) + + assertThat(operation).hasStructureThatMatches { + hasNegatedPropertyThat().isFalse() + } + } + + @Test + fun testComparableOperationSubject_hasNegatedPropertyThat_matchesTrue() { + val operation = ComparableOperation.newBuilder() + .setConstantTerm(Real.newBuilder().setInteger(42)) + .setIsNegated(true) + .build() + + assertThat(operation).hasStructureThatMatches { + hasNegatedPropertyThat().isTrue() + } + } + + @Test + fun testComparableOperationSubject_hasInvertedProperty_matchesFalse() { + val operation = createConstantOperation(42) + + assertThat(operation).hasStructureThatMatches { + hasInvertedPropertyThat().isFalse() + } + } + + @Test + fun testComparableOperationSubject_hasInvertedProperty_matchesTrue() { + val operation = ComparableOperation.newBuilder() + .setConstantTerm(Real.newBuilder().setInteger(42)) + .setIsInverted(true) + .build() + + assertThat(operation).hasStructureThatMatches { + hasInvertedPropertyThat().isTrue() + } + } + + @Test + fun testComparableOperationSubject_commutativeAccumulation_withValidSummation() { + val operation = createCommutativeAccumulation( + ComparableOperation.CommutativeAccumulation.AccumulationType.SUMMATION, + createConstantOperation(1), + createConstantOperation(2) + ) + + assertThat(operation).hasStructureThatMatches { + commutativeAccumulationWithType( + ComparableOperation.CommutativeAccumulation + .AccumulationType.SUMMATION + ) { + hasOperandCountThat().isEqualTo(2) + index(0) { + constantTerm { + withValueThat().isIntegerThat().isEqualTo(1) + } + } + index(1) { + constantTerm { + withValueThat().isIntegerThat().isEqualTo(2) + } + } + } + } + } + + @Test + fun testComparableOperationSubject_withEmpty_commutativeAccumulation_hasCorrectStructre() { + val operation = createCommutativeAccumulation( + ComparableOperation.CommutativeAccumulation.AccumulationType.SUMMATION + ) + + assertThat(operation).hasStructureThatMatches { + commutativeAccumulationWithType( + ComparableOperation.CommutativeAccumulation + .AccumulationType.SUMMATION + ) { + hasOperandCountThat().isEqualTo(0) + } + } + } + + @Test + fun testComparableOperationSubject_commutativeAccumulation_failsWithInvalidType() { + val operation = createConstantOperation(42) + assertThrows(AssertionError::class.java) { + assertThat(operation).hasStructureThatMatches { + commutativeAccumulationWithType( + ComparableOperation.CommutativeAccumulation + .AccumulationType.SUMMATION + ) { + hasOperandCountThat().isEqualTo(0) + } + } + } + } + + @Test + fun testComparableOperationSubject_commutativeAccumulation_failsWithInvalidIndex() { + val operation = createCommutativeAccumulation( + ComparableOperation.CommutativeAccumulation.AccumulationType.SUMMATION, + createConstantOperation(1) + ) + assertThrows(IndexOutOfBoundsException::class.java) { + assertThat(operation).hasStructureThatMatches { + commutativeAccumulationWithType( + ComparableOperation.CommutativeAccumulation + .AccumulationType.SUMMATION + ) { + index(1) { } + } + } + } + } + + @Test + fun testComparableOperationSubject_matchesWithValidOperation() { + val operation = ComparableOperation.newBuilder() + .setNonCommutativeOperation( + ComparableOperation.NonCommutativeOperation.newBuilder() + .setExponentiation( + ComparableOperation.NonCommutativeOperation.BinaryOperation.newBuilder() + .setLeftOperand(createConstantOperation(2)) + .setRightOperand(createConstantOperation(3)) + ) + ) + .build() + + assertThat(operation).hasStructureThatMatches { + nonCommutativeOperation { + exponentiation { + leftOperand { + constantTerm { + withValueThat().isIntegerThat().isEqualTo(2) + } + } + rightOperand { + constantTerm { + withValueThat().isIntegerThat().isEqualTo(3) + } + } + } + } + } + } + + @Test + fun testComparableOperationSubject_exponentiation_failsWithInvalidOperation() { + val operation = ComparableOperation.newBuilder() + .setNonCommutativeOperation( + ComparableOperation.NonCommutativeOperation.newBuilder() + .setSquareRoot(createConstantOperation(4)) + ) + .build() + assertThrows(AssertionError::class.java) { + assertThat(operation).hasStructureThatMatches { + nonCommutativeOperation { + exponentiation { } + } + } + } + } + + @Test + fun testComparableOperationSubject_squareRoot_withValidOperation_hasCorrectStructure() { + val operation = ComparableOperation.newBuilder() + .setNonCommutativeOperation( + ComparableOperation.NonCommutativeOperation.newBuilder() + .setSquareRoot(createConstantOperation(4)) + ) + .build() + + assertThat(operation).hasStructureThatMatches { + nonCommutativeOperation { + squareRootWithArgument { + constantTerm { + withValueThat().isIntegerThat().isEqualTo(4) + } + } + } + } + } + + @Test + fun testComparableOperationSubject_squareRoot_failsWithInvalidOperation() { + val operation = ComparableOperation.newBuilder() + .setNonCommutativeOperation( + ComparableOperation.NonCommutativeOperation.newBuilder() + .setExponentiation( + ComparableOperation.NonCommutativeOperation.BinaryOperation.newBuilder() + .setLeftOperand(createConstantOperation(2)) + .setRightOperand(createConstantOperation(3)) + ) + ) + .build() + assertThrows(AssertionError::class.java) { + assertThat(operation).hasStructureThatMatches { + nonCommutativeOperation { + squareRootWithArgument { } + } + } + } + } + + @Test + fun testComparableOperationSubject_binaryOperation_failsWithInvalidLeftOperand() { + val operation = ComparableOperation.newBuilder() + .setNonCommutativeOperation( + ComparableOperation.NonCommutativeOperation.newBuilder() + .setExponentiation( + ComparableOperation.NonCommutativeOperation.BinaryOperation.newBuilder() + .setRightOperand(createConstantOperation(3)) + ) + ) + .build() + assertThrows(AssertionError::class.java) { + assertThat(operation).hasStructureThatMatches { + nonCommutativeOperation { + exponentiation { + leftOperand { + constantTerm { + withValueThat().isIntegerThat().isEqualTo(2) + } + } + } + } + } + } + } + + @Test + fun testComparableOperationSubject_binaryOperation_failsWithInvalidRightOperand() { + val operation = ComparableOperation.newBuilder() + .setNonCommutativeOperation( + ComparableOperation.NonCommutativeOperation.newBuilder() + .setExponentiation( + ComparableOperation.NonCommutativeOperation.BinaryOperation.newBuilder() + .setLeftOperand(createConstantOperation(2)) + ) + ) + .build() + assertThrows(AssertionError::class.java) { + assertThat(operation).hasStructureThatMatches { + nonCommutativeOperation { + exponentiation { + rightOperand { + constantTerm { + withValueThat().isIntegerThat().isEqualTo(3) + } + } + } + } + } + } + } + + @Test + fun testComparableOperationSubject_checksConstantTerm_withValidValue() { + val operation = createConstantOperation(42) + + assertThat(operation).hasStructureThatMatches { + constantTerm { + withValueThat().isIntegerThat().isEqualTo(42) + } + } + } + + @Test + fun testComparableOperationSubject_constantTerm_failsWithInvalidType() { + val operation = createVariableOperation("x") + assertThrows(AssertionError::class.java) { + assertThat(operation).hasStructureThatMatches { + constantTerm { + withValueThat().isIntegerThat().isEqualTo(42) + } + } + } + } + + @Test + fun testComparableOperationSubject_withVariableTerm_hasExpectedName() { + val operation = createVariableOperation("x") + + assertThat(operation).hasStructureThatMatches { + variableTerm { + withNameThat().isEqualTo("x") + } + } + } + + @Test + fun testComparableOperationSubject_variableTerm_failWithInvalidType() { + val operation = createConstantOperation(42) + + assertThrows(AssertionError::class.java) { + assertThat(operation).hasStructureThatMatches { + variableTerm { + withNameThat().isEqualTo("x") + } + } + } + } + + @Test + fun testComparableOperationSubject_complexExpression_withNestedOperations_hasCorrectStructure() { + val operation = createCommutativeAccumulation( + ComparableOperation.CommutativeAccumulation.AccumulationType.PRODUCT, + ComparableOperation.newBuilder() + .setNonCommutativeOperation( + ComparableOperation.NonCommutativeOperation.newBuilder() + .setExponentiation( + ComparableOperation.NonCommutativeOperation.BinaryOperation.newBuilder() + .setLeftOperand(createConstantOperation(2)) + .setRightOperand(createConstantOperation(3)) + ) + ) + .build(), + ComparableOperation.newBuilder() + .setNonCommutativeOperation( + ComparableOperation.NonCommutativeOperation.newBuilder() + .setSquareRoot(createConstantOperation(4)) + ) + .build(), + createVariableOperation("x") + ) + + assertThat(operation).hasStructureThatMatches { + commutativeAccumulationWithType( + ComparableOperation.CommutativeAccumulation + .AccumulationType.PRODUCT + ) { + hasOperandCountThat().isEqualTo(3) + index(0) { + nonCommutativeOperation { + exponentiation { + leftOperand { + constantTerm { + withValueThat().isIntegerThat().isEqualTo(2) + } + } + rightOperand { + constantTerm { + withValueThat().isIntegerThat().isEqualTo(3) + } + } + } + } + } + index(1) { + nonCommutativeOperation { + squareRootWithArgument { + constantTerm { + withValueThat().isIntegerThat().isEqualTo(4) + } + } + } + } + index(2) { + variableTerm { + withNameThat().isEqualTo("x") + } + } + } + } + } +} From 6619af86d29786c01ed87727e0a817625893e3fc Mon Sep 17 00:00:00 2001 From: jainv4156 Date: Wed, 5 Mar 2025 13:28:21 +0530 Subject: [PATCH 09/11] added profile Decorater in required function --- .../recentlyplayed/RecentlyPlayedFragmentPresenter.kt | 3 +++ .../player/exploration/ExplorationFragmentPresenter.kt | 10 ++++++---- .../app/resumelesson/ResumeLessonFragmentPresenter.kt | 4 +++- .../oppia/android/app/story/StoryFragmentPresenter.kt | 3 +++ .../app/survey/SurveyWelcomeDialogFragmentPresenter.kt | 2 ++ .../app/testing/ExplorationTestActivityPresenter.kt | 2 ++ .../app/topic/lessons/TopicLessonsFragmentPresenter.kt | 6 ++++-- 7 files changed, 23 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt index 3127b35a270..c85ce34517e 100755 --- a/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt @@ -26,6 +26,7 @@ import org.oppia.android.domain.exploration.lightweightcheckpointing.Exploration import org.oppia.android.domain.oppialogger.OppiaLogger import org.oppia.android.util.data.AsyncResult import org.oppia.android.util.data.DataProviders.Companion.toLiveData +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.decorateWithUserProfileId import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.extractCurrentUserProfileId import javax.inject.Inject @@ -107,6 +108,7 @@ class RecentlyPlayedFragmentPresenter @Inject constructor( override fun onChanged(it: AsyncResult) { if (it is AsyncResult.Success) { explorationCheckpointLiveData.removeObserver(this) + activity.intent.decorateWithUserProfileId(profileId) routeToResumeLessonListener.routeToResumeLesson( promotedStory.classroomId, promotedStory.topicId, @@ -194,6 +196,7 @@ class RecentlyPlayedFragmentPresenter @Inject constructor( oppiaLogger.e("RecentlyPlayedFragment", "Failed to load exploration", result.error) is AsyncResult.Success -> { oppiaLogger.d("RecentlyPlayedFragment", "Successfully loaded exploration") + activity.intent.decorateWithUserProfileId(profileId) routeToExplorationListener.routeToExploration( classroomId, topicId, diff --git a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt index e3b35c02173..59a79efb648 100755 --- a/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/player/exploration/ExplorationFragmentPresenter.kt @@ -43,6 +43,8 @@ class ExplorationFragmentPresenter @Inject constructor( private val resourceHandler: AppLanguageResourceHandler ) { + val profileId = activity.intent.extractCurrentUserProfileId() + /** Handles the [Fragment.onAttach] portion of [ExplorationFragment]'s lifecycle. */ fun handleAttach(context: Context) { fontScaleConfigurationUtil.adjustFontScale(context, retrieveArguments().readingTextSize) @@ -51,12 +53,11 @@ class ExplorationFragmentPresenter @Inject constructor( /** Handles the [Fragment.onCreateView] portion of [ExplorationFragment]'s lifecycle. */ fun handleCreateView(inflater: LayoutInflater, container: ViewGroup?): View { val args = retrieveArguments() - val profileId = activity.intent.extractCurrentUserProfileId().internalId val binding = ExplorationFragmentBinding.inflate(inflater, container, /* attachToRoot= */ false).root val stateFragment = StateFragment.newInstance( - profileId, args.topicId, args.storyId, args.explorationId + profileId.internalId, args.topicId, args.storyId, args.explorationId ) logPracticeFragmentEvent(args.classroomId, args.topicId, args.storyId, args.explorationId) if (getStateFragment() == null) { @@ -70,8 +71,9 @@ class ExplorationFragmentPresenter @Inject constructor( /** Handles the [Fragment.onViewCreated] portion of [ExplorationFragment]'s lifecycle. */ fun handleViewCreated() { + val profileDataProvider = profileManagementController.getProfile( - activity.intent.extractCurrentUserProfileId() + profileId ) profileDataProvider.toLiveData().observe( fragment @@ -162,7 +164,7 @@ class ExplorationFragmentPresenter @Inject constructor( oppiaLogger.createOpenExplorationActivityContext( classroomId, topicId, storyId, explorationId ), - activity.intent.extractCurrentUserProfileId() + profileId ) } diff --git a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentPresenter.kt index a3051672e9a..4d26ac4cca8 100644 --- a/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/resumelesson/ResumeLessonFragmentPresenter.kt @@ -26,11 +26,12 @@ import org.oppia.android.util.data.DataProviders.Companion.toLiveData import org.oppia.android.util.extensions.getProto import org.oppia.android.util.gcsresource.DefaultResourceBucketName import org.oppia.android.util.parser.html.HtmlParser +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.decorateWithUserProfileId import javax.inject.Inject /** The presenter for [ResumeLessonFragment]. */ class ResumeLessonFragmentPresenter @Inject constructor( - activity: AppCompatActivity, + private val activity: AppCompatActivity, private val fragment: Fragment, private val resumeLessonViewModel: ResumeLessonViewModel, private val topicController: TopicController, @@ -212,6 +213,7 @@ class ResumeLessonFragmentPresenter @Inject constructor( oppiaLogger.e("ResumeLessonFragment", "Failed to load exploration", result.error) is AsyncResult.Success -> { oppiaLogger.d("ResumeLessonFragment", "Successfully loaded exploration") + activity.intent.decorateWithUserProfileId(profileId) routeToExplorationListener.routeToExploration( classroomId, topicId, diff --git a/app/src/main/java/org/oppia/android/app/story/StoryFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/story/StoryFragmentPresenter.kt index ebc663e659b..eedc68dafa5 100644 --- a/app/src/main/java/org/oppia/android/app/story/StoryFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/story/StoryFragmentPresenter.kt @@ -42,6 +42,7 @@ import org.oppia.android.util.data.DataProviders.Companion.toLiveData import org.oppia.android.util.gcsresource.DefaultResourceBucketName import org.oppia.android.util.parser.html.HtmlParser import org.oppia.android.util.parser.html.TopicHtmlParserEntityType +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.decorateWithUserProfileId import javax.inject.Inject /** The presenter for [StoryFragment]. */ @@ -127,6 +128,7 @@ class StoryFragmentPresenter @Inject constructor( explorationCheckpoint: ExplorationCheckpoint ) { if (canExplorationBeResumed) { + activity.intent.decorateWithUserProfileId(profileId) routeToResumeLessonListener.routeToResumeLesson( classroomId, topicId, @@ -303,6 +305,7 @@ class StoryFragmentPresenter @Inject constructor( oppiaLogger.e("Story Fragment", "Failed to load exploration", result.error) is AsyncResult.Success -> { oppiaLogger.d("Story Fragment", "Successfully loaded exploration: $explorationId") + activity.intent.decorateWithUserProfileId(profileId) routeToExplorationListener.routeToExploration( classroomId, topicId, diff --git a/app/src/main/java/org/oppia/android/app/survey/SurveyWelcomeDialogFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/survey/SurveyWelcomeDialogFragmentPresenter.kt index 30aa3ba1c5a..68287f3ecdb 100644 --- a/app/src/main/java/org/oppia/android/app/survey/SurveyWelcomeDialogFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/survey/SurveyWelcomeDialogFragmentPresenter.kt @@ -15,6 +15,7 @@ import org.oppia.android.domain.profile.ProfileManagementController import org.oppia.android.domain.survey.SurveyController import org.oppia.android.util.data.AsyncResult import org.oppia.android.util.data.DataProviders.Companion.toLiveData +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.decorateWithUserProfileId import javax.inject.Inject const val TAG_SURVEY_WELCOME_DIALOG = "SURVEY_WELCOME_DIALOG" @@ -85,6 +86,7 @@ class SurveyWelcomeDialogFragmentPresenter @Inject constructor( } is AsyncResult.Success -> { oppiaLogger.d("SurveyWelcomeDialogFragment", "Successfully started a survey session") + activity.intent.decorateWithUserProfileId(profileId) val intent = SurveyActivity.createSurveyActivityIntent(activity, topicId, explorationId) fragment.startActivity(intent) diff --git a/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt index a1890437c02..7d328073e2e 100644 --- a/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt @@ -19,6 +19,7 @@ import org.oppia.android.domain.topic.TEST_STORY_ID_0 import org.oppia.android.domain.topic.TEST_TOPIC_ID_0 import org.oppia.android.util.data.AsyncResult import org.oppia.android.util.data.DataProviders.Companion.toLiveData +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.decorateWithUserProfileId import javax.inject.Inject private const val INTERNAL_PROFILE_ID = 0 @@ -67,6 +68,7 @@ class ExplorationTestActivityPresenter @Inject constructor( oppiaLogger.e(TAG_EXPLORATION_TEST_ACTIVITY, "Failed to load exploration", result.error) is AsyncResult.Success -> { oppiaLogger.d(TAG_EXPLORATION_TEST_ACTIVITY, "Successfully loaded exploration") + activity.intent.decorateWithUserProfileId(ProfileId.newBuilder().setInternalId(INTERNAL_PROFILE_ID)) routeToExplorationListener.routeToExploration( CLASSROOM_ID, TOPIC_ID, diff --git a/app/src/main/java/org/oppia/android/app/topic/lessons/TopicLessonsFragmentPresenter.kt b/app/src/main/java/org/oppia/android/app/topic/lessons/TopicLessonsFragmentPresenter.kt index bf3ccbde786..9b52eb08948 100644 --- a/app/src/main/java/org/oppia/android/app/topic/lessons/TopicLessonsFragmentPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/topic/lessons/TopicLessonsFragmentPresenter.kt @@ -31,12 +31,13 @@ import org.oppia.android.util.accessibility.AccessibilityService import org.oppia.android.util.data.AsyncResult import org.oppia.android.util.data.DataProviders.Companion.toLiveData import org.oppia.android.util.enumfilter.filterByEnumCondition +import org.oppia.android.util.profile.CurrentUserProfileIdIntentDecorator.decorateWithUserProfileId import javax.inject.Inject /** The presenter for [TopicLessonsFragment]. */ @FragmentScope class TopicLessonsFragmentPresenter @Inject constructor( - activity: AppCompatActivity, + private val activity: AppCompatActivity, private val fragment: Fragment, private val oppiaLogger: OppiaLogger, private val explorationDataController: ExplorationDataController, @@ -44,7 +45,6 @@ class TopicLessonsFragmentPresenter @Inject constructor( private val topicLessonViewModel: TopicLessonViewModel, private val accessibilityService: AccessibilityService, private val multiTypeBuilderFactory: BindableAdapter.MultiTypeBuilder.Factory, - private val singleTypeBuilderFactory: BindableAdapter.SingleTypeBuilder.Factory ) { private val routeToResumeLessonListener = activity as RouteToResumeLessonListener @@ -312,6 +312,7 @@ class TopicLessonsFragmentPresenter @Inject constructor( override fun onChanged(it: AsyncResult) { if (it is AsyncResult.Success) { explorationCheckpointLiveData.removeObserver(this) + activity.intent.decorateWithUserProfileId(profileId) routeToResumeLessonListener.routeToResumeLesson( classroomId, topicId, @@ -399,6 +400,7 @@ class TopicLessonsFragmentPresenter @Inject constructor( oppiaLogger.e("TopicLessonsFragment", "Failed to load exploration", result.error) is AsyncResult.Success -> { oppiaLogger.d("TopicLessonsFragment", "Successfully loaded exploration") + activity.intent.decorateWithUserProfileId(profileId) routeToExplorationListener.routeToExploration( classroomId, topicId, From 52a2e629f775dda2da2fe3de6d893e1b3fc92955 Mon Sep 17 00:00:00 2001 From: jainv4156 Date: Wed, 5 Mar 2025 13:56:28 +0530 Subject: [PATCH 10/11] fix import issue --- .../android/app/testing/ExplorationTestActivityPresenter.kt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt index 7d328073e2e..66ec196d016 100644 --- a/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt @@ -10,6 +10,7 @@ import org.oppia.android.app.fragment.FragmentComponentImpl import org.oppia.android.app.fragment.InjectableFragment import org.oppia.android.app.home.RouteToExplorationListener import org.oppia.android.app.model.ExplorationActivityParams +import org.oppia.android.app.model.ProfileId import org.oppia.android.app.utility.SplitScreenManager import org.oppia.android.domain.classroom.TEST_CLASSROOM_ID_0 import org.oppia.android.domain.exploration.ExplorationDataController @@ -68,7 +69,8 @@ class ExplorationTestActivityPresenter @Inject constructor( oppiaLogger.e(TAG_EXPLORATION_TEST_ACTIVITY, "Failed to load exploration", result.error) is AsyncResult.Success -> { oppiaLogger.d(TAG_EXPLORATION_TEST_ACTIVITY, "Successfully loaded exploration") - activity.intent.decorateWithUserProfileId(ProfileId.newBuilder().setInternalId(INTERNAL_PROFILE_ID)) + activity.intent.decorateWithUserProfileId( + ProfileId.newBuilder().setInternalId(INTERNAL_PROFILE_ID).build()) routeToExplorationListener.routeToExploration( CLASSROOM_ID, TOPIC_ID, From c837599058f111bdd44de3e044c60c3a613af617 Mon Sep 17 00:00:00 2001 From: jainv4156 Date: Wed, 5 Mar 2025 13:58:32 +0530 Subject: [PATCH 11/11] fix lint issue --- .../android/app/testing/ExplorationTestActivityPresenter.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt b/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt index 66ec196d016..beda5d53f6a 100644 --- a/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt +++ b/app/src/main/java/org/oppia/android/app/testing/ExplorationTestActivityPresenter.kt @@ -70,7 +70,8 @@ class ExplorationTestActivityPresenter @Inject constructor( is AsyncResult.Success -> { oppiaLogger.d(TAG_EXPLORATION_TEST_ACTIVITY, "Successfully loaded exploration") activity.intent.decorateWithUserProfileId( - ProfileId.newBuilder().setInternalId(INTERNAL_PROFILE_ID).build()) + ProfileId.newBuilder().setInternalId(INTERNAL_PROFILE_ID).build() + ) routeToExplorationListener.routeToExploration( CLASSROOM_ID, TOPIC_ID,