123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- """
- Name: r.in.ascii test
- Purpose: Tests r.in.ascii and its flags/options.
-
- Author: Sunveer Singh, Google Code-in 2017
- Copyright: (C) 2017 by Sunveer Singh and the GRASS Development Team
- Licence: This program is free software under the GNU General Public
- License (>=v2). Read the file COPYING that comes with GRASS
- for details.
- """
- from grass.gunittest.case import TestCase
- from grass.gunittest.main import test
- from grass.script.core import read_command
- INPUT_NOQUOTES="""north: 4299000.00
- south: 4247000.00
- east: 528000.00
- west: 500000.00
- rows: 10
- cols: 15
- null: -9999
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 """
- INPUT_TSV="""north: 4299000.00
- south: 4247000.00
- east: 528000.00
- west: 500000.00
- rows: 10
- cols: 15
- null: -9999
- 1\ 2\ 3\ 4\ 5\ 6\ 7\ 8\ 9\ 10\ 11\ 12\ 13\ 14\ 15
- 1\ 2\ 3\ 4\ 5\ 6\ 7\ 8\ 9\ 10\ 11\ 12\ 13\ 14\ 15
- 1\ 2\ 3\ 4\ 5\ 6\ 7\ 8\ 9\ 10\ 11\ 12\ 13\ 14\ 15
- 1\ 2\ 3\ 4\ 5\ 6\ 7\ 8\ 9\ 10\ 11\ 12\ 13\ 14\ 15
- 1\ 2\ 3\ 4\ 5\ 6\ 7\ 8\ 9\ 10\ 11\ 12\ 13\ 14\ 15
- 1\ 2\ 3\ 4\ 5\ 6\ 7\ 8\ 9\ 10\ 11\ 12\ 13\ 14\ 15
- 1\ 2\ 3\ 4\ 5\ 6\ 7\ 8\ 9\ 10\ 11\ 12\ 13\ 14\ 15
- 1\ 2\ 3\ 4\ 5\ 6\ 7\ 8\ 9\ 10\ 11\ 12\ 13\ 14\ 15
- 1\ 2\ 3\ 4\ 5\ 6\ 7\ 8\ 9\ 10\ 11\ 12\ 13\ 14\ 15
- 1\ 2\ 3\ 4\ 5\ 6\ 7\ 8\ 9\ 10\ 11\ 12\ 13\ 14\ 15 """
- INPUT_UNCOMMON="""north: 4299000.00
- south: 4247000.00
- east: 528000.00
- west: 500000.00
- rows: 10
- cols: 15
- null: -9999
- 1@ 2@ 3@ 4@ 5@ 6@ 7@ 8@ 9@ 10@ 11@ 12@ 13@ 14@ 15
- 1@ 2@ 3@ 4@ 5@ 6@ 7@ 8@ 9@ 10@ 11@ 12@ 13@ 14@ 15
- 1@ 2@ 3@ 4@ 5@ 6@ 7@ 8@ 9@ 10@ 11@ 12@ 13@ 14@ 15
- 1@ 2@ 3@ 4@ 5@ 6@ 7@ 8@ 9@ 10@ 11@ 12@ 13@ 14@ 15
- 1@ 2@ 3@ 4@ 5@ 6@ 7@ 8@ 9@ 10@ 11@ 12@ 13@ 14@ 15
- 1@ 2@ 3@ 4@ 5@ 6@ 7@ 8@ 9@ 10@ 11@ 12@ 13@ 14@ 15
- 1@ 2@ 3@ 4@ 5@ 6@ 7@ 8@ 9@ 10@ 11@ 12@ 13@ 14@ 15
- 1@ 2@ 3@ 4@ 5@ 6@ 7@ 8@ 9@ 10@ 11@ 12@ 13@ 14@ 15
- 1@ 2@ 3@ 4@ 5@ 6@ 7@ 8@ 9@ 10@ 11@ 12@ 13@ 14@ 15
- 1@ 2@ 3@ 4@ 5@ 6@ 7@ 8@ 9@ 10@ 11@ 12@ 13@ 14@ 15 """
- class SimpleCsvTestCase(TestCase):
- ascii_test = 'ascii'
- @classmethod
- def setUpClass(cls):
- """Use temporary region settings"""
- cls.use_temp_region()
- cls.runModule('g.region', n=4299000.00, s=4247000.00, e=528000.00, w=500000.00)
- @classmethod
- def tearDownClass(cls):
- cls.del_temp_region()
- def tearDown(self):
- """Remove the raster map after each test method"""
- self.runModule('g.remove', flags='f', type='raster', pattern=self.ascii_test)
- def test_no_text_delimeter(self):
- """Test loading no quotes"""
- self.assertModule('r.in.ascii', input='-', output=self.ascii_test,
- type='CELL', stdin_=INPUT_NOQUOTES)
- self.assertRasterMinMax(map=self.ascii_test, refmin=1, refmax=15,
- msg="ascii_test in degrees must be between 1 and 15")
- def test_text_delimeter(self):
- """Testing with external file"""
- self.assertModule('r.in.ascii', input='data/input_ascii.txt', output=self.ascii_test,
- type='CELL')
- self.assertRasterMinMax(map=self.ascii_test, refmin=1, refmax=5,
- msg="ascii_test in degrees must be between 1 and 5")
- def test_tsv(self):
- """Test loading TSV"""
- self.assertModule('r.in.ascii', input='-', output=self.ascii_test,
- type='CELL', stdin_=INPUT_TSV)
- self.assertRasterMinMax(map=self.ascii_test, refmin=1, refmax=15,
- msg="ascii_test in degrees must be between 1 and 15")
- def test_uncommon_delims(self):
- """Test loading with uncommon delimiters"""
- self.assertModule('r.in.ascii', input='-', output=self.ascii_test,
- type='CELL', stdin_=INPUT_UNCOMMON)
- self.assertRasterMinMax(map=self.ascii_test, refmin=1, refmax=15,
- msg="ascii_test in degrees must be between 1 and 15")
- if __name__ == '__main__':
- test()
|