예제 #1
0
    def test_get_bookmark_parent_does_not_exist_child(self):
        instance = Metafields(parent_type="orders")

        Context.state = {"bookmarks": {}}

        actual = instance.get_bookmark()
        self.assertEqual(utils.strptime_with_tz(self.config["start_date"]),
                         actual)
예제 #2
0
    def test_get_bookmark_does_not_exist_root(self):
        instance = Metafields()

        Context.state = {}

        actual = instance.get_bookmark()
        self.assertEqual(utils.strptime_with_tz(self.config["start_date"]),
                         actual)
예제 #3
0
    def test_query_start_returns_bm_with_no_sub_streams(self):
        # A class with no substreams will just return the bm
        instance = Metafields()

        current_bookmark = self.str_current_bookmark
        Context.state = {"bookmarks": {"metafields": {"updated_at": current_bookmark}}}

        actual = instance.query_start()
        self.assertEqual(utils.strptime_with_tz(current_bookmark), actual)
예제 #4
0
    def test_get_bookmark_exists_root(self):
        instance = Metafields()

        current_bookmark = self.str_current_bookmark
        Context.state = {
            "bookmarks": {
                "metafields": {
                    "updated_at": current_bookmark
                }
            }
        }

        actual = instance.get_bookmark()
        self.assertEqual(utils.strptime_with_tz(current_bookmark), actual)
예제 #5
0
    def test_write_bookmark_new_value_root(self):
        instance = Metafields()

        new_bookmark = self.config["start_date"]
        Context.state = {
            "bookmarks": {
                "metafields": {
                    "updated_at": self.str_current_bookmark
                }
            }
        }
        state_expected = dict(Context.state)

        instance.update_bookmark(new_bookmark)
        self.assertEqual(state_expected, Context.state)