⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 base.py

📁 Python的一个ORM,现在很火
💻 PY
📖 第 1 页 / 共 5 页
字号:
                link and (link.bar_id, link.foo_id))               for (bar, link) in result]        self.assertEquals(lst, [                          ((100, u"Title 300"), (100, 10)),                          ((100, u"Title 300"), (100, 20)),                          (None, None),                          ((300, u"Title 100"), (300, 10)),                          ((300, u"Title 100"), (300, 30)),                         ])    def test_find_tuple_any(self):        bar = self.store.get(Bar, 200)        bar.foo_id = None        result = self.store.find((Foo, Bar), Bar.foo_id == Foo.id)        foo, bar = result.order_by(Foo.id).any()        self.assertEquals(foo.id, 10)        self.assertEquals(foo.title, u"Title 30")        self.assertEquals(bar.id, 100)        self.assertEquals(bar.title, u"Title 300")    def test_find_tuple_first(self):        bar = self.store.get(Bar, 200)        bar.foo_id = None        result = self.store.find((Foo, Bar), Bar.foo_id == Foo.id)        foo, bar = result.order_by(Foo.id).first()        self.assertEquals(foo.id, 10)        self.assertEquals(foo.title, u"Title 30")        self.assertEquals(bar.id, 100)        self.assertEquals(bar.title, u"Title 300")    def test_find_tuple_last(self):        bar = self.store.get(Bar, 200)        bar.foo_id = None        result = self.store.find((Foo, Bar), Bar.foo_id == Foo.id)        foo, bar = result.order_by(Foo.id).last()        self.assertEquals(foo.id, 30)        self.assertEquals(foo.title, u"Title 10")        self.assertEquals(bar.id, 300)        self.assertEquals(bar.title, u"Title 100")    def test_find_tuple_first(self):        bar = self.store.get(Bar, 200)        bar.foo_id = None        result = self.store.find((Foo, Bar),                                 Bar.foo_id == Foo.id, Foo.id == 10)        foo, bar = result.order_by(Foo.id).one()        self.assertEquals(foo.id, 10)        self.assertEquals(foo.title, u"Title 30")        self.assertEquals(bar.id, 100)        self.assertEquals(bar.title, u"Title 300")    def test_find_tuple_count(self):        bar = self.store.get(Bar, 200)        bar.foo_id = None        result = self.store.find((Foo, Bar), Bar.foo_id == Foo.id)        self.assertEquals(result.count(), 2)    def test_find_tuple_remove(self):        result = self.store.find((Foo, Bar))        self.assertRaises(FeatureError, result.remove)    def test_find_tuple_set(self):        result = self.store.find((Foo, Bar))        self.assertRaises(FeatureError, result.set, title=u"Title 40")    def test_find_tuple_kwargs(self):        self.assertRaises(FeatureError,                          self.store.find, (Foo, Bar), title=u"Title 10")    def test_find_tuple_cached(self):        result = self.store.find((Foo, Bar))        self.assertRaises(FeatureError, result.cached)    def test_find_using_cached(self):        result = self.store.using(Foo, Bar).find(Foo)        self.assertRaises(FeatureError, result.cached)    def test_add_commit(self):        foo = Foo()        foo.id = 40        foo.title = u"Title 40"        self.store.add(foo)        self.assertEquals(self.get_committed_items(), [                          (10, "Title 30"),                          (20, "Title 20"),                          (30, "Title 10"),                         ])        self.store.commit()        self.assertEquals(self.get_committed_items(), [                          (10, "Title 30"),                          (20, "Title 20"),                          (30, "Title 10"),                          (40, "Title 40"),                         ])    def test_add_rollback_commit(self):        foo = Foo()        foo.id = 40        foo.title = u"Title 40"        self.store.add(foo)        self.store.rollback()        self.assertEquals(self.store.get(Foo, 3), None)        self.assertEquals(self.get_committed_items(), [                          (10, "Title 30"),                          (20, "Title 20"),                          (30, "Title 10"),                         ])        self.store.commit()        self.assertEquals(self.get_committed_items(), [                          (10, "Title 30"),                          (20, "Title 20"),                          (30, "Title 10"),                         ])    def test_add_get(self):        foo = Foo()        foo.id = 40        foo.title = u"Title 40"        self.store.add(foo)        old_foo = foo        foo = self.store.get(Foo, 40)        self.assertEquals(foo.id, 40)        self.assertEquals(foo.title, "Title 40")        self.assertTrue(foo is old_foo)    def test_add_find(self):        foo = Foo()        foo.id = 40        foo.title = u"Title 40"        self.store.add(foo)        old_foo = foo        foo = self.store.find(Foo, Foo.id == 40).one()        self.assertEquals(foo.id, 40)        self.assertEquals(foo.title, "Title 40")        self.assertTrue(foo is old_foo)    def test_add_twice(self):        foo = Foo()        self.store.add(foo)        self.store.add(foo)        self.assertEquals(Store.of(foo), self.store)    def test_add_loaded(self):        foo = self.store.get(Foo, 10)        self.store.add(foo)        self.assertEquals(Store.of(foo), self.store)    def test_add_twice_to_wrong_store(self):        foo = Foo()        self.store.add(foo)        self.assertRaises(WrongStoreError, Store(self.database).add, foo)    def test_add_checkpoints(self):        bar = Bar()        self.store.add(bar)        bar.id = 400        bar.title = u"Title 400"        bar.foo_id = 40        self.store.flush()        self.store.execute("UPDATE bar SET title='Title 500' "                           "WHERE id=400")        bar.foo_id = 400        # When not checkpointing, this flush will set title again.        self.store.flush()        self.store.reload(bar)        self.assertEquals(bar.title, "Title 500")    def test_remove_commit(self):        foo = self.store.get(Foo, 20)        self.store.remove(foo)        self.assertEquals(Store.of(foo), self.store)        self.store.flush()        self.assertEquals(Store.of(foo), None)        self.assertEquals(self.get_items(), [                          (10, "Title 30"),                          (30, "Title 10"),                         ])        self.assertEquals(self.get_committed_items(), [                          (10, "Title 30"),                          (20, "Title 20"),                          (30, "Title 10"),                         ])        self.store.commit()        self.assertEquals(Store.of(foo), None)        self.assertEquals(self.get_committed_items(), [                          (10, "Title 30"),                          (30, "Title 10"),                         ])    def test_remove_rollback_update(self):        foo = self.store.get(Foo, 20)        self.store.remove(foo)        self.store.rollback()                foo.title = u"Title 200"        self.store.flush()        self.assertEquals(self.get_items(), [                          (10, "Title 30"),                          (20, "Title 200"),                          (30, "Title 10"),                         ])    def test_remove_flush_rollback_update(self):        foo = self.store.get(Foo, 20)        self.store.remove(foo)        self.store.flush()        self.store.rollback()        foo.title = u"Title 200"        self.store.flush()        self.assertEquals(self.get_items(), [                          (10, "Title 30"),                          (20, "Title 20"),                          (30, "Title 10"),                         ])    def test_remove_add_update(self):        foo = self.store.get(Foo, 20)        self.store.remove(foo)        self.store.add(foo)                foo.title = u"Title 200"        self.store.flush()        self.assertEquals(self.get_items(), [                          (10, "Title 30"),                          (20, "Title 200"),                          (30, "Title 10"),                         ])    def test_remove_flush_add_update(self):        foo = self.store.get(Foo, 20)        self.store.remove(foo)        self.store.flush()        self.store.add(foo)                foo.title = u"Title 200"        self.store.flush()        self.assertEquals(self.get_items(), [                          (10, "Title 30"),                          (20, "Title 200"),                          (30, "Title 10"),                         ])    def test_remove_twice(self):        foo = self.store.get(Foo, 10)        self.store.remove(foo)        self.store.remove(foo)    def test_remove_unknown(self):        foo = Foo()        self.assertRaises(WrongStoreError, self.store.remove, foo)    def test_remove_from_wrong_store(self):        foo = self.store.get(Foo, 20)        self.assertRaises(WrongStoreError, Store(self.database).remove, foo)    def test_wb_remove_flush_update_isnt_dirty(self):        foo = self.store.get(Foo, 20)        obj_info = get_obj_info(foo)        self.store.remove(foo)        self.store.flush()                foo.title = u"Title 200"        self.assertTrue(obj_info not in self.store._dirty)    def test_wb_remove_rollback_isnt_dirty(self):        foo = self.store.get(Foo, 20)        obj_info = get_obj_info(foo)        self.store.remove(foo)        self.store.rollback()        self.assertTrue(obj_info not in self.store._dirty)    def test_wb_remove_flush_rollback_isnt_dirty(self):        foo = self.store.get(Foo, 20)        obj_info = get_obj_info(foo)        self.store.remove(foo)        self.store.flush()        self.store.rollback()        self.assertTrue(obj_info not in self.store._dirty)    def test_add_rollback_not_in_store(self):        foo = Foo()        foo.id = 40        foo.title = u"Title 40"        self.store.add(foo)        self.store.rollback()        self.assertEquals(Store.of(foo), None)    def test_update_flush_commit(self):        foo = self.store.get(Foo, 20)        foo.title = u"Title 200"        self.assertEquals(self.get_items(), [                          (10, "Title 30"),                          (20, "Title 20"),                          (30, "Title 10"),                         ])        self.assertEquals(self.get_committed_items(), [                          (10, "Title 30"),                          (20, "Title 20"),                          (30, "Title 10"),                         ])        self.store.flush()        self.assertEquals(self.get_items(), [                          (10, "Title 30"),                          (20, "Title 200"),                          (30, "Title 10"),                         ])        self.assertEquals(self.get_committed_items(), [                          (10, "Title 30"),                          (20, "Title 20"),                          (30, "Title 10"),                         ])        self.store.commit()        self.assertEquals(self.get_committed_items(), [                          (10, "Title 30"),                          (20, "Title 200"),                          (30, "Title 10"),                         ])    def test_update_flush_reload_rollback(self):        foo = self.store.get(Foo, 20)        foo.title = u"Title 200"        self.store.flush()        self.store.reload(foo)        self.store.rollback()        self.assertEquals(foo.title, "Title 20")    def test_update_commit(self):        foo = self.store.get(Foo, 20)        foo.title = u"Title 200"        self.store.commit()        self.assertEquals(self.get_committed_items(), [                          (10, "Title 30"),                          (20, "Title 200"),                          (30, "Title 10"),                         ])    def test_update_commit_twice(self):        foo = self.store.get(Foo, 20)        foo.title = u"Title 200"        self.store.commit()        foo.title = u"Title 2000"        self.store.commit()        self.assertEquals(self.get_committed_items(), [                          (10, "Title 30"),                          (20, "Title 2000"),                          (30, "Title 10"),                         ])

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -