Untitled
unknown
plain_text
7 months ago
2.3 kB
4
Indexable
import org.junit.Assert
import org.junit.Test
class GetTransactionDetailsToAccountUseCaseTest {
@Test
fun `account and card associated with account found - should return transaction details`() {
// Arrange
val transactionId = "12345"
val accountNumber = "98765"
val productData = listOf(ProductData(model = ProductModel(number = accountNumber)))
val cardData = listOf(Card(associatedAccount = accountNumber))
val transactionalgd = mock(Transactionalgd::class.java)
val productListProvider = mock(ProductListProvider::class.java)
val cardProvider = mock(CardProvider::class.java)
`when`(transactionalgd.getTransaction(transactionId)).thenReturn(Transaction(accountNumber = accountNumber))
`when`(productListProvider.getAll()).thenReturn(productData)
`when`(cardProvider.getCard()).thenReturn(cardData)
val useCase = GetTransactionDetailsToAccountUseCase(transactionalgd, productListProvider, cardProvider)
// Act
val result = useCase.execute(transactionId)
// Assert
Assert.assertEquals(accountNumber, result.accountNumber)
Assert.assertTrue(result.isInternalAccountTransfer)
}
@Test
fun `account and card associated with account not found - should return null`() {
// Arrange
val transactionId = "12345"
val accountNumber = "98765"
val productData = listOf(ProductData(model = ProductModel(number = "00000")))
val cardData = listOf(Card(associatedAccount = "00000"))
val transactionalgd = mock(Transactionalgd::class.java)
val productListProvider = mock(ProductListProvider::class.java)
val cardProvider = mock(CardProvider::class.java)
`when`(transactionalgd.getTransaction(transactionId)).thenReturn(Transaction(accountNumber = accountNumber))
`when`(productListProvider.getAll()).thenReturn(productData)
`when`(cardProvider.getCard()).thenReturn(cardData)
val useCase = GetTransactionDetailsToAccountUseCase(transactionalgd, productListProvider, cardProvider)
// Act
val result = useCase.execute(transactionId)
// Assert
Assert.assertNull(result)
}
}Editor is loading...
Leave a Comment