Skip to content

Commit

Permalink
#9 error and don't log negative temperature spikes
Browse files Browse the repository at this point in the history
  • Loading branch information
tobyweston committed Oct 12, 2017
1 parent 01174e4 commit bce4743
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,7 @@ object ErrorOnTemperatureSpike {

private val spikePercentage = 30

// negative numbers would be a decrease, which we'll ignore (use Math.abs if we change our mind later)
def percentageIncrease(oldValue: Double, newValue: Double): Double = (newValue - oldValue) / oldValue * 100
def percentageIncrease(oldValue: Double, newValue: Double): Double = Math.abs((newValue - oldValue) / oldValue * 100)

/**
* @param delegate delegate writer
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,18 +74,17 @@ class ErrorOnTemperatureSpikeTest extends Specification {
)
}

"Doesn't error on negative spiked values (single sensor)" >> {
"Negative spikes values (single sensor)" >> {
val delegate = new StubWriter
val writer = new ErrorOnTemperatureSpike(delegate)
writer.write(Measurement(Host("example"), Seconds(1), List(SensorReading("A", Temperature(21.1)))))
writer.write(Measurement(Host("example"), Seconds(2), List(SensorReading("A", Temperature(21.4)))))
writer.write(Measurement(Host("example"), Seconds(3), List(SensorReading("A", Temperature(21.6)))))
writer.write(Measurement(Host("example"), Seconds(4), List(SensorReading("A", Temperature(1.1))))) must be_\/-
writer.write(Measurement(Host("example"), Seconds(4), List(SensorReading("A", Temperature(1.1))))) must be_-\/.like(SensorError)
delegate.temperatures must_== List(
Measurement(Host("example"), Seconds(1), List(SensorReading("A", Temperature(21.1)))),
Measurement(Host("example"), Seconds(2), List(SensorReading("A", Temperature(21.4)))),
Measurement(Host("example"), Seconds(3), List(SensorReading("A", Temperature(21.6)))),
Measurement(Host("example"), Seconds(4), List(SensorReading("A", Temperature(1.1))))
)
}

Expand Down

0 comments on commit bce4743

Please sign in to comment.