Flooded Switzerland

2c04ad64

Elham S.

A newer submission is available.
Some tests are incorrect: They fail when run against a reference implementation. The test suite score has been reduced.

Test Suite

39 % complete

Suggestions

  • Revise incorrect test FloodSimulationTest.isFloodedNullTest. The test failed on line 56 when run against a reference implementation:
    NullPointerException: Cannot invoke "floodedswitzerland.ElevationModel.elevationAt(floodedswitzerland.Coordinate)" because "this.elevationModel" is null
  • Das Verhalten von isFlooded testen, indem ein Mini-ElevationModel erstellt wird, das dem FloodSimulation-Konstruktor übergeben wird. Danach den Wasserstand mit setWaterLevel setzen, isFlooded mit verschiedenen Koordinaten aufrufen und prüfen, dass das richtige Resultat zurückgegeben wird. The test suite already does this partially, but it only detects 31 out of 36 possible bugs in this regard.
  • Prüfen, dass Municipality einen Konstruktor enthält und drei «Getter»-Methoden namens name(), population() und area(), welche die Werte zurückgeben, die dem Konstruktor übergeben werden.
  • Prüfen, dass Municipality die equals-Methode überschreibt, sodass zwei Gemeinden mit gleichen Attributen gleich sind, aber zwei Gemeinden mit unterschiedlichen Attributen ungleich.

Implementation

39 % complete 21 / 21 Tests
  • CoordinateTest.constructorGetter: Passed
  • CoordinateTest.equals: Passed
  • CoordinateTest.equalsNullOrOtherType: Passed
  • CoordinateTest.toStringTest: Passed
  • ElevationModelReaderTest.read1x1: Passed
  • ElevationModelReaderTest.read2x2: Passed
  • ElevationModelReaderTest.readHeader: Passed
  • ElevationModelReaderTest.readNoData: Passed
  • ElevationModelReaderTest.readRectangular: Passed
  • ElevationModelTest.constructorGetter: Passed
  • ElevationModelTest.elevationAt1x1: Passed
  • ElevationModelTest.elevationAtBetween: Passed
  • ElevationModelTest.elevationAtExact: Passed
  • ElevationModelTest.elevationAtOutside: Passed
  • FloodSimulationTest.getWaterLevelTest: Passed
  • FloodSimulationTest.increaseWaterLevelBetween1000And2000Test: Passed
  • FloodSimulationTest.increaseWaterLevelHigherThen2000Test: Passed
  • FloodSimulationTest.increaseWaterLevelLowerThen1000Test: Passed
  • FloodSimulationTest.isFloodedNullTest: Passed
  • FloodSimulationTest.isFloodedTest: Passed
  • FloodSimulationTest.setWaterLevelTest: Passed

Other Submissions