Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package org.wordpress.android.ui.accounts.login

import android.util.Log
import androidx.core.net.toUri
import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.withContext
Expand Down Expand Up @@ -56,8 +55,10 @@ class ApplicationPasswordLoginHelper @Inject constructor(
}
val authorizationUrlComplete =
uriLoginWrapper.appendParamsToRestAuthorizationUrl(authorizationUrl)
Log.d("WP_RS", "Found authorization for $siteUrl URL: $authorizationUrlComplete" +
" API_ROOT_URL $apiRootUrl")
appLogWrapper.d(
AppLog.T.API,
"AP: Found authorization for $siteUrl URL: $authorizationUrlComplete " +
"API_ROOT_URL $apiRootUrl")
AnalyticsTracker.track(Stat.BACKGROUND_REST_AUTODISCOVERY_SUCCESSFUL)
authorizationUrlComplete
}
Expand All @@ -74,7 +75,7 @@ class ApplicationPasswordLoginHelper @Inject constructor(
}

private fun handleAuthenticationDiscoveryError(siteUrl: String, throwable: Throwable): String {
appLogWrapper.e(AppLog.T.API, "WP_RS: Error during API discovery for $siteUrl - ${throwable.message}")
appLogWrapper.e(AppLog.T.API, "AP: Error during API discovery for $siteUrl - ${throwable.message}")
AnalyticsTracker.track(Stat.BACKGROUND_REST_AUTODISCOVERY_FAILED)
return ""
}
Expand All @@ -87,6 +88,10 @@ class ApplicationPasswordLoginHelper @Inject constructor(
urlLogin.siteUrl == null ||
urlLogin.siteUrl == processedAppPasswordData
) {
appLogWrapper.e(
AppLog.T.DB,
"AP: Cannot save application password credentials for: ${urlLogin.siteUrl} - bad data"
)
return false
}

Expand All @@ -110,7 +115,7 @@ class ApplicationPasswordLoginHelper @Inject constructor(
} else {
appLogWrapper.e(
AppLog.T.DB,
"WP_RS: Cannot save application password credentials for: ${urlLogin.siteUrl}"
"AP: Cannot save application password credentials for: ${urlLogin.siteUrl} - null site"
)
false
}
Expand All @@ -129,7 +134,7 @@ class ApplicationPasswordLoginHelper @Inject constructor(
},
properties
)
appLogWrapper.d(AppLog.T.DB, "WP_RS: Saved application password credentials for: $siteUrl")
appLogWrapper.d(AppLog.T.DB, "AP: Saved application password credentials for: $siteUrl")
}

fun getSiteUrlLoginFromRawData(url: String): UriLogin {
Expand All @@ -155,6 +160,7 @@ class ApplicationPasswordLoginHelper @Inject constructor(
}
dispatcherWrapper.removeApplicationPassword(site)
}
appLogWrapper.d(AppLog.T.DB, "AP: Removed application password credentials for: $affectedSites sites")
affectedSites
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import kotlinx.coroutines.launch
import org.wordpress.android.R
import org.wordpress.android.fluxc.model.SiteModel
import org.wordpress.android.fluxc.store.SiteStore
import org.wordpress.android.fluxc.utils.AppLogWrapper
import org.wordpress.android.ui.accounts.login.ApplicationPasswordLoginHelper
import org.wordpress.android.ui.mysite.MySiteCardAndItem
import org.wordpress.android.ui.mysite.MySiteCardAndItem.Card.QuickLinksItem.QuickLinkItem
Expand All @@ -16,13 +17,15 @@ import org.wordpress.android.ui.prefs.experimentalfeatures.ExperimentalFeatures
import org.wordpress.android.ui.prefs.experimentalfeatures.ExperimentalFeatures.Feature
import org.wordpress.android.ui.utils.ListItemInteraction
import org.wordpress.android.ui.utils.UiString.UiStringRes
import org.wordpress.android.util.AppLog
import org.wordpress.android.viewmodel.Event
import javax.inject.Inject

class ApplicationPasswordViewModelSlice @Inject constructor(
private val applicationPasswordLoginHelper: ApplicationPasswordLoginHelper,
private val siteStore: SiteStore,
private val experimentalFeatures: ExperimentalFeatures,
private val appLogWrapper: AppLogWrapper,
) {
lateinit var scope: CoroutineScope

Expand Down Expand Up @@ -57,12 +60,14 @@ class ApplicationPasswordViewModelSlice @Inject constructor(
val storedSite = siteStore.sites.firstOrNull { it.id == site.id }
if (storedSite != null && !applicationPasswordLoginHelper.siteHasBadCredentials(site)) {
uiModelMutable.postValue(null)
appLogWrapper.d(AppLog.T.MAIN, "AP: Hiding card for ${site.url} - authenticated")
return@launch
}

val authorizationUrlComplete = applicationPasswordLoginHelper.getAuthorizationUrlComplete(site.url)
if (authorizationUrlComplete.isEmpty()) {
uiModelMutable.postValue(null)
appLogWrapper.d(AppLog.T.MAIN, "AP: Hiding card for ${site.url} - bad discovery")
} else {
showApplicationPasswordCreateCard(site)
}
Expand All @@ -81,6 +86,7 @@ class ApplicationPasswordViewModelSlice @Inject constructor(
)
)
)
appLogWrapper.d(AppLog.T.MAIN, "AP: Showing card for ${site.url}")
}


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ import org.mockito.kotlin.whenever
import org.wordpress.android.BaseUnitTest
import org.wordpress.android.fluxc.model.SiteModel
import org.wordpress.android.fluxc.store.SiteStore
import org.wordpress.android.fluxc.utils.AppLogWrapper
import org.wordpress.android.ui.accounts.login.ApplicationPasswordLoginHelper
import org.wordpress.android.ui.mysite.MySiteCardAndItem
import org.wordpress.android.ui.prefs.experimentalfeatures.ExperimentalFeatures
Expand All @@ -41,6 +42,9 @@ class ApplicationPasswordViewModelSliceTest : BaseUnitTest() {
@Mock
lateinit var experimentalFeatures: ExperimentalFeatures

@Mock
lateinit var appLogWrapper: AppLogWrapper

private lateinit var siteTest: SiteModel

private var applicationPasswordCard: MySiteCardAndItem.Card? = null
Expand All @@ -55,6 +59,7 @@ class ApplicationPasswordViewModelSliceTest : BaseUnitTest() {
applicationPasswordLoginHelper,
siteStore,
experimentalFeatures,
appLogWrapper
).apply {
initialize(testScope())
whenever(experimentalFeatures.isEnabled(any())).thenReturn(true)
Expand Down