""" Created on Sun Jun 09 12:01: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 TestVDbAddTable(TestCase): """Test v.db.addtable script""" @classmethod def setUpClass(cls): """Copy vector.""" run_command("g.copy", vector="roadsmajor,myroads") @classmethod def tearDownClass(cls): """Remove copied vector""" run_command("g.remove", type="vector", name="myroads", flags="f") def test_add_single_columned_table_check(self): """Add a new attribute table with single column to layer 2""" module = SimpleModule( "v.db.addtable", map="myroads", columns="slope double precision", layer=2 ) self.assertModule(module) run_command("v.db.connect", flags="p", map="myroads") m = SimpleModule("v.info", map="myroads", flags="c") self.assertModule(m) self.assertNotRegexpMatches(decode(m.outputs.stdout), "slope") m = SimpleModule("v.info", map="myroads", flags="c", layer=2) self.assertModule(m) self.assertRegexpMatches(decode(m.outputs.stdout), "slope") if __name__ == "__main__": test()