def test_get_all_cases_modified_since(self): case1 = _create_case(user_id="user1") case2 = _create_case(user_id="user1") middle = datetime.utcnow() time.sleep(.01) case3 = _create_case(user_id="user2") case4 = _create_case(user_id="user3") time.sleep(.01) end = datetime.utcnow() cases_back = list(CaseAccessorSQL.get_all_cases_modified_since()) self.assertEqual(4, len(cases_back)) self.assertEqual(set(case.case_id for case in cases_back), set([case1.case_id, case2.case_id, case3.case_id, case4.case_id])) cases_back = list(CaseAccessorSQL.get_all_cases_modified_since(middle)) self.assertEqual(2, len(cases_back)) self.assertEqual(set(case.case_id for case in cases_back), set([case3.case_id, case4.case_id])) self.assertEqual(0, len(list(CaseAccessorSQL.get_all_cases_modified_since(end)))) self.assertEqual(1, len(CaseAccessorSQL.get_cases_modified_since(limit=1)))
def iter_all_changes(self, start_from=None): for case in CaseAccessorSQL.get_all_cases_modified_since(start_from, chunk_size=self.chunk_size): yield _sql_case_to_change(case)