123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- #!/usr/bin/python
-
- import operator
- import subprocess
- import unittest
-
- from sznqalibs import hoover
-
-
- class PyinireadDriver(hoover.BaseTestDriver):
-
- def _get_data(self):
- out = ""
- with open(self._args['file']) as fh:
- for x in fh.readlines():
- if not x.startswith("#"):
- out += x
- self.data['stdout'] = out
-
-
- class InireadDriver(hoover.BaseTestDriver):
-
- plain_args = ['file']
- params = ['-k', '-s']
- switches = ['-d', '-1']
-
- def _get_data(self):
- args = ['fff', '-I', 'ini', 'iniread']
- for key in self._args['order'].split(','):
- value = self._args[key]
- if key in self.switches:
- if value:
- args.append(key)
- elif key in self.params:
- if value is not None:
- args += [key, value]
- else:
- if value is not None:
- args.append(value)
- self.data['stdout'] = subprocess.check_output(args)
-
-
- class TestCase(unittest.TestCase):
-
- def setUp(self):
- self.driver_class = InireadDriver
-
- def test_simple(self):
- argsrc = hoover.Cartman({
- 'order': ['-k,-s,file', '-s,-k,file'],
- '-k': ['somekey', None, ''],
- '-s': ['somesection', None, ''],
- 'file': './data/iniread/test1',
- }, {
- 'order': hoover.Cartman.Iterable,
- '-k': hoover.Cartman.Iterable,
- '-s': hoover.Cartman.Iterable,
- 'file': hoover.Cartman.Scalar,
- })
- tests = [(operator.eq, InireadDriver, PyinireadDriver)]
- tracker = hoover.regression_test(argsrc, tests)
- self.assertFalse(tracker.errors_found(), tracker.format_report())
-
-
- if __name__ == '__main__':
- unittest.main()
|