示例#1
0
文件: test_dao.py 项目: lhaze/dharma
 def test_update_filtered_by_id(self, dao: InMemoryDao):
     ids = dao.filter(pred_not_a).filter_by(id_=2).update(char='z')
     assert ids == [2]
     assert list(dao.all()) == [
         {'char': 'a', 'is_a': True},
         {'char': 'z', 'is_a': False},
         {'char': 'c', 'is_a': False},
     ]
示例#2
0
文件: test_dao.py 项目: lhaze/dharma
 def test_update_all(self, dao: InMemoryDao):
     ids = dao.all().update(char='z')
     assert ids == [1, 2, 3]
     assert list(dao.all()) == [
         {'char': 'z', 'is_a': True},
         {'char': 'z', 'is_a': False},
         {'char': 'z', 'is_a': False},
     ]
示例#3
0
文件: test_dao.py 项目: lhaze/dharma
 def test_update_none(self, dao: InMemoryDao):
     ids = dao.filter(pred_z).update(char='z')
     assert ids == []
     assert list(dao.all()) == [
         {'char': 'a', 'is_a': True},
         {'char': 'b', 'is_a': False},
         {'char': 'c', 'is_a': False},
     ]
示例#4
0
 def test_update_none(self, dao: InMemoryDao):
     ids = dao.filter(pred_z).update(char="z")
     assert ids == []
     assert list(dao.all()) == [
         {
             "char": "a",
             "is_a": True
         },
         {
             "char": "b",
             "is_a": False
         },
         {
             "char": "c",
             "is_a": False
         },
     ]
示例#5
0
 def test_update_none(self, dao: InMemoryDao):
     ids = dao.filter(pred_z).update(char='z')
     assert ids == []
     assert list(dao.all()) == [
         {
             'char': 'a',
             'is_a': True
         },
         {
             'char': 'b',
             'is_a': False
         },
         {
             'char': 'c',
             'is_a': False
         },
     ]
示例#6
0
 def test_update_all(self, dao: InMemoryDao):
     ids = dao.all().update(char="z")
     assert ids == [1, 2, 3]
     assert list(dao.all()) == [
         {
             "char": "z",
             "is_a": True
         },
         {
             "char": "z",
             "is_a": False
         },
         {
             "char": "z",
             "is_a": False
         },
     ]
示例#7
0
 def test_update_filtered_by_id(self, dao: InMemoryDao):
     ids = dao.filter(pred_not_a).filter_by(id_=2).update(char="z")
     assert ids == [2]
     assert list(dao.all()) == [
         {
             "char": "a",
             "is_a": True
         },
         {
             "char": "z",
             "is_a": False
         },
         {
             "char": "c",
             "is_a": False
         },
     ]
示例#8
0
 def test_update_filtered_by_id(self, dao: InMemoryDao):
     ids = dao.filter(pred_not_a).filter_by(id_=2).update(char='z')
     assert ids == [2]
     assert list(dao.all()) == [
         {
             'char': 'a',
             'is_a': True
         },
         {
             'char': 'z',
             'is_a': False
         },
         {
             'char': 'c',
             'is_a': False
         },
     ]
示例#9
0
 def test_update_all(self, dao: InMemoryDao):
     ids = dao.all().update(char='z')
     assert ids == [1, 2, 3]
     assert list(dao.all()) == [
         {
             'char': 'z',
             'is_a': True
         },
         {
             'char': 'z',
             'is_a': False
         },
         {
             'char': 'z',
             'is_a': False
         },
     ]
示例#10
0
 def dao(self, mock_container, content):
     """
     In-memory table that has three documents pre-assigned:
         {'char': 'a', 'is_a': True},
         {'char': 'b', 'is_a': False},
         {'char': 'c', 'is_a': False}
     """
     dao = InMemoryDao(mock_container, initial_content=content)
     return dao
示例#11
0
 def test_multiple_filter_success(self, dao: InMemoryDao):
     assert list(dao.filter(pred_not_a).filter(pred_c)) == [{
         'char': 'c',
         'is_a': False
     }]
示例#12
0
文件: test_dao.py 项目: lhaze/dharma
 def test_remove_filtered(self, dao: InMemoryDao):
     ids = dao.filter(pred_a).remove()
     assert ids == [1]
     assert get_ids(dao.all()) == [2, 3]
示例#13
0
 def test_exists_filtered_success(self, dao: InMemoryDao):
     assert dao.filter(pred_c).exists()
示例#14
0
 def test_filtered_get_success(self, dao: InMemoryDao):
     object_2 = dao.get(2)
     assert dao.filter(pred_not_a).get(2) == object_2
示例#15
0
文件: test_dao.py 项目: lhaze/dharma
 def test_all(self, dao: InMemoryDao):
     assert get_ids(dao.all()) == [1, 2, 3]
示例#16
0
文件: test_dao.py 项目: lhaze/dharma
 def test_initial_content(self, mock_container, content):
     dao = InMemoryDao(mock_container, initial_content=content)
     assert list(dao.all()) == content
示例#17
0
文件: test_dao.py 项目: lhaze/dharma
 def test_clear(self, dao: InMemoryDao):
     dao.clear()
     assert list(dao.all()) == []
示例#18
0
文件: test_dao.py 项目: lhaze/dharma
 def test_batch_insert(self, dao: InMemoryDao):
     batch = [{'foo': 'bar'}, {'foo': 'baz'}]
     result = dao.batch_insert(batch)
     assert result == (4, 5)
     assert list(dao.filter(where('foo').exists())) == batch
示例#19
0
文件: test_dao.py 项目: lhaze/dharma
 def test_insert(self, dao: InMemoryDao):
     id_ = dao.insert(foo='bar')
     assert id_ == 4
示例#20
0
文件: test_dao.py 项目: lhaze/dharma
 def test_remove_none(self, dao: InMemoryDao):
     ids = dao.filter(pred_z).remove()
     assert ids == []
     assert get_ids(dao.all()) == [1, 2, 3]
示例#21
0
文件: test_dao.py 项目: lhaze/dharma
 def test_remove_filtered_by_id(self, dao: InMemoryDao):
     ids = dao.filter(pred_not_a).filter_by(id_=2).remove()
     assert ids == [2]
     assert get_ids(dao.all()) == [1, 3]
示例#22
0
 def test_filter_by_both_arguments_error(self, dao: InMemoryDao):
     with pytest.raises(QueryError):
         assert dao.all().filter_by(id_=3, ids=[3, 5])
示例#23
0
 def test_get_success(self, dao: InMemoryDao):
     assert dao.get(1) == {'char': 'a', 'is_a': True}
示例#24
0
文件: test_dao.py 项目: lhaze/dharma
 def test_multiple_filter_success(self, dao: InMemoryDao):
     assert list(dao.filter(pred_not_a).filter(pred_c)) == [{'char': 'c', 'is_a': False}]
示例#25
0
 def test_exists_all_success(self, dao: InMemoryDao):
     assert dao.all().exists()
示例#26
0
 def test_remove_all_error(self, dao: InMemoryDao):
     with pytest.raises(QueryError) as error_info:
         dao.all().remove()
     assert error_info.value == QueryErrors.UNRESTRICTED_REMOVE
示例#27
0
 def test_count_all(self, dao: InMemoryDao):
     assert dao.all().count() == 3
示例#28
0
 def test_remove_filtered_by_id(self, dao: InMemoryDao):
     ids = dao.filter(pred_not_a).filter_by(id_=2).remove()
     assert ids == [2]
     assert get_ids(dao.all()) == [1, 3]
示例#29
0
 def test_insert(self, dao: InMemoryDao):
     id_ = dao.insert(foo='bar')
     assert id_ == 4
示例#30
0
 def test_clear(self, dao: InMemoryDao):
     dao.clear()
     assert list(dao.all()) == []
示例#31
0
文件: test_dao.py 项目: lhaze/dharma
 def test_filter_by_success(self, dao: InMemoryDao):
     assert list(dao.filter(pred_not_a).filter_by(id_=3)) == [{'char': 'c', 'is_a': False}]
示例#32
0
文件: test_dao.py 项目: lhaze/dharma
 def test_remove_all_error(self, dao: InMemoryDao):
     with pytest.raises(QueryError) as error_info:
         dao.all().remove()
     assert error_info.value == QueryErrors.UNRESTRICTED_REMOVE
示例#33
0
 def test_remove_filtered(self, dao: InMemoryDao):
     ids = dao.filter(pred_a).remove()
     assert ids == [1]
     assert get_ids(dao.all()) == [2, 3]
示例#34
0
文件: test_dao.py 项目: lhaze/dharma
 def test_filter_by_both_arguments_error(self, dao: InMemoryDao):
     with pytest.raises(QueryError):
         assert dao.all().filter_by(id_=3, ids=[3, 5])
示例#35
0
 def test_remove_none(self, dao: InMemoryDao):
     ids = dao.filter(pred_z).remove()
     assert ids == []
     assert get_ids(dao.all()) == [1, 2, 3]
示例#36
0
文件: test_dao.py 项目: lhaze/dharma
 def test_filter_by_two_times_error(self, dao: InMemoryDao):
     with pytest.raises(QueryError):
         assert dao.all().filter_by(id_=3).filter_by(id_=5)
示例#37
0
 def test_batch_insert(self, dao: InMemoryDao):
     batch = [{'foo': 'bar'}, {'foo': 'baz'}]
     result = dao.batch_insert(batch)
     assert result == (4, 5)
     assert list(dao.filter(where('foo').exists())) == batch
示例#38
0
文件: test_dao.py 项目: lhaze/dharma
 def test_get_success(self, dao: InMemoryDao):
     assert dao.get(1) == {'char': 'a', 'is_a': True}
示例#39
0
 def test_initial_content(self, mock_container, content):
     dao = InMemoryDao(mock_container, initial_content=content)
     assert list(dao.all()) == content
示例#40
0
文件: test_dao.py 项目: lhaze/dharma
 def test_get_fail(self, dao: InMemoryDao):
     assert dao.get(42) is None
示例#41
0
 def test_all(self, dao: InMemoryDao):
     assert get_ids(dao.all()) == [1, 2, 3]
示例#42
0
文件: test_dao.py 项目: lhaze/dharma
 def test_filtered_get_success(self, dao: InMemoryDao):
     object_2 = dao.get(2)
     assert dao.filter(pred_not_a).get(2) == object_2
示例#43
0
 def test_filter_by_success(self, dao: InMemoryDao):
     assert list(dao.filter(pred_not_a).filter_by(id_=3)) == [{
         'char': 'c',
         'is_a': False
     }]
示例#44
0
文件: test_dao.py 项目: lhaze/dharma
 def test_filtered_get_fail(self, dao: InMemoryDao):
     assert dao.filter(pred_not_a).get(1) is None
示例#45
0
 def test_filter_by_two_times_error(self, dao: InMemoryDao):
     with pytest.raises(QueryError):
         assert dao.all().filter_by(id_=3).filter_by(id_=5)
示例#46
0
文件: test_dao.py 项目: lhaze/dharma
 def test_exists_all_success(self, dao: InMemoryDao):
     assert dao.all().exists()
示例#47
0
 def test_get_fail(self, dao: InMemoryDao):
     assert dao.get(42) is None
示例#48
0
文件: test_dao.py 项目: lhaze/dharma
 def test_exists_empty_fail(self, dao: InMemoryDao):
     dao.clear()
     assert not dao.all().exists()
示例#49
0
 def test_filtered_get_fail(self, dao: InMemoryDao):
     assert dao.filter(pred_not_a).get(1) is None
示例#50
0
文件: test_dao.py 项目: lhaze/dharma
 def test_exists_filtered_success(self, dao: InMemoryDao):
     assert dao.filter(pred_c).exists()
示例#51
0
 def test_exists_empty_fail(self, dao: InMemoryDao):
     dao.clear()
     assert not dao.all().exists()
示例#52
0
文件: test_dao.py 项目: lhaze/dharma
 def test_exists_filtered_fail(self, dao: InMemoryDao):
     assert not dao.filter(pred_z).exists()
示例#53
0
 def test_exists_filtered_fail(self, dao: InMemoryDao):
     assert not dao.filter(pred_z).exists()
示例#54
0
文件: test_dao.py 项目: lhaze/dharma
 def test_count_all(self, dao: InMemoryDao):
     assert dao.all().count() == 3
示例#55
0
 def test_filtered_count(self, dao: InMemoryDao):
     assert dao.filter(pred_not_a).count() == 2
示例#56
0
文件: test_dao.py 项目: lhaze/dharma
 def test_filtered_count(self, dao: InMemoryDao):
     assert dao.filter(pred_not_a).count() == 2