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

Method test_write

Lib/test/mapping_tests.py:154–194  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

152 return x
153
154 def test_write(self):
155 # Test for write operations on mapping
156 p = self._empty_mapping()
157 #Indexing
158 for key, value in self.reference.items():
159 p[key] = value
160 self.assertEqual(p[key], value)
161 for key in self.reference.keys():
162 del p[key]
163 self.assertRaises(KeyError, lambda:p[key])
164 p = self._empty_mapping()
165 #update
166 p.update(self.reference)
167 self.assertEqual(dict(p), self.reference)
168 items = list(p.items())
169 p = self._empty_mapping()
170 p.update(items)
171 self.assertEqual(dict(p), self.reference)
172 d = self._full_mapping(self.reference)
173 #setdefault
174 key, value = next(iter(d.items()))
175 knownkey, knownvalue = next(iter(self.other.items()))
176 self.assertEqual(d.setdefault(key, knownvalue), value)
177 self.assertEqual(d[key], value)
178 self.assertEqual(d.setdefault(knownkey, knownvalue), knownvalue)
179 self.assertEqual(d[knownkey], knownvalue)
180 #pop
181 self.assertEqual(d.pop(knownkey), knownvalue)
182 self.assertNotIn(knownkey, d)
183 self.assertRaises(KeyError, d.pop, knownkey)
184 default = 909
185 d[knownkey] = knownvalue
186 self.assertEqual(d.pop(knownkey, default), knownvalue)
187 self.assertNotIn(knownkey, d)
188 self.assertEqual(d.pop(knownkey, default), default)
189 #popitem
190 key, value = d.popitem()
191 self.assertNotIn(key, d)
192 self.assertEqual(value, self.reference[key])
193 p=self._empty_mapping()
194 self.assertRaises(KeyError, p.popitem)
195
196 def test_update(self):
197 # mapping argument

Callers

nothing calls this directly

Calls 12

_full_mappingMethod · 0.95
listClass · 0.85
assertNotInMethod · 0.80
_empty_mappingMethod · 0.45
itemsMethod · 0.45
assertEqualMethod · 0.45
keysMethod · 0.45
assertRaisesMethod · 0.45
updateMethod · 0.45
setdefaultMethod · 0.45
popMethod · 0.45
popitemMethod · 0.45

Tested by

no test coverage detected