- def test_InputsParser_strict(self) -> None:
- """Test behavior of strict (= postvars) InputsParser."""
- self.assertEqual([],
- InputsParser({}).get_all_str('foo'))
- self.assertEqual([],
- InputsParser({'foo': []}).get_all_str('foo'))
- self.assertEqual(['bar'],
- InputsParser({'foo': ['bar']}).get_all_str('foo'))
- self.assertEqual(['bar', 'baz'],
- InputsParser({'foo': ['bar', 'baz']}).
- get_all_str('foo'))
- self.assertEqual([],
- InputsParser({}).get_all_int('foo'))
- self.assertEqual([],
- InputsParser({'foo': []}).get_all_int('foo'))
- self.assertEqual([],
- InputsParser({'foo': ['']}).get_all_int('foo'))
- self.assertEqual([0],
- InputsParser({'foo': ['0']}).get_all_int('foo'))
- self.assertEqual([0, 17],
- InputsParser({'foo': ['0', '17']}).
- get_all_int('foo'))
- with self.assertRaises(BadFormatException):
- InputsParser({'foo': ['0.1', '17']}).get_all_int('foo')
- with self.assertRaises(BadFormatException):
- InputsParser({'foo': ['None', '17']}).get_all_int('foo')
- with self.assertRaises(BadFormatException):
- InputsParser({}).get_str('foo')
+ def test_InputsParser_get_str(self) -> None:
+ """Test InputsParser.get_str."""
+ parser = InputsParser({})
+ self.assertEqual(None, parser.get_str('foo'))
+ self.assertEqual('bar', parser.get_str('foo', 'bar'))
+ parser = InputsParser({'foo': []})
+ self.assertEqual(None, parser.get_str('foo'))
+ self.assertEqual('bar', parser.get_str('foo', 'bar'))
+ parser = InputsParser({'foo': ['baz']})
+ self.assertEqual('baz', parser.get_str('foo', 'bar'))
+ parser = InputsParser({'foo': ['baz', 'quux']})
+ self.assertEqual('baz', parser.get_str('foo', 'bar'))
+
+ def test_InputsParser_get_all_of_key_prefixed(self) -> None:
+ """Test InputsParser.get_all_of_key_prefixed."""
+ parser = InputsParser({})
+ self.assertEqual({},
+ parser.get_all_of_key_prefixed(''))
+ self.assertEqual({},
+ parser.get_all_of_key_prefixed('foo'))
+ parser = InputsParser({'foo': ['bar']})
+ self.assertEqual({'foo': ['bar']},
+ parser.get_all_of_key_prefixed(''))
+ parser = InputsParser({'x': ['y', 'z']})
+ self.assertEqual({'': ['y', 'z']},
+ parser.get_all_of_key_prefixed('x'))
+ parser = InputsParser({'xx': ['y', 'Z']})
+ self.assertEqual({'x': ['y', 'Z']},
+ parser.get_all_of_key_prefixed('x'))
+ parser = InputsParser({'xx': ['y']})
+ self.assertEqual({},
+ parser.get_all_of_key_prefixed('xxx'))
+ parser = InputsParser({'xxx': ['x'], 'xxy': ['y'], 'xyy': ['z']})
+ self.assertEqual({'x': ['x'], 'y': ['y']},
+ parser.get_all_of_key_prefixed('xx'))
+ parser = InputsParser({'xxx': ['x', 'y'], 'xxy': ['y', 'z']})
+ self.assertEqual({'x': ['x', 'y'], 'y': ['y', 'z']},
+ parser.get_all_of_key_prefixed('xx'))
+
+ def test_InputsParser_get_int_or_none(self) -> None:
+ """Test InputsParser.get_int_or_none."""
+ parser = InputsParser({})
+ self.assertEqual(None, parser.get_int_or_none('foo'))
+ parser = InputsParser({'foo': []})
+ self.assertEqual(None, parser.get_int_or_none('foo'))
+ parser = InputsParser({'foo': ['']})
+ self.assertEqual(None, parser.get_int_or_none('foo'))
+ parser = InputsParser({'foo': ['0']})
+ self.assertEqual(0, parser.get_int_or_none('foo'))