Esempio n. 1
0
    def test_weak_keyed_dict_setdefault(self):
        key, value1, value2 = C(), "value 1", "value 2"
        self.assertTrue(value1 is not value2,
                        "invalid test"
                        " -- value parameters must be distinct objects")
        weakdict = WeakKeyIdentityDict()
        o = weakdict.setdefault(key, value1)
        assert o is value1
        assert key in weakdict
        assert weakdict.get(key) is value1
        assert weakdict[key] is value1

        o = weakdict.setdefault(key, value2)
        assert o is value1
        assert key in weakdict
        assert weakdict.get(key) is value1
        assert weakdict[key] is value1
Esempio n. 2
0
    def test_weak_keyed_dict_setdefault(self):
        key, value1, value2 = C(), "value 1", "value 2"
        self.assertTrue(
            value1 is not value2, "invalid test"
            " -- value parameters must be distinct objects")
        weakdict = WeakKeyIdentityDict()
        o = weakdict.setdefault(key, value1)
        assert o is value1
        assert key in weakdict
        assert weakdict.get(key) is value1
        assert weakdict[key] is value1

        o = weakdict.setdefault(key, value2)
        assert o is value1
        assert key in weakdict
        assert weakdict.get(key) is value1
        assert weakdict[key] is value1
Esempio n. 3
0
 def test_update(self):
     #
     #  This exercises d.update(), len(d), d.keys(), in d,
     #  d.get(), d[].
     #
     dict_ = {C(): 1, C(): 2, C(): 3}
     weakdict = WeakKeyIdentityDict()
     weakdict.update(dict_)
     self.assertEqual(len(weakdict), len(dict_))
     for k in weakdict.keys():
         assert k in dict_
         v = dict_.get(k)
         assert v is weakdict[k]
         assert v is weakdict.get(k)
     for k in dict_.keys():
         assert k in weakdict
         v = dict_[k]
         assert v is weakdict[k]
         assert v is weakdict.get(k)
Esempio n. 4
0
 def test_update(self):
     #
     #  This exercises d.update(), len(d), d.keys(), in d,
     #  d.get(), d[].
     #
     dict_ = {C(): 1, C(): 2, C(): 3}
     weakdict = WeakKeyIdentityDict()
     weakdict.update(dict_)
     self.assertEqual(len(weakdict), len(dict_))
     for k in weakdict.keys():
         assert k in dict_
         v = dict_.get(k)
         assert v is weakdict[k]
         assert v is weakdict.get(k)
     for k in dict_.keys():
         assert k in weakdict
         v = dict_[k]
         assert v is weakdict[k]
         assert v is weakdict.get(k)