1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- """Test of gis library environment management
- @author Soeren Gebbert
- """
- from grass.gunittest.case import TestCase
- import grass.lib.gis as libgis
- class GisLibraryTestEnv(TestCase):
- @classmethod
- def setUpClass(cls):
- libgis.G_gisinit("GisLibraryTestEnv")
- def test_gisrc(self):
- # File access
- libgis.G_setenv("TEST", "A")
- value = libgis.G_getenv("TEST")
- self.assertEqual(value, b"A")
- value = libgis.G_getenv2("TEST", libgis.G_VAR_GISRC)
- self.assertEqual(value, b"A")
- # In memory management
- libgis.G_setenv_nogisrc("TEST", "B")
- value = libgis.G_getenv_nofatal("TEST")
- self.assertEqual(value, b"B")
- value = libgis.G_getenv_nofatal2("TEST", libgis.G_VAR_GISRC)
- self.assertEqual(value, b"B")
- # Force reading
- libgis.G__read_gisrc_env()
- value = libgis.G_getenv("TEST")
- self.assertEqual(value, b"A")
- value = libgis.G_getenv2("TEST", libgis.G_VAR_GISRC)
- self.assertEqual(value, b"A")
- def test_switch_env(self):
- libgis.G_setenv_nogisrc("TEST", "SWITCH")
- libgis.G_setenv_nogisrc2("TEST", "SWITCH2", libgis.G_VAR_MAPSET)
- # Create alternative env
- libgis.G_create_alt_env()
- libgis.G_setenv_nogisrc("TEST", "TARGET")
- libgis.G_setenv_nogisrc2("TEST", "TARGET2", libgis.G_VAR_MAPSET)
- value = libgis.G_getenv("TEST")
- self.assertEqual(value, b"TARGET")
- value = libgis.G_getenv2("TEST", libgis.G_VAR_MAPSET)
- self.assertEqual(value, b"TARGET2")
- # Switch back to orig env
- libgis.G_switch_env()
- value = libgis.G_getenv("TEST")
- self.assertEqual(value, b"SWITCH")
- value = libgis.G_getenv2("TEST", libgis.G_VAR_MAPSET)
- self.assertEqual(value, b"SWITCH2")
- def test_mapset(self):
- # Mapset VAR file
- libgis.G_setenv2("TEST", "C", libgis.G_VAR_MAPSET)
- value = libgis.G_getenv2("TEST", libgis.G_VAR_MAPSET)
- self.assertEqual(value, b"C")
- libgis.G_setenv_nogisrc2("TEST", "D", libgis.G_VAR_MAPSET)
- value = libgis.G_getenv_nofatal2("TEST", libgis.G_VAR_MAPSET)
- self.assertEqual(value, b"D")
- # Force reading
- libgis.G__read_mapset_env()
- value = libgis.G_getenv2("TEST", libgis.G_VAR_MAPSET)
- self.assertEqual(value, b"C")
- if __name__ == "__main__":
- from grass.gunittest.main import test
- test()
|