Skip to content

Commit

Permalink
#9 rename and bolster tests
Browse files Browse the repository at this point in the history
  • Loading branch information
tobyweston committed Oct 8, 2017
1 parent e1011a0 commit 10cc56b
Showing 1 changed file with 20 additions and 19 deletions.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package bad.robot.temperature

import bad.robot.temperature.rrd.{Host, Seconds}
import org.specs2.matcher.DisjunctionMatchers.be_-\/
import org.specs2.matcher.DisjunctionMatchers._
import org.specs2.matcher.MatchResult
import org.specs2.mutable.Specification

Expand Down Expand Up @@ -35,22 +35,7 @@ class ErrorOnTemperatureSpikeTest extends Specification {
)
}

"Error message on a spiked value (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(3), List(SensorReading("A", Temperature(21.6)))))
writer.write(Measurement(Host("example"), Seconds(4), List(SensorReading("A", Temperature(51.1))))) must be_-\/.like {
case e: SensorSpikeError => e.message must_==
"""An unexpected spike was encountered on:
| sensor(s) : A
| previous temperatures : 51.1 °C
| spiked temperatures :
|""".stripMargin
}
}

"Ignore spiked values (multiple sensors)" >> {
"Error on spiked values (multiple sensors)" >> {
val delegate = new StubWriter
val writer = new ErrorOnTemperatureSpike(delegate)
writer.write(Measurement(Host("example"), Seconds(1), List(SensorReading("A", Temperature(21.1)))))
Expand Down Expand Up @@ -89,13 +74,13 @@ class ErrorOnTemperatureSpikeTest extends Specification {
)
}

"Doesn't ignore negative spiked values (single sensor)" >> {
"Doesn't error on negative spiked 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)))))
writer.write(Measurement(Host("example"), Seconds(4), List(SensorReading("A", Temperature(1.1))))) must be_\/-
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)))),
Expand All @@ -104,6 +89,22 @@ class ErrorOnTemperatureSpikeTest extends Specification {
)
}

"Error message on a spiked value (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(3), List(SensorReading("A", Temperature(21.6)))))
writer.write(Measurement(Host("example"), Seconds(4), List(SensorReading("A", Temperature(51.1))))) must be_-\/.like {
case e: SensorSpikeError => e.message must_==
"""An unexpected spike was encountered on:
| sensor(s) : A
| previous temperatures : 51.1 °C
| spiked temperatures :
|""".stripMargin
}
}


class StubWriter extends TemperatureWriter {
var temperatures: List[Measurement] = List()

Expand Down

0 comments on commit 10cc56b

Please sign in to comment.