Skip to content

Commit

Permalink
test: add tests for measurements concepts
Browse files Browse the repository at this point in the history
  • Loading branch information
AndreaGiulianelli committed May 9, 2023
1 parent b3970c6 commit 1a840fb
Showing 1 changed file with 36 additions and 0 deletions.
36 changes: 36 additions & 0 deletions src/test/kotlin/entity/measurements/MeasurementsTest.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
/*
* Copyright (c) 2023. Smart Operating Block
*
* Use of this source code is governed by an MIT-style
* license that can be found in the LICENSE file or at
* https://opensource.org/licenses/MIT.
*/

package entity.measurements

import io.kotest.assertions.throwables.shouldNotThrow
import io.kotest.assertions.throwables.shouldThrow
import io.kotest.core.spec.style.StringSpec

class MeasurementsTest : StringSpec({
val negativeLuminosityValue = -10.0
val positiveLuminosityValue = 10.0
val outsidePercentageValue = 110.0
val correctPercentageValue = 100.0

"it should be impossible to create a luminosity object with negative value" {
shouldThrow<IllegalArgumentException> { Luminosity(negativeLuminosityValue) }
}

"it should be possible to create a correct luminosity with positive values" {
shouldNotThrow<IllegalArgumentException> { Luminosity(positiveLuminosityValue) }
}

"it should not be possible to create a percentage with a value outside its range" {
shouldThrow<IllegalArgumentException> { Percentage(outsidePercentageValue) }
}

"it should be possible to create a percentage with a value within its range" {
shouldNotThrow<IllegalArgumentException> { Percentage(correctPercentageValue) }
}
})

0 comments on commit 1a840fb

Please sign in to comment.