bpo-24928: Add test case for patch.dict using OrderedDict (GH -11437)
* add test for path.dict using OrderedDict Co-authored-by: Yu Tomita nekobon@users.noreply.github.com
This commit is contained in:
parent
65ecc390c1
commit
1d0c5e16ea
|
@ -4,6 +4,7 @@
|
||||||
|
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
from collections import OrderedDict
|
||||||
|
|
||||||
import unittest
|
import unittest
|
||||||
from unittest.test.testmock import support
|
from unittest.test.testmock import support
|
||||||
|
@ -1834,6 +1835,25 @@ class PatchTest(unittest.TestCase):
|
||||||
self.assertEqual(foo(), 1)
|
self.assertEqual(foo(), 1)
|
||||||
self.assertEqual(foo(), 0)
|
self.assertEqual(foo(), 0)
|
||||||
|
|
||||||
|
def test_patch_orderdict(self):
|
||||||
|
foo = OrderedDict()
|
||||||
|
foo['a'] = object()
|
||||||
|
foo['b'] = 'python'
|
||||||
|
|
||||||
|
original = foo.copy()
|
||||||
|
update_values = list(zip('cdefghijklmnopqrstuvwxyz', range(26)))
|
||||||
|
patched_values = list(foo.items()) + update_values
|
||||||
|
|
||||||
|
with patch.dict(foo, OrderedDict(update_values)):
|
||||||
|
self.assertEqual(list(foo.items()), patched_values)
|
||||||
|
|
||||||
|
self.assertEqual(foo, original)
|
||||||
|
|
||||||
|
with patch.dict(foo, update_values):
|
||||||
|
self.assertEqual(list(foo.items()), patched_values)
|
||||||
|
|
||||||
|
self.assertEqual(foo, original)
|
||||||
|
|
||||||
def test_dotted_but_module_not_loaded(self):
|
def test_dotted_but_module_not_loaded(self):
|
||||||
# This exercises the AttributeError branch of _dot_lookup.
|
# This exercises the AttributeError branch of _dot_lookup.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue