Example #1
0
 def _make_query(self):
     low = _makesafe(self.low)
     high = _makesafe(self.high)
     clause = "parent.{col} BETWEEN {low} AND {high}".format(
         col=self.col, low=low, high=high)
     return """
                 SELECT
                     *
                 FROM
                     ({parent}) AS parent
                 WHERE
                     {clause}
                """.format(parent=self.parent.get_query(),
                           clause=clause)
Example #2
0
        def _make_query(self):
            try:
                assert not isinstance(self.subsetby, str)
                ss = tuple(self.subsetby)
            except (TypeError, AssertionError):
                ss = (self.subsetby, )
            finally:
                clause = "parent.{col} IN {subset}".format(
                    col=self.col, subset=_makesafe(ss))

            return """
                        SELECT
                            *
                        FROM
                            ({parent}) AS parent
                        WHERE
                            {clause}
                       """.format(parent=self.parent.get_query(),
                                  clause=clause)
Example #3
0
def test_convert_list_to_str():
    """
    Test that makesafe returns a string when passed a list
    """
    assert _makesafe(["foo", "bar"]) == "ARRAY['foo','bar']"
Example #4
0
def test_convert_number_to_str():
    """
    Test that makesafe returns a string when passed a integer or float
    """
    assert _makesafe(123) == "123"
    assert _makesafe(float("Inf")) == "'Infinity'::float"