MCPcopy Index your code
hub / github.com/python/cpython / test_converters

Method test_converters

Lib/test/test_configparser.py:1976–2044  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1974 return instance
1975
1976 def test_converters(self):
1977 cfg = self.newconfig()
1978 self.assertIn('boolean', cfg.converters)
1979 self.assertIn('list', cfg.converters)
1980 self.assertIsNone(cfg.converters['int'])
1981 self.assertIsNone(cfg.converters['float'])
1982 self.assertIsNone(cfg.converters['boolean'])
1983 self.assertIsNotNone(cfg.converters['list'])
1984 self.assertEqual(len(cfg.converters), 4)
1985 with self.assertRaises(ValueError):
1986 cfg.converters[''] = lambda v: v
1987 with self.assertRaises(ValueError):
1988 cfg.converters[None] = lambda v: v
1989 cfg.read_string("""
1990 [s]
1991 str = string
1992 int = 1
1993 float = 0.5
1994 list = a b c d e f g
1995 bool = yes
1996 """)
1997 s = cfg['s']
1998 self.assertEqual(s['str'], 'string')
1999 self.assertEqual(s['int'], '1')
2000 self.assertEqual(s['float'], '0.5')
2001 self.assertEqual(s['list'], 'a b c d e f g')
2002 self.assertEqual(s['bool'], 'yes')
2003 self.assertEqual(cfg.get('s', 'str'), 'string')
2004 self.assertEqual(cfg.get('s', 'int'), '1')
2005 self.assertEqual(cfg.get('s', 'float'), '0.5')
2006 self.assertEqual(cfg.get('s', 'list'), 'a b c d e f g')
2007 self.assertEqual(cfg.get('s', 'bool'), 'yes')
2008 self.assertEqual(cfg.get('s', 'str'), 'string')
2009 self.assertEqual(cfg.getint('s', 'int'), 1)
2010 self.assertEqual(cfg.getfloat('s', 'float'), 0.5)
2011 self.assertEqual(cfg.getlist('s', 'list'), ['a', 'b', 'c', 'd',
2012 'e', 'f', 'g'])
2013 self.assertEqual(cfg.getboolean('s', 'bool'), True)
2014 self.assertEqual(s.get('str'), 'string')
2015 self.assertEqual(s.getint('int'), 1)
2016 self.assertEqual(s.getfloat('float'), 0.5)
2017 self.assertEqual(s.getlist('list'), ['a', 'b', 'c', 'd',
2018 'e', 'f', 'g'])
2019 self.assertEqual(s.getboolean('bool'), True)
2020 with self.assertRaises(AttributeError):
2021 cfg.getdecimal('s', 'float')
2022 with self.assertRaises(AttributeError):
2023 s.getdecimal('float')
2024 import decimal
2025 cfg.converters['decimal'] = decimal.Decimal
2026 self.assertIn('decimal', cfg.converters)
2027 self.assertIsNotNone(cfg.converters['decimal'])
2028 self.assertEqual(len(cfg.converters), 5)
2029 dec0_5 = decimal.Decimal('0.5')
2030 self.assertEqual(cfg.getdecimal('s', 'float'), dec0_5)
2031 self.assertEqual(s.getdecimal('float'), dec0_5)
2032 del cfg.converters['decimal']
2033 self.assertNotIn('decimal', cfg.converters)

Callers

nothing calls this directly

Calls 12

newconfigMethod · 0.95
assertInMethod · 0.80
assertIsNoneMethod · 0.80
assertIsNotNoneMethod · 0.80
read_stringMethod · 0.80
getfloatMethod · 0.80
assertNotInMethod · 0.80
assertEqualMethod · 0.45
assertRaisesMethod · 0.45
getMethod · 0.45
getintMethod · 0.45
getbooleanMethod · 0.45

Tested by

no test coverage detected