UTS
This commit is contained in:
parent
b1cda446cc
commit
6dfdf3951e
63
app/src/test/BMICalculatorTest.kt
Normal file
63
app/src/test/BMICalculatorTest.kt
Normal file
@ -0,0 +1,63 @@
|
||||
package com.example.tiptime
|
||||
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.Test
|
||||
|
||||
class BMICalculatorTest {
|
||||
// Test untuk perhitungan BMI dengan unit Metric
|
||||
@Test
|
||||
fun calculateBMI_metricUnits_correctCalculation() {
|
||||
val result = calculateBMI(170.0, 65.0, false)
|
||||
assertEquals("22.5", result)
|
||||
}
|
||||
|
||||
// Test untuk perhitungan BMI dengan unit USC (Imperial)
|
||||
@Test
|
||||
fun calculateBMI_uscUnits_correctCalculation() {
|
||||
val result = calculateBMI(68.0, 150.0, true)
|
||||
// Rumus: 703 * (150 / (68^2)) = 22.8
|
||||
assertEquals("22.8", result)
|
||||
}
|
||||
|
||||
// Test jika input tinggi atau berat = 0 → hasil harus "0.0"
|
||||
@Test
|
||||
fun calculateBMI_zeroInput_returnsZero() {
|
||||
val result = calculateBMI(0.0, 0.0, false)
|
||||
assertEquals("0.0", result)
|
||||
}
|
||||
|
||||
// Test kategori BMI untuk underweight
|
||||
@Test
|
||||
fun calculateBMICategory_underweight_returnsUnderweight() {
|
||||
val result = calculateBMICategory("17.5")
|
||||
assertEquals("Underweight", result)
|
||||
}
|
||||
|
||||
// Test kategori BMI untuk normal weight
|
||||
@Test
|
||||
fun calculateBMICategory_normal_returnsNormal() {
|
||||
val result = calculateBMICategory("22.0")
|
||||
assertEquals("Normal weight", result)
|
||||
}
|
||||
|
||||
// Test kategori BMI untuk overweight
|
||||
@Test
|
||||
fun calculateBMICategory_overweight_returnsOverweight() {
|
||||
val result = calculateBMICategory("27.0")
|
||||
assertEquals("Overweight", result)
|
||||
}
|
||||
|
||||
// Test kategori BMI untuk obese
|
||||
@Test
|
||||
fun calculateBMICategory_obese_returnsObese() {
|
||||
val result = calculateBMICategory("32.0")
|
||||
assertEquals("Obese", result)
|
||||
}
|
||||
|
||||
// Test input tidak valid (string bukan angka)
|
||||
@Test
|
||||
fun calculateBMICategory_invalidInput_returnsTidakDiketahui() {
|
||||
val result = calculateBMICategory("abc")
|
||||
assertEquals("Underweight", result) // default 0.0 masuk ke underweight
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user