Skip to content
Open
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
Expand Up @@ -179,6 +179,8 @@ class DiagnosticsViewModelTest {
)
proxySetting = ProxySetting.NO_PROXY
manualProxy = ManualProxy("", 80, "", "")
dataStore.setProxySetting(ProxySetting.NO_PROXY)
dataStore.setProxyUsername("")
}

@Test
Expand Down Expand Up @@ -426,6 +428,51 @@ class DiagnosticsViewModelTest {
assertEquals(DEFAULT_UUID_VALUE, cdoc2KeyServerUUID)
}

@Test
fun diagnosticsViewModel_getProxyConfig_returnsNoneForNoProxy() {
dataStore.setProxySetting(ProxySetting.NO_PROXY)

val result = viewModel.getProxyConfig()

assertEquals("NONE", result)
}

@Test
fun diagnosticsViewModel_getProxyConfig_returnsSystemForSystemProxy() {
dataStore.setProxySetting(ProxySetting.SYSTEM_PROXY)

val result = viewModel.getProxyConfig()

assertEquals("SYSTEM", result)
}

@Test
fun diagnosticsViewModel_getProxyConfig_returnsManualForManualProxy() {
dataStore.setProxySetting(ProxySetting.MANUAL_PROXY)

val result = viewModel.getProxyConfig()

assertEquals("MANUAL", result)
}

@Test
fun diagnosticsViewModel_isProxyAuthEnabled_returnTrueWhenUsernameSet() {
dataStore.setProxyUsername("username")

val result = viewModel.isProxyAuthEnabled()

assertTrue(result)
}

@Test
fun diagnosticsViewModel_isProxyAuthEnabled_returnFalseWhenUsernameEmpty() {
dataStore.setProxyUsername("")

val result = viewModel.isProxyAuthEnabled()

assertFalse(result)
}

@Suppress("SameParameterValue")
private fun createTempFileWithStringContent(
filename: String,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -538,6 +538,29 @@ fun DiagnosticsScreen(
stringResource(id = R.string.main_diagnostics_cdoc2_default_keyserver_title),
diagnosticsViewModel.getCdoc2KeyServerUUID(currentConfiguration),
)
SpannableBoldText(
modifier = modifier,
stringResource(id = R.string.main_diagnostics_settings_title),
"",
)
DiagnosticsText(
modifier =
modifier
.semantics {
testTagsAsResourceId = true
}.testTag("mainDiagnosticsProxyConfig"),
stringResource(id = R.string.main_diagnostics_proxy_config_title),
diagnosticsViewModel.getProxyConfig(),
)
DiagnosticsText(
modifier =
modifier
.semantics {
testTagsAsResourceId = true
}.testTag("mainDiagnosticsProxyAuth"),
stringResource(id = R.string.main_diagnostics_proxy_auth_title),
diagnosticsViewModel.isProxyAuthEnabled().toString(),
)
HorizontalDivider(
modifier =
modifier
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ import ee.ria.DigiDoc.configuration.repository.ConfigurationRepository
import ee.ria.DigiDoc.configuration.utils.TSLUtil
import ee.ria.DigiDoc.domain.model.settings.CDOCSetting
import ee.ria.DigiDoc.domain.preferences.DataStore
import ee.ria.DigiDoc.network.proxy.ProxySetting
import ee.ria.DigiDoc.utils.accessibility.AccessibilityUtil.Companion.getAccessibilityEventType
import ee.ria.DigiDoc.utils.accessibility.AccessibilityUtil.Companion.sendAccessibilityEvent
import ee.ria.DigiDoc.utilsLib.date.DateUtil
Expand Down Expand Up @@ -163,6 +164,15 @@ class DiagnosticsViewModel
return dataStore.getCDOC2UUID(defaultKeyServer)
}

fun getProxyConfig(): String =
when (dataStore.getProxySetting()) {
ProxySetting.NO_PROXY -> "NONE"
ProxySetting.SYSTEM_PROXY -> "SYSTEM"
ProxySetting.MANUAL_PROXY -> "MANUAL"
}

fun isProxyAuthEnabled(): Boolean = dataStore.getProxyUsername().isNotEmpty()

fun getTslCacheData(context: Context): List<String> {
val tslCacheList = ArrayList<String>()
val tslCacheDir = File(context.cacheDir.absolutePath + "/schema")
Expand Down Expand Up @@ -390,6 +400,24 @@ class DiagnosticsViewModel
} ${getCdoc2KeyServerUUID(currentConfiguration)}",
)

// Settings
appendLine()
appendLine(context.getString(R.string.main_diagnostics_settings_title))
appendLine(
"${
context.getString(
R.string.main_diagnostics_proxy_config_title,
)
} ${getProxyConfig()}",
)
appendLine(
"${
context.getString(
R.string.main_diagnostics_proxy_auth_title,
)
} ${isProxyAuthEnabled()}",
)

// Category
appendLine()
appendLine(context.getString(R.string.main_diagnostics_tsl_cache_title))
Expand Down
3 changes: 3 additions & 0 deletions app/src/main/res/values/donottranslate.xml
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,9 @@
<string name="main_diagnostics_cdoc2_default_title">CDOC2-DEFAULT:\u0020</string>
<string name="main_diagnostics_cdoc2_use_keyserver_title">CDOC2-USE-KEYSERVER:\u0020</string>
<string name="main_diagnostics_cdoc2_default_keyserver_title">CDOC2-DEFAULT-KEYSERVER:\u0020</string>
<string name="main_diagnostics_settings_title">Settings:</string>
<string name="main_diagnostics_proxy_config_title">Proxy config:\u0020</string>
<string name="main_diagnostics_proxy_auth_title">Proxy auth:\u0020</string>

<string name="main_diagnostics_date_title">DATE:\u0020</string>
<string name="main_diagnostics_serial_title">SERIAL:\u0020</string>
Expand Down
Loading