Skip to content

Commit bdc6d95

Browse files
committed
test: cover scanner routing
1 parent 10cbfdf commit bdc6d95

2 files changed

Lines changed: 27 additions & 1 deletion

File tree

app/src/main/java/to/bitkit/viewmodels/AppViewModel.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1448,7 +1448,7 @@ class AppViewModel @Inject constructor(
14481448
private suspend fun handleDecodedScan(
14491449
scan: Scanner?,
14501450
input: String,
1451-
fromMainScanner: Boolean = false,
1451+
fromMainScanner: Boolean,
14521452
) = when (scan) {
14531453
is Scanner.OnChain -> onScanOnchain(scan.invoice, input, fromMainScanner)
14541454
is Scanner.Lightning -> onScanLightning(scan.invoice, input, fromMainScanner)

app/src/test/java/to/bitkit/viewmodels/AppViewModelSendFlowTest.kt

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -383,6 +383,32 @@ class AppViewModelSendFlowTest : BaseUnitTest() {
383383
assertEquals(Sheet.Send(SendRoute.Confirm), sut.currentSheet.value)
384384
}
385385

386+
@Test
387+
fun `main scanner zero amount lightning scan opens amount sheet`() = test {
388+
val bolt11 = "lnbcrt1zeroamount"
389+
stubLightningScan(bolt11 = bolt11, amountSats = 0u)
390+
391+
sut.showScannerSheet()
392+
sut.onScannerSheetResult(bolt11)
393+
advanceUntilIdle()
394+
395+
assertEquals(Sheet.Send(SendRoute.Amount), sut.currentSheet.value)
396+
}
397+
398+
@Test
399+
fun `main scanner lightning scan opens QuickPay when enabled`() = test {
400+
val bolt11 = "lnbcrt1scannerquickpay"
401+
enableQuickPay(thresholdSats = 1000u)
402+
stubLightningScan(bolt11 = bolt11, amountSats = 500u)
403+
404+
sut.showScannerSheet()
405+
sut.onScannerSheetResult(bolt11)
406+
advanceUntilIdle()
407+
408+
assertEquals(QuickPayData.Bolt11(sats = 500u, bolt11 = bolt11), sut.quickPayData.value)
409+
assertEquals(Sheet.Send(SendRoute.QuickPay), sut.currentSheet.value)
410+
}
411+
386412
@Test
387413
fun `lightning scan uses QuickPay when enabled`() = test {
388414
val bolt11 = "lnbcrt1quickpay"

0 commit comments

Comments
 (0)