test_r_fillnulls.py 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. """
  2. Created on Sun Jun 07 21:57:07 2018
  3. @author: Sanjeet Bhatti
  4. """
  5. import os
  6. from grass.gunittest.case import TestCase
  7. from grass.gunittest.main import test
  8. from grass.gunittest.gmodules import SimpleModule
  9. from grass.script.core import run_command
  10. class TestRFillNulls(TestCase):
  11. """Test r.fillnulls script"""
  12. module = "r.fillnulls"
  13. mapName = "elevation"
  14. expression = "elevation_filt = if(elevation > 130, null(), elevation)"
  15. mapNameCalc = "elevation_filt"
  16. mapComplete = "elevation_complete"
  17. values = "null_cells=0"
  18. def setUp(self):
  19. """Create maps in a small region."""
  20. self.use_temp_region()
  21. self.runModule("g.region", res=200, raster=self.mapName, flags="ap")
  22. run_command("r.mapcalc", expression=self.expression)
  23. def tearDown(self):
  24. """Remove temporary region"""
  25. self.runModule(
  26. "g.remove",
  27. flags="f",
  28. type="raster",
  29. name=(self.mapNameCalc, self.mapComplete),
  30. )
  31. self.del_temp_region()
  32. def test_rst(self):
  33. module = SimpleModule(
  34. self.module,
  35. input=self.mapNameCalc,
  36. output=self.mapComplete,
  37. segmax=1200,
  38. npmin=100,
  39. tension=150,
  40. )
  41. self.assertModule(module)
  42. self.assertRasterFitsUnivar(raster=self.mapComplete, reference=self.values)
  43. def test_bspline(self):
  44. module = SimpleModule(
  45. self.module,
  46. input=self.mapNameCalc,
  47. output=self.mapComplete,
  48. method="bicubic",
  49. )
  50. self.assertModule(module)
  51. self.assertRasterFitsUnivar(raster=self.mapComplete, reference=self.values)
  52. if __name__ == "__main__":
  53. test()