""" Created on Sun Jun 09 01:52:34 2018 @author: Sanjeet Bhatti """ 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 from grass.script.utils import decode class TestVDbDropRow(TestCase): """Test v.db.droprow script""" mapName = "elevation" inputMap = "rand5k_elev" outputMap = "rand5k_elev_filt" values = "min=56.12\nmax=155.157" @classmethod def setUpClass(cls): """Create maps in a small region.""" cls.use_temp_region() cls.runModule("g.region", raster=cls.mapName, flags="p") @classmethod def tearDownClass(cls): """Remove temporary region""" cls.del_temp_region() cls.runModule( "g.remove", flags="f", type="vector", name=(cls.inputMap, cls.outputMap) ) def test_drop_row_check(self): """Drop vector object from a vector map""" run_command("v.random", output=self.inputMap, n=5000) run_command( "v.db.addtable", map=self.inputMap, column="elevation double precision" ) run_command( "v.what.rast", map=self.inputMap, raster=self.mapName, column=self.mapName ) module = SimpleModule( "v.db.droprow", input=self.inputMap, output=self.outputMap, where="elevation IS NULL", ) self.assertModule(module) self.assertVectorFitsUnivar( map=self.outputMap, column="elevation", reference=self.values, precision=5 ) if __name__ == "__main__": test()