]> sigrok.org Git - sigrok-meter.git/blame - test.py
license: remove FSF postal address from boiler plate license text
[sigrok-meter.git] / test.py
CommitLineData
51b4b975
JS
1#!/usr/bin/env python
2
3##
4## This file is part of the sigrok-meter project.
5##
6## Copyright (C) 2015 Jens Steinhauser <jens.steinhauser@gmail.com>
7##
8## This program is free software; you can redistribute it and/or modify
9## it under the terms of the GNU General Public License as published by
10## the Free Software Foundation; either version 2 of the License, or
11## (at your option) any later version.
12##
13## This program is distributed in the hope that it will be useful,
14## but WITHOUT ANY WARRANTY; without even the implied warranty of
15## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16## GNU General Public License for more details.
17##
18## You should have received a copy of the GNU General Public License
0b63748b 19## along with this program; if not, see <http://www.gnu.org/licenses/>.
51b4b975
JS
20##
21
2e8c2e6e 22import sigrok.core as sr
51b4b975
JS
23import unittest
24
25if __name__ == '__main__':
26 import qtcompat
27 qtcompat.load_modules(False)
2e8c2e6e 28 import acquisition
51b4b975
JS
29
30class TestDriverstringParsing(unittest.TestCase):
31 def setUp(self):
2e8c2e6e
JS
32 self.context = sr.Context_create()
33 self.a = acquisition.Acquisition(self.context)
51b4b975
JS
34
35 def test_valid_driverstring(self):
36 self.assertEqual(
2e8c2e6e 37 self.a._parse_driverstring('demo'),
51b4b975
JS
38 ('demo', {}))
39 self.assertEqual(
2e8c2e6e 40 self.a._parse_driverstring('demo:samplerate=1'),
51b4b975
JS
41 ('demo', {'samplerate': 1}))
42 self.assertEqual(
2e8c2e6e 43 self.a._parse_driverstring('demo:samplerate=1:analog_channels=1'),
51b4b975
JS
44 ('demo', {'samplerate': 1, 'analog_channels': 1}))
45
46 def test_invalid_driverstring(self):
47 self.assertRaisesRegexp(ValueError, 'is not a valid driver string',
2e8c2e6e 48 self.a._parse_driverstring, '')
51b4b975 49 self.assertRaisesRegexp(ValueError, 'is not a valid driver string',
2e8c2e6e 50 self.a._parse_driverstring, ':')
51b4b975 51 self.assertRaisesRegexp(ValueError, 'is not a valid driver string',
2e8c2e6e 52 self.a._parse_driverstring, ':a')
51b4b975 53 self.assertRaisesRegexp(ValueError, 'is not a valid driver string',
2e8c2e6e 54 self.a._parse_driverstring, 'd:a')
51b4b975 55 self.assertRaisesRegexp(ValueError, 'is not a valid driver string',
2e8c2e6e 56 self.a._parse_driverstring, 'd:a=')
51b4b975 57 self.assertRaisesRegexp(ValueError, 'is not a valid driver string',
2e8c2e6e 58 self.a._parse_driverstring, 'd:a=:')
51b4b975 59 self.assertRaisesRegexp(ValueError, 'is not a valid driver string',
2e8c2e6e 60 self.a._parse_driverstring, 'd:a=b:')
51b4b975 61 self.assertRaisesRegexp(ValueError, 'is not a valid driver string',
2e8c2e6e 62 self.a._parse_driverstring, 'd:=b:')
51b4b975 63 self.assertRaisesRegexp(ValueError, 'is not a valid driver string',
2e8c2e6e 64 self.a._parse_driverstring, 'd:=:')
51b4b975 65 self.assertRaisesRegexp(ValueError, 'is not a valid driver string',
2e8c2e6e 66 self.a._parse_driverstring, 'd:=')
51b4b975
JS
67
68if __name__ == '__main__':
69 unittest.main()