Esempio n. 1
0
    def test_dictlike(self):
        e = EntryBase(req_())
        e['foo'] = 'bar'
        e['body'] = 'entry body'

        eq_(sorted(e.keys()), ['body', 'foo'])

        eq_(e['foo'], 'bar')
        eq_(e.get('foo'), 'bar')
        eq_(e.get('foo', 'fickle'), 'bar')

        eq_(e['body'], 'entry body', 'e[\'body\']')
        eq_(e.get('body'), 'entry body', 'e.get(\'body\')')

        eq_(e.get('missing_key', 'default'), 'default')
        eq_(e.get('missing_key'), None)

        eq_('foo' in e, True)
        eq_('foo2' in e, False)
        eq_('foo2' not in e, True)
        eq_('body' in e, True)

        e.update({'foo': 'bah', 'faux': 'pearls'})
        eq_(e['foo'], 'bah')
        eq_(e['faux'], 'pearls')

        e.update({'body': 'new body data'})
        eq_(e['body'], 'new body data')

        del e['foo']
        eq_(e.get('foo'), None)
Esempio n. 2
0
    def test_dictlike(self):
        e = EntryBase(req_())
        e["foo"] = "bar"
        e["body"] = "entry body"

        def sortlist(l):
            l.sort()
            return l

        eq_(sortlist(e.keys()), ["body", "foo"])

        eq_(e["foo"], "bar")
        eq_(e.get("foo"), "bar")
        eq_(e.get("foo", "fickle"), "bar")
        eq_(e.get_metadata("foo"), "bar")
        eq_(e.get_metadata("foo", "fickle"), "bar")

        eq_(e["body"], "entry body", "e[\"body\"]")
        eq_(e.get("body"), "entry body", "e.get(\"body\")")
        eq_(e.get_data(), "entry body", "e.getData()")

        eq_(e.get("missing_key", "default"), "default")
        eq_(e.get("missing_key"), None)

        # e.set("faz", "baz")
        # yield eq_, e.get("faz"), "baz"

        eq_(e.has_key("foo"), True)
        eq_(e.has_key("foo2"), False)
        eq_(e.has_key("body"), True)

        # FIXME - EntryBase doesn't support "in" operator.
        # eq_("foo" in e, True)
        # eq_("foo2" in e, False)
        # eq_("foo2" not in e, True)
        # eq_("body" in e, True)

        e.update({"foo": "bah", "faux": "pearls"})
        eq_(e["foo"], "bah")
        eq_(e["faux"], "pearls")

        e.update({"body": "new body data"})
        eq_(e["body"], "new body data")
        eq_(e.get_data(), "new body data")