Procházet zdrojové kódy

pygrass: Fix enter statement on raster classes and fix the doctest.

git-svn-id: https://svn.osgeo.org/grass/grass/trunk@61876 15284696-431f-4ddb-bdfa-cd5b030d7da7
Pietro Zambelli před 10 roky
rodič
revize
d6ceb29029
1 změnil soubory, kde provedl 12 přidání a 12 odebrání
  1. 12 12
      lib/python/pygrass/raster/abstract.py

+ 12 - 12
lib/python/pygrass/raster/abstract.py

@@ -50,7 +50,8 @@ class Info(object):
         """Read the information for a raster map. ::
 
             >>> info = Info('elevation')
-            >>> info                                      # doctest: +ELLIPSIS
+            >>> info.read()
+            >>> info
             elevation@
             rows: 1350
             cols: 1500
@@ -58,7 +59,7 @@ class Info(object):
             east:  645000.0 west: 630000.0 ewres:10.0
             range: 56, 156
             proj: 99
-            ...
+            <BLANKLINE>
 
         """
         self.name = name
@@ -70,8 +71,7 @@ class Info(object):
         libraster.Rast_read_range(self.name, self.mapset, self.c_range)
 
     def _get_raster_region(self):
-        if self.name and self.mapset:
-            libraster.Rast_get_cellhd(self.name, self.mapset, self.c_region)
+        libraster.Rast_get_cellhd(self.name, self.mapset, self.c_region)
 
     def read(self):
         self._get_range()
@@ -175,8 +175,7 @@ class RasterAbstractBase(object):
     * Implements color, history and category handling
     * Renaming, deletion, ...
     """
-    def __init__(self, name, mapset="",
-                 mode='r', mtype='FCELL', overwrite=False):
+    def __init__(self, name, mapset="", *aopen, **kwopen):
         """The constructor need at least the name of the map
         *optional* field is the `mapset`. ::
 
@@ -206,12 +205,14 @@ class RasterAbstractBase(object):
         self.hist = History(self.name, self.mapset)
         self.cats = Category(self.name, self.mapset)
         self.info = Info(self.name, self.mapset)
-        self.mode = mode
-        self.mtype = mtype
-        self.overwrite = overwrite
+        self._aopen = aopen
+        self._kwopen = kwopen
+        self._mtype = 'CELL'
+        self._mode = 'r'
+        self._overwrite = False
 
     def __enter__(self):
-        self.open()
+        self.open(*self._aopen, **self._kwopen)
         return self
 
     def __exit__(self, exc_type, exc_value, traceback):
@@ -431,8 +432,7 @@ class RasterAbstractBase(object):
     def has_cats(self):
         """Return True if the raster map has categories"""
         if self.exist():
-            self.cats.read(self)
-            self.close()
+            self.cats.read()
             if len(self.cats) != 0:
                 return True
         return False