Skip to content

Commit 1d0c5e1

Browse files
eamanucjw296
authored andcommitted
bpo-24928: Add test case for patch.dict using OrderedDict (GH -11437)
* add test for path.dict using OrderedDict Co-authored-by: Yu Tomita [email protected]
1 parent 65ecc39 commit 1d0c5e1

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

Lib/unittest/test/testmock/testpatch.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
import os
66
import sys
7+
from collections import OrderedDict
78

89
import unittest
910
from unittest.test.testmock import support
@@ -1834,6 +1835,25 @@ def foo(*a, x=0):
18341835
self.assertEqual(foo(), 1)
18351836
self.assertEqual(foo(), 0)
18361837

1838+
def test_patch_orderdict(self):
1839+
foo = OrderedDict()
1840+
foo['a'] = object()
1841+
foo['b'] = 'python'
1842+
1843+
original = foo.copy()
1844+
update_values = list(zip('cdefghijklmnopqrstuvwxyz', range(26)))
1845+
patched_values = list(foo.items()) + update_values
1846+
1847+
with patch.dict(foo, OrderedDict(update_values)):
1848+
self.assertEqual(list(foo.items()), patched_values)
1849+
1850+
self.assertEqual(foo, original)
1851+
1852+
with patch.dict(foo, update_values):
1853+
self.assertEqual(list(foo.items()), patched_values)
1854+
1855+
self.assertEqual(foo, original)
1856+
18371857
def test_dotted_but_module_not_loaded(self):
18381858
# This exercises the AttributeError branch of _dot_lookup.
18391859

0 commit comments

Comments
 (0)