""" Created on Sun Jun 07 21:57:07 2018 @author: Sanjeet Bhatti """ import os from grass.gunittest.case import TestCase from grass.gunittest.main import test from grass.gunittest.gmodules import SimpleModule from grass.script.core import run_command class TestRFillNulls(TestCase): """Test r.fillnulls script""" module = "r.fillnulls" mapName = "elevation" expression = "elevation_filt = if(elevation > 130, null(), elevation)" mapNameCalc = "elevation_filt" mapComplete = "elevation_complete" values = "null_cells=0" def setUp(self): """Create maps in a small region.""" self.use_temp_region() self.runModule("g.region", res=200, raster=self.mapName, flags="ap") run_command("r.mapcalc", expression=self.expression) def tearDown(self): """Remove temporary region""" self.runModule( "g.remove", flags="f", type="raster", name=(self.mapNameCalc, self.mapComplete), ) self.del_temp_region() def test_rst(self): module = SimpleModule( self.module, input=self.mapNameCalc, output=self.mapComplete, segmax=1200, npmin=100, tension=150, ) self.assertModule(module) self.assertRasterFitsUnivar(raster=self.mapComplete, reference=self.values) def test_bspline(self): module = SimpleModule( self.module, input=self.mapNameCalc, output=self.mapComplete, method="bicubic", ) self.assertModule(module) self.assertRasterFitsUnivar(raster=self.mapComplete, reference=self.values) if __name__ == "__main__": test()