GNU Taler taler-android coverage

2026-11-10 09:43:53 UTC · 89c4cc9 [all] contrib/ci: a nightly job that drives the POS terminal in an emulator

7.1%
lines, 2,447 of 34,539
7.1%
of the 34,266 lines this build type can reach

Totals

counter simulator
covered%
instruction17,590/293,7006.0%
branch695/12,1855.7%
line2,447/34,5397.1%
complexity796/14,2375.6%
method551/8,3276.6%
class160/1,48210.8%

Packages, ranked by what can still be reached

Lines inside screenshot-only composables and the dead functions of 11981 are left out of the ranking: counting them points the next round at work nobody can do. JaCoCo's own pages below still paint them red, because JaCoCo does not know about them.

packagereachable missed covered
net.taler.wallet.transactions2,3644.7%
~.config1,8455.3%(74 unreachable)
net.taler.wallet.contacts1,6890.0%
net.taler.wallet.payment1,5410.8%(4 unreachable)
net.taler.wallet.peer1,5330.0%
net.taler.wallet.compose1,5160.0%
~.checkout1,4855.9%(23 unreachable)
net.taler.wallet.balances1,2980.6%
~.history1,2557.4%(4 unreachable)
net.taler.wallet.main1,2142.1%
~.order1,0674.6%(102 unreachable)
~.devices1,0545.8%
net.taler.wallet.withdraw9831.9%
net.taler.wallet.deposit9290.6%
net.taler.lib.android8440.4%
~.payment8342.3%(24 unreachable)
net.taler.wallet.exchanges8241.9%
net.taler.wallet.settings7940.0%
~7730.0%
net.taler.wallet.accounts7370.0%
~.paymentoptions.sumup7120.0%
net.taler.wallet6381.2%
~.paymentoptions6360.0%(17 unreachable)
~.refund6352.7%(13 unreachable)
net.taler.wallet.transfer6280.0%
net.taler.wallet.mailbox5190.0%
net.taler.wallet.donau4140.0%
net.taler.wallet.backend38370.4%
net.taler.wallet.scan3800.0%
~.compose3630.0%
~.amount3620.0%(12 unreachable)
net.taler.common36158.9%
net.taler.wallet.tokens3490.0%
net.taler.wallet.ui.theme2160.0%
net.taler.lib.android.order1900.0%
net.taler.lib.android.qr1430.0%
net.taler.wallet.refund910.0%
net.taler.wallet.events830.0%
net.taler.merchantlib6983.0%
~.sim680.0%

Biggest untouched methods, known-unreachable ones removed

Still includes what needs hardware or a credential this build does not have — sumup wants an affiliate key and a card reader, devices a Bluetooth or USB display, and reportNfcPayload an NFC adapter no emulator provides. Those are reachable in principle and not by us.

linesmethod file
167CheckoutAmountEntryKt.CheckoutAmountEntry$lambda$0$1CheckoutAmountEntry.kt
165SettingsScreenKt.SettingsContentSettingsScreen.kt
139WithdrawalShowInfoKt.WithdrawalShowInfoWithdrawalShowInfo.kt
98PosThemeKt.<clinit>PosTheme.kt
97AliasRegistrationScreenKt.UserAliasCard$lambda$0AliasRegistrationScreen.kt
95MainActivityKt.MerchantTerminalAppMainActivity.kt
94TransactionDetailScreenKt.TransactionDetailScreen$lambda$11TransactionDetailScreen.kt
94ColorKt.<clinit>Color.kt
91ThemeKt.<clinit>Theme.kt
89AmountEntryFragmentKt.AmountPaneAmountEntryFragment.kt
86DepositAmountComposableKt.DepositAmountComposableDepositAmountComposable.kt
82TransferIBANKt.TransferIBANTransferIBAN.kt
82AmountKeypadKt.AmountKeypadAmountKeypad.kt
81ProcessPaymentFragmentKt.LandscapePaymentScreen$lambda$0ProcessPaymentFragment.kt
80TransactionWithdrawalComposableKt.TransactionWithdrawalComposableTransactionWithdrawalComposable.kt
80ScanQrScreenKt.ViewfinderOverlay$lambda$0$0$0ScanQrScreen.kt
80ContactScreenKt.ContactGroupCard$lambda$3ContactScreen.kt
79OutgoingPullComposableKt.OutgoingPullComposableOutgoingPullComposable.kt
78MainActivity.onCreate$lambda$0$0MainActivity.kt
78ContactScreenKt.ContactScreenContactScreen.kt
77ConfigFragmentKt.ConfigScreen$lambda$3ConfigFragment.kt
76ErrorComposableKt.ErrorComposableErrorComposable.kt
76CheckoutFragmentKt.CheckoutScreen$lambda$23$1CheckoutFragment.kt
75OrderManager.applyConfigurationOrderManager.kt
73OrderFragmentKt.PortraitOrderScreenOrderFragment.kt

Known unreachable

387 source lines are marked as impossible for a sim build to enter — 347 in composables whose only caller is the debug source set, 40 in functions with no caller at all (11981). Of those, 273 are lines JaCoCo counted as missed, and it is that figure which comes off the denominator above.

The full report

JaCoCo report, simulator only