-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathFunctionsKtTest.kt
46 lines (40 loc) · 1.5 KB
/
FunctionsKtTest.kt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import org.junit.jupiter.api.Assertions.*
import org.junit.jupiter.api.*
class FunctionsKtTest {
@Test
fun testGetFixedFee() {
assertNotNull(getFixedFee(true))
assertNotNull(getFixedFee(false))
assertTrue(getFixedFee(true) is Int)
assertTrue(getFixedFee(false) is Int)
assertEquals(3, getFixedFee(true))
assertEquals(6, getFixedFee(false))
}
@Test
fun testGetLiterCost() {
assertNotNull(getLiterCost(0))
assertTrue(getLiterCost(0) is Float)
assertEquals(.3f, getLiterCost(400))
assertEquals(.15f, getLiterCost(100))
}
@Test
fun testGetDiscount() {
assertNotNull(getDiscount(false, false, 0, false))
assertNotNull(getDiscount(true, true, 10, true))
assertTrue(getDiscount(false, false, 0, false) is Float)
assertTrue(getDiscount(true, true, 10, true) is Float)
assertEquals(.2f, getDiscount(true, true, 4, true))
assertEquals(.5f, getDiscount(true, true, 4, false))
assertEquals(.5f, getDiscount(false, true, 6, false))
assertEquals(.7f, getDiscount(false, true, 3, false))
assertEquals(1f, getDiscount(false, false, 0, false))
}
@Test
fun testGetWaterCost() {
assertNotNull(getWaterCost(0, 0f, 0f))
assertTrue(getWaterCost(0, 0f, 0f) is Float)
assertEquals(15f, getWaterCost(100, .15f, 1f))
assertEquals(7.5f, getWaterCost(100, .15f, .5f))
assertEquals(37.5f, getWaterCost(250, .3f, .5f))
}
}