def test_query_all(): person1 = type_and_instance('Person', name="Name 1", memory=True) person2 = type_and_instance('Person', name="Name 2", memory=True) data = [person1, person2] queryset = MemoryQuerySet(person1.__class__, data=data) assert len(queryset.all()) == 2
def test_query_delete(): from datetime import date person1 = type_and_instance_attr_eq('Person', name="Name 1", nickname="Nickname 1", birthday=date(2011, 6, 20), age=30, memory=True) person2 = type_and_instance_attr_eq('Person', name="Name 2", nickname="Nickname 2", birthday=date(2011, 6, 22), age=57, memory=True) person3 = type_and_instance_attr_eq('Person', name="Name 3", nickname="Nickname 3", birthday=date(2011, 4, 20), age=30, memory=True) person4 = type_and_instance_attr_eq('Person', name="Name 4", nickname="Nickname 4", birthday=date(2010, 6, 20), age=30, memory=True) data = [person1, person2, person3, person4] queryset = MemoryQuerySet(person1.__class__, data=data) repository = Repository() repository.__dict__['data']['Person'] = data queryset.filter(age__gte=10,birthday__lte=date(2011, 05, 05)).delete() assert len(queryset.all()) == 2 assert queryset.all().count() == 2 queryset = MemoryQuerySet(person1.__class__, data=data) assert len(queryset.all()) == 2 assert queryset.all().count() == 2
def test_query_delete(): from datetime import date person1 = type_and_instance_attr_eq('Person', name="Name 1", nickname="Nickname 1", birthday=date(2011, 6, 20), age=30, memory=True) person2 = type_and_instance_attr_eq('Person', name="Name 2", nickname="Nickname 2", birthday=date(2011, 6, 22), age=57, memory=True) person3 = type_and_instance_attr_eq('Person', name="Name 3", nickname="Nickname 3", birthday=date(2011, 4, 20), age=30, memory=True) person4 = type_and_instance_attr_eq('Person', name="Name 4", nickname="Nickname 4", birthday=date(2010, 6, 20), age=30, memory=True) data = [person1, person2, person3, person4] queryset = MemoryQuerySet(person1.__class__, data=data) repository = Repository() repository.__dict__['data']['Person'] = data queryset.filter(age__gte=10, birthday__lte=date(2011, 05, 05)).delete() assert len(queryset.all()) == 2 assert queryset.all().count() == 2 queryset = MemoryQuerySet(person1.__class__, data=data) assert len(queryset.all()) == 2 assert queryset.all().count() == 2
def test_queryset_create(): class Dummy(object): def __init__(self, **kwargs): self.__dict__ = kwargs queryset = MemoryQuerySet(Dummy, data=[]) assert len(queryset.all()) == 0 model = queryset.create(id=1, name="Name 1", age=20) assert isinstance(model, Dummy) assert len(queryset.all()) == 1 assert queryset.get(age=20).name == "Name 1" model = queryset.create(id=2, name="Name 2", age=25) assert isinstance(model, Dummy) assert len(queryset.all()) == 2 assert queryset.get(age=20).name == "Name 1" assert queryset.get(age=25).name == "Name 2" queryset2 = MemoryQuerySet(Dummy, data=[]) MemoryQuerySet.fetch_from_repo = True assert len(queryset2.all()) == 2 assert queryset2.get(age=20).name == "Name 1" assert queryset2.get(age=25).name == "Name 2"