58 lines
1.5 KiB
Kotlin
58 lines
1.5 KiB
Kotlin
import com.cubetiqs.money.Money
|
|
import com.cubetiqs.money.MoneyConfig
|
|
import com.cubetiqs.money.MoneyCurrency
|
|
import com.cubetiqs.money.MoneyExchangeUtils
|
|
import com.cubetiqs.money.SpecialStringProcessor
|
|
import org.junit.Assert
|
|
import org.junit.Test
|
|
|
|
class MoneyTests {
|
|
@Test
|
|
fun money_operator_test() {
|
|
// val money = Money(10.0)
|
|
// val money2 = Money(20.0)
|
|
// money *= money
|
|
// println((money + money2) * money2)
|
|
// Assert.assertEquals(100.0, money.value, 0.0)
|
|
|
|
val test = SpecialStringProcessor().serialize(Money(1.0, " usd "))
|
|
println(test)
|
|
}
|
|
|
|
@Test
|
|
fun exchange_2usd_to_khr_test() {
|
|
val properties = MoneyConfig
|
|
.MoneyConfigProperties
|
|
.MoneyConfigPropertiesBuilder()
|
|
.setDeliEqual(':')
|
|
.setDeliSplit(',')
|
|
.build()
|
|
|
|
MoneyConfig
|
|
.setProperties(properties)
|
|
.parse("USD:1,KHR:4000")
|
|
|
|
Assert.assertTrue(MoneyConfig.isValid())
|
|
|
|
println(MoneyConfig.getConfig())
|
|
|
|
val moneyUsd = Money(2.0)
|
|
val moneyKhr = MoneyExchangeUtils.exchange(moneyUsd, "KHR")
|
|
|
|
Assert.assertEquals(8000.0, moneyKhr.getMoneyValue(), 0.0)
|
|
}
|
|
|
|
@Test
|
|
fun money_exchange_config_builder_test() {
|
|
MoneyConfig.propertiesBuilder
|
|
.setDeliEqual('=')
|
|
.setDeliSplit(';')
|
|
|
|
MoneyConfig.parse("USD:1,KHR=4000,EUR=0.99")
|
|
|
|
val moneyUsd = Money.ONE
|
|
val moneyKhr = Money.create(20000.0, MoneyCurrency.KHR)
|
|
|
|
val result = moneyUsd
|
|
}
|
|
} |