mirror of https://github.com/python/cpython.git
gh-95950: Add a test for both `csv.Dialect` and `kwargs` (GH-95951)
(cherry picked from commit 1c01bd28a0
)
Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
This commit is contained in:
parent
2a5e333736
commit
e066c6a56b
|
@ -448,6 +448,34 @@ def test_register_kwargs(self):
|
|||
self.assertEqual(csv.get_dialect(name).delimiter, ';')
|
||||
self.assertEqual([['X', 'Y', 'Z']], list(csv.reader(['X;Y;Z'], name)))
|
||||
|
||||
def test_register_kwargs_override(self):
|
||||
class mydialect(csv.Dialect):
|
||||
delimiter = "\t"
|
||||
quotechar = '"'
|
||||
doublequote = True
|
||||
skipinitialspace = False
|
||||
lineterminator = '\r\n'
|
||||
quoting = csv.QUOTE_MINIMAL
|
||||
|
||||
name = 'test_dialect'
|
||||
csv.register_dialect(name, mydialect,
|
||||
delimiter=';',
|
||||
quotechar="'",
|
||||
doublequote=False,
|
||||
skipinitialspace=True,
|
||||
lineterminator='\n',
|
||||
quoting=csv.QUOTE_ALL)
|
||||
self.addCleanup(csv.unregister_dialect, name)
|
||||
|
||||
# Ensure that kwargs do override attributes of a dialect class:
|
||||
dialect = csv.get_dialect(name)
|
||||
self.assertEqual(dialect.delimiter, ';')
|
||||
self.assertEqual(dialect.quotechar, "'")
|
||||
self.assertEqual(dialect.doublequote, False)
|
||||
self.assertEqual(dialect.skipinitialspace, True)
|
||||
self.assertEqual(dialect.lineterminator, '\n')
|
||||
self.assertEqual(dialect.quoting, csv.QUOTE_ALL)
|
||||
|
||||
def test_incomplete_dialect(self):
|
||||
class myexceltsv(csv.Dialect):
|
||||
delimiter = "\t"
|
||||
|
|
Loading…
Reference in New Issue