Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix #5001: Set Up Firestore and Upload Free Form Responses #5098

Merged
merged 92 commits into from
Jan 26, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
92 commits
Select commit Hold shift + click to select a range
f81bdb1
Add show survey popup event log
adhiamboperes Jul 6, 2023
c51017f
Add begin survey event log
adhiamboperes Jul 6, 2023
1eadc30
Log survey response events
adhiamboperes Jul 7, 2023
b258164
Refactor tests
adhiamboperes Jul 9, 2023
50ac657
Add tests to verify the abandon survey event log
adhiamboperes Jul 9, 2023
6ad3a23
Add tests to verify the mandatory questions event logs
adhiamboperes Jul 9, 2023
913e2fe
Merge branch 'develop' of github.com:oppia/oppia-android into nps-sur…
adhiamboperes Jul 9, 2023
7ea7a13
Add test for begin survey event
adhiamboperes Jul 9, 2023
2558c0b
Add tests for SurveyEventsLogger
adhiamboperes Jul 9, 2023
4b2f8da
Add tests for Survey Events in OppiaLogger
adhiamboperes Jul 9, 2023
bb42456
Add bazel BUILD definition for SurveyEventsLogger
adhiamboperes Jul 9, 2023
277f3c9
Fix nits
adhiamboperes Jul 9, 2023
8e7f3f6
Remove large tests that can't run on either local or CI.
adhiamboperes Jul 9, 2023
bd844aa
Bazel BUILD dependency
adhiamboperes Jul 10, 2023
a264b3a
Refactor TODO and semantics
adhiamboperes Jul 10, 2023
f68e8ae
Update boolean naming
adhiamboperes Jul 11, 2023
9237c66
Merge branch 'develop' of github.com:oppia/oppia-android into nps-sur…
adhiamboperes Jul 11, 2023
cb22dfb
Log optional survey response
adhiamboperes Jul 21, 2023
110d96f
Add firebase Auth fore uploading to firestore
adhiamboperes Jul 21, 2023
c1d4c19
Add BUILD definitions for firestore loggers
adhiamboperes Jul 21, 2023
931019a
Add logic for syncing to firestore
adhiamboperes Jul 21, 2023
32566a6
update maven dependencies
adhiamboperes Jul 21, 2023
ba318eb
Fix import ordering
adhiamboperes Jul 21, 2023
f573158
pull develop and resolve conflicts
adhiamboperes Jul 21, 2023
6b4d488
Add new files to CODEOWNERS
adhiamboperes Jul 21, 2023
44e37b0
Fix prod bazel dependencies
adhiamboperes Jul 23, 2023
d1a11d3
Fix npe in domain/src/test/java/org/oppia/android/domain/oppialogger/…
adhiamboperes Jul 23, 2023
cb25e31
Remove redundant firestore/auth initialization
adhiamboperes Jul 25, 2023
b03011c
Introduce AuthenticationController
adhiamboperes Jul 26, 2023
d9a7fe5
Fix missing KDOc
adhiamboperes Jul 26, 2023
c0a48da
Add new files to CODEOWNERS
adhiamboperes Jul 26, 2023
e6c2568
Fix BUILD file formatting
adhiamboperes Jul 26, 2023
9ad162a
Merge branch 'develop' of github.com:oppia/oppia-android into nps-opt…
adhiamboperes Jul 26, 2023
0de4f3a
Fix failing log upload tests
adhiamboperes Jul 26, 2023
b7bafb5
Add more tests for FirestoreDataController
adhiamboperes Jul 26, 2023
7b13358
Add tests for FakeAuthenticationController.kt
adhiamboperes Jul 26, 2023
fe1dfdf
Add missing bazel dep for build flavors
adhiamboperes Jul 26, 2023
9d66b9f
Fix static check failures
adhiamboperes Jul 26, 2023
6f1fb2a
Add TestAuthenticationModule to test files.
adhiamboperes Jul 27, 2023
e3f1e84
Fix failing tests
adhiamboperes Jul 27, 2023
2996787
Rename variable in ViewEventLogsViewModel.kt
adhiamboperes Jul 28, 2023
ec2e3f8
Add missing dependency for e2e instrumentation module
adhiamboperes Jul 28, 2023
52c438a
Fix proguarding
adhiamboperes Jul 31, 2023
dc5dac3
Fix failing eventlog test
adhiamboperes Aug 1, 2023
93d3c6a
Fix failing tests
adhiamboperes Aug 3, 2023
a04caa9
Merge branch 'develop' of github.com:oppia/oppia-android into nps-opt…
adhiamboperes Aug 3, 2023
3e81132
Exempt AuthenticationModule from tests
adhiamboperes Aug 3, 2023
aeb213e
Ignore failing test
adhiamboperes Aug 3, 2023
781644f
Merge branch 'develop' of github.com:oppia/oppia-android into nps-opt…
adhiamboperes Aug 3, 2023
ca5cd8c
Reformat @Ignore
adhiamboperes Aug 3, 2023
6a0b78f
Refactor test
adhiamboperes Aug 3, 2023
bc05e0b
Refactor event logs viewmodel to use a fake in tests
adhiamboperes Sep 5, 2023
6bb7831
Merge branch 'develop' of github.com:oppia/oppia-android into nps-opt…
adhiamboperes Sep 6, 2023
64ad461
Add FakeAuthenticationControllerFactory
adhiamboperes Sep 7, 2023
8f5fc58
Add test for AuthenticationModule
adhiamboperes Sep 7, 2023
ccbc2e3
Fix static check test failures
adhiamboperes Sep 7, 2023
89a5bdf
Add newline after imports in OptionsActivityTest.kt
adhiamboperes Sep 21, 2023
d1c7240
Update file documentation
adhiamboperes Sep 21, 2023
78efadc
Update animal-sniffer-annotations license
adhiamboperes Sep 21, 2023
54d2538
Remove mockito from production deps
adhiamboperes Sep 26, 2023
d8d9d8c
Refactor auth tests build file comments
adhiamboperes Sep 26, 2023
4314ca0
Change firestore_logger_impl visibility to private
adhiamboperes Sep 26, 2023
e0bc397
Add test for TestAuthenticationModule
adhiamboperes Sep 27, 2023
ffb07d9
Refactor AuthenticationController and its bindings.
adhiamboperes Sep 29, 2023
64bb998
Renamed AuthenticationListener to AuthenticationWrapper.kt
adhiamboperes Sep 29, 2023
85115a6
Add TestAuthenticationModuleTest to CODEOWNERS
adhiamboperes Sep 29, 2023
7cccc8b
Create a debug interface for FirestoreEventLogger
adhiamboperes Oct 2, 2023
47921bd
Merge branch 'develop' of github.com:oppia/oppia-android into nps-opt…
adhiamboperes Oct 2, 2023
90cf929
Refactor DebugFirestoreEventLoggerImpl
adhiamboperes Oct 3, 2023
3e00d16
Fix failing tests
adhiamboperes Oct 3, 2023
022ef33
Merge branch 'develop' of github.com:oppia/oppia-android into nps-opt…
adhiamboperes Oct 18, 2023
35c0956
Fix DebugFirestoreEventLoggerImplTest tests
adhiamboperes Oct 23, 2023
ab161bf
Fix proguard failure.
adhiamboperes Oct 25, 2023
5848741
Merge branch 'develop' of github.com:oppia/oppia-android into nps-opt…
adhiamboperes Oct 26, 2023
8215c53
Fix failing tests
adhiamboperes Oct 26, 2023
99a15d3
Merge branch 'develop' into nps-optional-response-upload
adhiamboperes Nov 22, 2023
8336320
Merge branch 'develop' into nps-optional-response-upload
adhiamboperes Nov 29, 2023
e190fd9
Create firebase and firestore wrappers
adhiamboperes Jan 11, 2024
8a8d20d
Address review comments
adhiamboperes Jan 12, 2024
893f6e9
Merge branch 'develop' of github.com:oppia/oppia-android into nps-opt…
adhiamboperes Jan 12, 2024
a8e19df
Update maven install
adhiamboperes Jan 12, 2024
8fb5e6b
Add tests for prod impl of firebase auth
adhiamboperes Jan 15, 2024
06a999c
Remove singleton annotation from TestAuthenticationModule
adhiamboperes Jan 15, 2024
b5a1230
Add FakeFirebaseAuthInstanceWrapperImpl to CODEOWNERS
adhiamboperes Jan 15, 2024
4d3a893
Fix failing eventlogs tests
adhiamboperes Jan 15, 2024
e1776b8
Add test file exemption for FakeFirebaseAuthInstanceWrapperImpl
adhiamboperes Jan 16, 2024
2d4228c
Add withtimeout to authentication logic
adhiamboperes Jan 19, 2024
8a0088d
Resolve background dispatcher dependency
adhiamboperes Jan 23, 2024
dddbd98
Ensure debug firestore pushes events to the cloud
adhiamboperes Jan 23, 2024
d704240
Address PR feedback
adhiamboperes Jan 26, 2024
1f49d4a
Merge branch 'develop' into nps-optional-response-upload
adhiamboperes Jan 26, 2024
5e65643
Merge branch 'develop' into nps-optional-response-upload
adhiamboperes Jan 26, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -93,12 +93,20 @@
# All domain and utility-specific shared test infrastructure.
/testing/src/main/java/org/oppia/android/testing/FakeAnalyticsEventLogger.kt @oppia/android-app-infrastructure-reviewers
/testing/src/main/java/org/oppia/android/testing/FakeExceptionLogger.kt @oppia/android-app-infrastructure-reviewers
/testing/src/main/java/org/oppia/android/testing/FakeFirebaseAuthInstanceWrapperImpl.kt @oppia/android-app-infrastructure-reviewers
/testing/src/main/java/org/oppia/android/testing/FakeFirebaseAuthWrapperImpl.kt @oppia/android-app-infrastructure-reviewers
/testing/src/main/java/org/oppia/android/testing/FakeFirestoreEventLogger.kt @oppia/android-app-infrastructure-reviewers
/testing/src/main/java/org/oppia/android/testing/FakeFirestoreInstanceWrapperImpl.kt @oppia/android-app-infrastructure-reviewers
/testing/src/main/java/org/oppia/android/testing/FakePerformanceMetricAssessor.kt @oppia/android-app-infrastructure-reviewers
/testing/src/main/java/org/oppia/android/testing/FakePerformanceMetricsEventLogger.kt @oppia/android-app-infrastructure-reviewers
/testing/src/main/java/org/oppia/android/testing/TestAuthenticationModule.kt @oppia/android-app-infrastructure-reviewers
/testing/src/test/java/org/oppia/android/testing/TestAuthenticationModuleTest.kt @oppia/android-app-infrastructure-reviewers
/testing/src/main/java/org/oppia/android/testing/TestImageLoaderModule.kt @oppia/android-app-infrastructure-reviewers
/testing/src/main/java/org/oppia/android/testing/TestLogReportingModule.kt @oppia/android-app-infrastructure-reviewers
/testing/src/test/java/org/oppia/android/testing/FakeAnalyticsEventLoggerTest.kt @oppia/android-app-infrastructure-reviewers
/testing/src/test/java/org/oppia/android/testing/FakeExceptionLoggerTest.kt @oppia/android-app-infrastructure-reviewers
/testing/src/test/java/org/oppia/android/testing/FakeFirebaseAuthWrapperImplTest.kt @oppia/android-app-infrastructure-reviewers
/testing/src/test/java/org/oppia/android/testing/FakeFirestoreEventLoggerTest.kt @oppia/android-app-infrastructure-reviewers
/testing/src/test/java/org/oppia/android/testing/FakePerformanceMetricAssessorTest.kt @oppia/android-app-infrastructure-reviewers
/testing/src/test/java/org/oppia/android/testing/FakePerformanceMetricsEventLoggerTest.kt @oppia/android-app-infrastructure-reviewers

Expand Down
10 changes: 9 additions & 1 deletion app/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -713,7 +713,7 @@ kt_android_library(
"//third_party:androidx_databinding_databinding-runtime",
"//utility",
"//utility/src/main/java/org/oppia/android/util/extensions:context_extensions",
"//utility/src/main/java/org/oppia/android/util/logging/firebase:debug_event_logger",
"//utility/src/main/java/org/oppia/android/util/logging/firebase:debug_module",
"//utility/src/main/java/org/oppia/android/util/math:fraction_parser",
"//utility/src/main/java/org/oppia/android/util/networking:network_connection_debug_util",
"//utility/src/main/java/org/oppia/android/util/parser/html:html_parser",
Expand Down Expand Up @@ -1018,4 +1018,12 @@ android_library(
],
)

android_library(
name = "firestore_deps",
exports = [
"//third_party:com_google_auto_value_auto-value-annotations",
"//third_party:org_checkerframework_checker-qual",
],
)

dagger_rules()
2 changes: 2 additions & 0 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,8 @@ dependencies {
'com.google.firebase:firebase-analytics-ktx:17.5.0',
'com.google.firebase:firebase-core:17.5.0',
'com.google.firebase:firebase-crashlytics:17.0.0',
'com.google.firebase:firebase-firestore-ktx:24.2.1',
'com.google.firebase:firebase-auth-ktx:19.3.1',
'com.google.guava:guava:28.1-android',
'com.google.protobuf:protobuf-javalite:3.17.3',
'com.github.oppia:CircularImageview:35d08ba88a',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import org.oppia.android.app.shim.ViewBindingShimModule
import org.oppia.android.app.translation.ActivityRecreatorProdModule
import org.oppia.android.data.backends.gae.NetworkConfigProdModule
import org.oppia.android.data.backends.gae.NetworkModule
import org.oppia.android.domain.auth.AuthenticationModule
import org.oppia.android.domain.classify.InteractionsModule
import org.oppia.android.domain.classify.rules.algebraicexpressioninput.AlgebraicExpressionInputModule
import org.oppia.android.domain.classify.rules.continueinteraction.ContinueModule
Expand Down Expand Up @@ -99,6 +100,7 @@ import javax.inject.Singleton
PerformanceMetricsConfigurationsModule::class, AlphaBuildFlavorModule::class,
EventLoggingConfigurationModule::class, CpuPerformanceSnapshotterModule::class,
PerformanceMetricsAssessorModule::class, ExplorationProgressModule::class,
AuthenticationModule::class,
]
)
interface AlphaApplicationComponent : ApplicationComponent {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ kt_android_library(
"//app/src/main/java/org/oppia/android/app/application:abstract_application",
"//app/src/main/java/org/oppia/android/app/application:application_component",
"//app/src/main/java/org/oppia/android/app/application:common_application_modules",
"//domain/src/main/java/org/oppia/android/domain/auth:auth_module",
"//utility/src/main/java/org/oppia/android/util/logging:standard_event_logging_configuration_module",
"//utility/src/main/java/org/oppia/android/util/logging/firebase:prod_module",
"//utility/src/main/java/org/oppia/android/util/networking:prod_module",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import org.oppia.android.app.shim.ViewBindingShimModule
import org.oppia.android.app.translation.ActivityRecreatorProdModule
import org.oppia.android.data.backends.gae.NetworkConfigProdModule
import org.oppia.android.data.backends.gae.NetworkModule
import org.oppia.android.domain.auth.AuthenticationModule
import org.oppia.android.domain.classify.InteractionsModule
import org.oppia.android.domain.classify.rules.algebraicexpressioninput.AlgebraicExpressionInputModule
import org.oppia.android.domain.classify.rules.continueinteraction.ContinueModule
Expand Down Expand Up @@ -100,6 +101,7 @@ import javax.inject.Singleton
PerformanceMetricsConfigurationsModule::class, AlphaBuildFlavorModule::class,
KenyaAlphaEventLoggingConfigurationModule::class, CpuPerformanceSnapshotterModule::class,
PerformanceMetricsAssessorModule::class, ExplorationProgressModule::class,
AuthenticationModule::class,
]
)
interface AlphaKenyaApplicationComponent : ApplicationComponent {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ kt_android_library(
"//app/src/main/java/org/oppia/android/app/application:application_component",
"//app/src/main/java/org/oppia/android/app/application:common_application_modules",
"//app/src/main/java/org/oppia/android/app/application/alpha:alpha_build_flavor_module",
"//domain/src/main/java/org/oppia/android/domain/auth:auth_module",
"//utility/src/main/java/org/oppia/android/util/logging:kenya_alpha_event_logging_configuration_module",
"//utility/src/main/java/org/oppia/android/util/logging/firebase:prod_module",
"//utility/src/main/java/org/oppia/android/util/networking:prod_module",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ kt_android_library(
"//app/src/main/java/org/oppia/android/app/application:abstract_application",
"//app/src/main/java/org/oppia/android/app/application:application_component",
"//app/src/main/java/org/oppia/android/app/application:common_application_modules",
"//domain/src/main/java/org/oppia/android/domain/auth:auth_module",
"//utility/src/main/java/org/oppia/android/util/logging:standard_event_logging_configuration_module",
"//utility/src/main/java/org/oppia/android/util/logging/firebase:prod_module",
"//utility/src/main/java/org/oppia/android/util/networking:prod_module",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import org.oppia.android.app.shim.ViewBindingShimModule
import org.oppia.android.app.translation.ActivityRecreatorProdModule
import org.oppia.android.data.backends.gae.NetworkConfigProdModule
import org.oppia.android.data.backends.gae.NetworkModule
import org.oppia.android.domain.auth.AuthenticationModule
import org.oppia.android.domain.classify.InteractionsModule
import org.oppia.android.domain.classify.rules.algebraicexpressioninput.AlgebraicExpressionInputModule
import org.oppia.android.domain.classify.rules.continueinteraction.ContinueModule
Expand Down Expand Up @@ -99,7 +100,7 @@ import javax.inject.Singleton
PerformanceMetricsConfigurationsModule::class, BetaBuildFlavorModule::class,
EventLoggingConfigurationModule::class, ActivityRouterModule::class,
CpuPerformanceSnapshotterModule::class, PerformanceMetricsAssessorModule::class,
ExplorationProgressModule::class,
ExplorationProgressModule::class, AuthenticationModule::class,
]
)
interface BetaApplicationComponent : ApplicationComponent {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ kt_android_library(
"//app/src/main/java/org/oppia/android/app/application:abstract_application",
"//app/src/main/java/org/oppia/android/app/application:application_component",
"//app/src/main/java/org/oppia/android/app/application:common_application_modules",
"//domain/src/main/java/org/oppia/android/domain/auth:auth_module",
"//utility/src/main/java/org/oppia/android/util/logging:standard_event_logging_configuration_module",
"//utility/src/main/java/org/oppia/android/util/logging/firebase:debug_module",
"//utility/src/main/java/org/oppia/android/util/networking:debug_module",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import org.oppia.android.app.shim.ViewBindingShimModule
import org.oppia.android.app.translation.ActivityRecreatorProdModule
import org.oppia.android.data.backends.gae.NetworkConfigProdModule
import org.oppia.android.data.backends.gae.NetworkModule
import org.oppia.android.domain.auth.AuthenticationModule
import org.oppia.android.domain.classify.InteractionsModule
import org.oppia.android.domain.classify.rules.algebraicexpressioninput.AlgebraicExpressionInputModule
import org.oppia.android.domain.classify.rules.continueinteraction.ContinueModule
Expand Down Expand Up @@ -101,6 +102,7 @@ import javax.inject.Singleton
PerformanceMetricsAssessorModule::class, PerformanceMetricsConfigurationsModule::class,
DeveloperBuildFlavorModule::class, EventLoggingConfigurationModule::class,
CpuPerformanceSnapshotterModule::class, ExplorationProgressModule::class,
AuthenticationModule::class,
]
)
interface DeveloperApplicationComponent : ApplicationComponent {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ kt_android_library(
"//app/src/main/java/org/oppia/android/app/application:abstract_application",
"//app/src/main/java/org/oppia/android/app/application:application_component",
"//app/src/main/java/org/oppia/android/app/application:common_application_modules",
"//domain/src/main/java/org/oppia/android/domain/auth:auth_module",
"//utility/src/main/java/org/oppia/android/util/logging:standard_event_logging_configuration_module",
"//utility/src/main/java/org/oppia/android/util/logging/firebase:prod_module",
"//utility/src/main/java/org/oppia/android/util/networking:prod_module",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import org.oppia.android.app.shim.ViewBindingShimModule
import org.oppia.android.app.translation.ActivityRecreatorProdModule
import org.oppia.android.data.backends.gae.NetworkConfigProdModule
import org.oppia.android.data.backends.gae.NetworkModule
import org.oppia.android.domain.auth.AuthenticationModule
import org.oppia.android.domain.classify.InteractionsModule
import org.oppia.android.domain.classify.rules.algebraicexpressioninput.AlgebraicExpressionInputModule
import org.oppia.android.domain.classify.rules.continueinteraction.ContinueModule
Expand Down Expand Up @@ -99,7 +100,7 @@ import javax.inject.Singleton
PerformanceMetricsConfigurationsModule::class, GaBuildFlavorModule::class,
EventLoggingConfigurationModule::class, ActivityRouterModule::class,
CpuPerformanceSnapshotterModule::class, PerformanceMetricsAssessorModule::class,
ExplorationProgressModule::class,
ExplorationProgressModule::class, AuthenticationModule::class,
]
)
interface GaApplicationComponent : ApplicationComponent {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import org.oppia.android.app.translation.AppLanguageResourceHandler
import org.oppia.android.app.viewmodel.ObservableViewModel
import org.oppia.android.util.locale.OppiaLocale
import org.oppia.android.util.logging.firebase.DebugAnalyticsEventLogger
import org.oppia.android.util.logging.firebase.DebugFirestoreEventLoggerImpl
import javax.inject.Inject

/**
Expand All @@ -14,11 +15,15 @@ import javax.inject.Inject
@FragmentScope
class ViewEventLogsViewModel @Inject constructor(
debugAnalyticsEventLogger: DebugAnalyticsEventLogger,
debugFirestoreEventLogger: DebugFirestoreEventLoggerImpl,
private val machineLocale: OppiaLocale.MachineLocale,
private val resourceHandler: AppLanguageResourceHandler
) : ObservableViewModel() {
// Retrieves events from cache that are meant to be uploaded to Firebase Firestore.
private val firestoreEvents = debugFirestoreEventLogger.getEventList()

private val eventList = debugAnalyticsEventLogger.getEventList()
// Retrieves events from cache that are meant to be uploaded to Firebase Analytics.
private val analyticsEvents = debugAnalyticsEventLogger.getEventList()

/**
* List of [EventLogItemViewModel] used to populate recyclerview of [ViewEventLogsFragment]
Expand All @@ -29,8 +34,10 @@ class ViewEventLogsViewModel @Inject constructor(
}

private fun processEventLogsList(): List<EventLogItemViewModel> {
return eventList.map {
EventLogItemViewModel(it, machineLocale, resourceHandler)
}.reversed()
return (analyticsEvents + firestoreEvents)
.map {
EventLogItemViewModel(it, machineLocale, resourceHandler)
}
.sortedByDescending { it.eventLog.timestamp }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -56,11 +56,11 @@ class SurveyOutroDialogFragmentPresenter @Inject constructor(
private fun endSurveyWithCallback(callback: () -> Unit) {
surveyController.stopSurveySession(surveyCompleted = true).toLiveData().observe(
activity,
{
when (it) {
{ result ->
when (result) {
is AsyncResult.Pending -> oppiaLogger.d("SurveyActivity", "Stopping survey session")
is AsyncResult.Failure -> {
oppiaLogger.d("SurveyActivity", "Failed to stop the survey session")
oppiaLogger.d("SurveyActivity", "Failed to stop the survey session", result.error)
activity.finish() // Can't recover from the session failing to stop.
}
is AsyncResult.Success -> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,7 @@ import org.oppia.android.domain.question.QuestionModule
import org.oppia.android.domain.topic.PrimeTopicAssetsControllerModule
import org.oppia.android.domain.workmanager.WorkManagerConfigurationModule
import org.oppia.android.testing.OppiaTestRule
import org.oppia.android.testing.TestAuthenticationModule
import org.oppia.android.testing.TestLogReportingModule
import org.oppia.android.testing.junit.InitializeDefaultLocaleRule
import org.oppia.android.testing.platformparameter.TestPlatformParameterModule
Expand Down Expand Up @@ -971,7 +972,8 @@ class AdministratorControlsActivityTest {
LoggingIdentifierModule::class, ApplicationLifecycleModule::class,
SyncStatusModule::class, MetricLogSchedulerModule::class, TestingBuildFlavorModule::class,
EventLoggingConfigurationModule::class, ActivityRouterModule::class,
CpuPerformanceSnapshotterModule::class, ExplorationProgressModule::class
CpuPerformanceSnapshotterModule::class, ExplorationProgressModule::class,
TestAuthenticationModule::class
]
)
interface TestApplicationComponent : ApplicationComponent {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@ import org.oppia.android.domain.question.QuestionModule
import org.oppia.android.domain.topic.PrimeTopicAssetsControllerModule
import org.oppia.android.domain.workmanager.WorkManagerConfigurationModule
import org.oppia.android.testing.OppiaTestRule
import org.oppia.android.testing.TestAuthenticationModule
import org.oppia.android.testing.TestLogReportingModule
import org.oppia.android.testing.junit.InitializeDefaultLocaleRule
import org.oppia.android.testing.platformparameter.TestPlatformParameterModule
Expand Down Expand Up @@ -655,7 +656,8 @@ class AdministratorControlsFragmentTest {
LoggingIdentifierModule::class, ApplicationLifecycleModule::class,
SyncStatusModule::class, MetricLogSchedulerModule::class, TestingBuildFlavorModule::class,
EventLoggingConfigurationModule::class, ActivityRouterModule::class,
CpuPerformanceSnapshotterModule::class, ExplorationProgressModule::class
CpuPerformanceSnapshotterModule::class, ExplorationProgressModule::class,
TestAuthenticationModule::class
]
)
interface TestApplicationComponent : ApplicationComponent {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ import org.oppia.android.domain.question.QuestionModule
import org.oppia.android.domain.topic.PrimeTopicAssetsControllerModule
import org.oppia.android.domain.workmanager.WorkManagerConfigurationModule
import org.oppia.android.testing.OppiaTestRule
import org.oppia.android.testing.TestAuthenticationModule
import org.oppia.android.testing.TestLogReportingModule
import org.oppia.android.testing.junit.InitializeDefaultLocaleRule
import org.oppia.android.testing.robolectric.RobolectricModule
Expand Down Expand Up @@ -306,7 +307,8 @@ class AppVersionActivityTest {
LoggingIdentifierModule::class, ApplicationLifecycleModule::class,
SyncStatusModule::class, MetricLogSchedulerModule::class, TestingBuildFlavorModule::class,
EventLoggingConfigurationModule::class, ActivityRouterModule::class,
CpuPerformanceSnapshotterModule::class, ExplorationProgressModule::class
CpuPerformanceSnapshotterModule::class, ExplorationProgressModule::class,
TestAuthenticationModule::class
]
)
interface TestApplicationComponent : ApplicationComponent {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ import org.oppia.android.domain.question.QuestionModule
import org.oppia.android.domain.topic.PrimeTopicAssetsControllerModule
import org.oppia.android.domain.workmanager.WorkManagerConfigurationModule
import org.oppia.android.testing.OppiaTestRule
import org.oppia.android.testing.TestAuthenticationModule
import org.oppia.android.testing.TestLogReportingModule
import org.oppia.android.testing.junit.InitializeDefaultLocaleRule
import org.oppia.android.testing.profile.ProfileTestHelper
Expand Down Expand Up @@ -229,7 +230,8 @@ class ProfileAndDeviceIdActivityTest {
MathEquationInputModule::class, MetricLogSchedulerModule::class,
TestingBuildFlavorModule::class, EventLoggingConfigurationModule::class,
ActivityRouterModule::class, CpuPerformanceSnapshotterModule::class,
ApplicationLifecycleModule::class, ExplorationProgressModule::class
ApplicationLifecycleModule::class, ExplorationProgressModule::class,
TestAuthenticationModule::class
]
)
interface TestApplicationComponent : ApplicationComponent {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,7 @@ import org.oppia.android.domain.topic.PrimeTopicAssetsControllerModule
import org.oppia.android.domain.workmanager.WorkManagerConfigurationModule
import org.oppia.android.testing.FakeAnalyticsEventLogger
import org.oppia.android.testing.OppiaTestRule
import org.oppia.android.testing.TestAuthenticationModule
import org.oppia.android.testing.TestLogReportingModule
import org.oppia.android.testing.junit.InitializeDefaultLocaleRule
import org.oppia.android.testing.logging.SyncStatusTestModule
Expand Down Expand Up @@ -1028,7 +1029,8 @@ class ProfileAndDeviceIdFragmentTest {
MathEquationInputModule::class, MetricLogSchedulerModule::class,
TestingBuildFlavorModule::class, EventLoggingConfigurationModule::class,
ActivityRouterModule::class, CpuPerformanceSnapshotterModule::class,
ApplicationLifecycleModule::class, ExplorationProgressModule::class
ApplicationLifecycleModule::class, ExplorationProgressModule::class,
TestAuthenticationModule::class
]
)
interface TestApplicationComponent : ApplicationComponent {
Expand Down
Loading
Loading