Пример #1
0
def test_datetime():
    from datetime import datetime, date, time
    assert sqlrepr(datetime(2005, 7, 14, 13, 31, 2)) == "'2005-07-14 13:31:02.0'"
    assert sqlrepr(date(2005, 7, 14)) == "'2005-07-14'"
    assert sqlrepr(time(13, 31, 2)) == "'13:31:02.0'"
    # now dates before 1900
    assert sqlrepr(datetime(1428, 7, 14, 13, 31, 2)) == "'1428-07-14 13:31:02.0'"
    assert sqlrepr(date(1428, 7, 14)) == "'1428-07-14'"
Пример #2
0
def test_insert():
    # Single column, no keyword arguments.
    instance = Insert('test', [('test',)])
    assert sqlrepr(instance, 'mysql') == "INSERT INTO test VALUES ('test')"

    # Multiple columns, no keyword arguments.
    instance2 = Insert('test', [('1st', '2nd', '3th', '4th')])
    assert sqlrepr(instance2, 'postgres') == "INSERT INTO test VALUES ('1st', '2nd', '3th', '4th')"

    # Multiple rows, multiple columns, "valueList" keyword argument.
    instance3 = Insert('test', valueList=[('a1', 'b1'), ('a2', 'b2'), ('a3', 'b3')])
    assert sqlrepr(instance3, 'sqlite') == "INSERT INTO test VALUES ('a1', 'b1'), ('a2', 'b2'), ('a3', 'b3')"

    # Multiple columns, "values" keyword argument.
    instance4 = Insert('test', values=('v1', 'v2', 'v3'))
    assert sqlrepr(instance4, 'mysql') == "INSERT INTO test VALUES ('v1', 'v2', 'v3')"

    # Single column, "valueList" keyword argument.
    instance5 = Insert('test', valueList=[('v1',)])
    assert sqlrepr(instance5, 'mysql') == "INSERT INTO test VALUES ('v1')"

    # Multiple rows, Multiple columns, template.
    instance6 = Insert('test', valueList=[('a1', 'b1'), ('a2', 'b2')], template=['col1', 'col2'])
    assert sqlrepr(instance6, 'mysql') == "INSERT INTO test (col1, col2) VALUES ('a1', 'b1'), ('a2', 'b2')"

    # Multiple columns, implicit template (dictionary value).
    instance7 = Insert('test', valueList=[{'col1': 'a1', 'col2': 'b1'}])
    assert sqlrepr(instance7, 'mysql') == "INSERT INTO test (col2, col1) VALUES ('b1', 'a1')"

    # Multiple rows, Multiple columns, implicit template.
    instance8 = Insert('test', valueList=[{'col1': 'a1', 'col2': 'b1'},
                                        {'col1': 'a2', 'col2': 'b2'}])
    assert sqlrepr(instance8, 'mysql') == "INSERT INTO test (col2, col1) VALUES ('b1', 'a1'), ('b2', 'a2')"
Пример #3
0
def test_sets():
    try:
        set
    except NameError:
        pass
    else:
        assert sqlrepr(set([1])) == "(1)"
    if sys.version_info[:3] < (2, 6, 0): # Module sets was deprecated in Python 2.6
        try:
            from sets import Set
        except ImportError:
            pass
        else:
            assert sqlrepr(Set([1])) == "(1)"
Пример #4
0
def test_sets():
    try:
        set
    except NameError:
        pass
    else:
        assert sqlrepr(set([1])) == "(1)"
Пример #5
0
def test_datetime():
    from datetime import datetime, date, time
    if SODateTimeCol.datetimeFormat.find('.%f') > 0:
        assert sqlrepr(datetime(2005, 7, 14, 13, 31, 2)) == \
            "'2005-07-14 13:31:02.000000'"
    else:
        assert sqlrepr(datetime(2005, 7, 14, 13, 31, 2)) == \
            "'2005-07-14 13:31:02'"
    assert sqlrepr(date(2005, 7, 14)) == "'2005-07-14'"
    if SOTimeCol.timeFormat.find('.%f') > 0:
        assert sqlrepr(time(13, 31, 2)) == "'13:31:02.000000'"
    else:
        assert sqlrepr(time(13, 31, 2)) == "'13:31:02'"
    # now dates before 1900
    if SODateTimeCol.datetimeFormat.find('.%f') > 0:
        assert sqlrepr(datetime(1428, 7, 14, 13, 31, 2)) == \
            "'1428-07-14 13:31:02.000000'"
    else:
        assert sqlrepr(datetime(1428, 7, 14, 13, 31, 2)) == \
            "'1428-07-14 13:31:02'"
    assert sqlrepr(date(1428, 7, 14)) == "'1428-07-14'"
Пример #6
0
def test_sqlobjectfield():
    instance = SQLObjectField('test', 'test', 'test', None, None)
    assert sqlrepr(instance) == repr(instance)
Пример #7
0
def test_trueclause():
    instance = SQLTrueClauseClass()
    assert sqlrepr(instance) == repr(instance)
Пример #8
0
def test_bool():
    assert sqlrepr(True, 'postgres') == "'t'"
    assert sqlrepr(False, 'postgres') == "'f'"
    assert sqlrepr(True, 'mysql') == "1"
    assert sqlrepr(False, 'mysql') == "0"
Пример #9
0
def test_none():
    assert sqlrepr(None) == "NULL"
Пример #10
0
def test_string_():
    assert sqlrepr('A String\tAnother', 'postgres') == "E'A String\\tAnother'"
    assert sqlrepr('A String\'Another', 'firebird') == "'A String''Another'"
Пример #11
0
def test_dict():
    assert sqlrepr({"key": "value"}, "sqlite") == "('key')"
Пример #12
0
def test_op():
    instance = SQLOp('and', 'this', 'that')
    assert sqlrepr(instance, 'mysql') == "(('this') AND ('that'))"
Пример #13
0
def test_simple_string():
    assert sqlrepr('A String', 'firebird') == "'A String'"
Пример #14
0
def test_like_quoted():
    assert sqlrepr(_LikeQuoted('test'), 'postgres') == "'test'"
    assert sqlrepr(_LikeQuoted('test'), 'sqlite') == "'test'"
    assert sqlrepr(_LikeQuoted('test%'), 'postgres') == r"E'test\\%'"
    assert sqlrepr(_LikeQuoted('test%'), 'sqlite') == r"'test\%'"
Пример #15
0
def test_timedelta():
    assert sqlrepr(timedelta(seconds=30*60)) == \
        "INTERVAL '0 days 1800 seconds'"
Пример #16
0
def test_dict():
    assert sqlrepr({"key": "value"}, "sqlite") == "('key')"
Пример #17
0
def test_prefix():
    instance = SQLPrefix('test', 'test')
    assert sqlrepr(instance, 'mysql') == "test 'test'"
Пример #18
0
def test_constant():
    instance = SQLConstant('test')
    assert sqlrepr(instance) == repr(instance)
Пример #19
0
def test_update():
    instance = Update('test', {'test': 'test'})
    assert sqlrepr(instance, 'mysql') == "UPDATE test SET test='test'"
Пример #20
0
def test_replace():
    instance = Replace('test', {'test': 'test'})
    assert sqlrepr(instance, 'mysql') == "REPLACE test SET test='test'"
Пример #21
0
def test_string_newline():
    assert sqlrepr('A String\nAnother', 'postgres') == "E'A String\\nAnother'"
    assert sqlrepr('A String\nAnother', 'sqlite') == "'A String\nAnother'"
Пример #22
0
def test_constant():
    instance = SQLConstant('test')
    assert sqlrepr(instance) == repr(instance)
Пример #23
0
def test_string_b():
    assert sqlrepr('A String\bAnother', 'postgres') == "E'A String\\bAnother'"
Пример #24
0
def test_call():
    instance = SQLCall('test', ('test', ))
    assert sqlrepr(instance, 'mysql') == "'test'('test')"
Пример #25
0
def test_string_000():
    assert sqlrepr('A String\000Another',
                   'postgres') == "E'A String\\0Another'"
Пример #26
0
def test_integer():
    assert sqlrepr(10) == "10"
Пример #27
0
def test_string_():
    assert sqlrepr('A String\tAnother', 'postgres') == "E'A String\\tAnother'"
    assert sqlrepr('A String\'Another', 'firebird') == "'A String''Another'"
Пример #28
0
def test_tuple():
    assert sqlrepr(('one', 'two', 'three'), 'postgres') == \
        "('one', 'two', 'three')"
Пример #29
0
def test_simple_unicode():
    assert sqlrepr(u'A String', 'postgres') == "'A String'"
Пример #30
0
def test_integer():
    assert sqlrepr(10) == "10"
Пример #31
0
def test_float():
    assert sqlrepr(10.01) == "10.01"
Пример #32
0
def test_instance():
    instance = TestClass()
    assert sqlrepr(instance) == repr(instance)
Пример #33
0
def test_none():
    assert sqlrepr(None) == "NULL"
Пример #34
0
def test_select():
    instance = Select('test')
    assert sqlrepr(instance, 'mysql') == "SELECT test"
Пример #35
0
def test_list():
    assert sqlrepr(['one', 'two', 'three'],
                   'postgres') == "('one', 'two', 'three')"
Пример #36
0
def test_delete():
    instance = Delete('test', None)
    assert sqlrepr(instance, 'mysql') == "DELETE FROM test"
Пример #37
0
def PostgresBinaryConverter(value, db):
    assert db == 'postgres'
    return sqlrepr(escape_bytea(value), db)
Пример #38
0
def test_trueclause():
    instance = SQLTrueClauseClass()
    assert sqlrepr(instance) == repr(instance)
Пример #39
0
def test_timedelta():
    assert sqlrepr(timedelta(seconds=30 * 60)) == \
        "INTERVAL '0 days 1800 seconds'"
Пример #40
0
def test_call():
    instance = SQLCall('test', ('test',))
    assert sqlrepr(instance, 'mysql') == "'test'('test')"
Пример #41
0
def test_simple_string():
    assert sqlrepr('A String', 'firebird') == "'A String'"
Пример #42
0
def test_prefix():
    instance = SQLPrefix('test', 'test')
    assert sqlrepr(instance, 'mysql') == "test 'test'"
Пример #43
0
def test_string_b():
    assert sqlrepr('A String\bAnother', 'postgres') == "E'A String\\bAnother'"
Пример #44
0
def test_newstyle():
    instance = NewTestClass()
    assert sqlrepr(instance) == repr(instance)
Пример #45
0
def test_op():
    instance = SQLOp('and', 'this', 'that')
    assert sqlrepr(instance, 'mysql') == "(('this') AND ('that'))"
Пример #46
0
def test_like_quoted():
    assert sqlrepr(_LikeQuoted('test'), 'postgres') == "'test'"
    assert sqlrepr(_LikeQuoted('test'), 'sqlite') == "'test'"
    assert sqlrepr(_LikeQuoted('test%'), 'postgres') == r"E'test\\%'"
    assert sqlrepr(_LikeQuoted('test%'), 'sqlite') == r"'test\%'"
Пример #47
0
def test_sqlexpr():
    instance = SQLExpression()
    assert sqlrepr(instance) == repr(instance)
Пример #48
0
def test_string_newline():
    assert sqlrepr('A String\nAnother', 'postgres') == "E'A String\\nAnother'"
    assert sqlrepr('A String\nAnother', 'sqlite') == "'A String\nAnother'"
Пример #49
0
def test_sqlobjectfield():
    instance = SQLObjectField('test', 'test', 'test', None, None)
    assert sqlrepr(instance) == repr(instance)
Пример #50
0
def test_string_000():
    assert sqlrepr('A String\000Another', 'postgres') == \
        "E'A String\\0Another'"
Пример #51
0
def test_select():
    instance = Select('test')
    assert sqlrepr(instance, 'mysql') == "SELECT test"
Пример #52
0
def test_simple_unicode():
    assert sqlrepr(u'A String', 'postgres') == "'A String'"
Пример #53
0
def test_update():
    instance = Update('test', {'test':'test'})
    assert sqlrepr(instance, 'mysql') == "UPDATE test SET test='test'"
Пример #54
0
def test_float():
    assert sqlrepr(10.01) == "10.01"
Пример #55
0
def test_delete():
    instance = Delete('test', None)
    assert sqlrepr(instance, 'mysql') == "DELETE FROM test"
Пример #56
0
def test_list():
    assert sqlrepr(['one', 'two', 'three'], 'postgres') == \
        "('one', 'two', 'three')"
Пример #57
0
def test_replace():
    instance = Replace('test', {'test':'test'})
    assert sqlrepr(instance, 'mysql') == "REPLACE test SET test='test'"
Пример #58
0
 def __sqlrepr__(self, db):
     return "(%s %s (%s))" % (
         self.string, self._get_op(db), sqlrepr(self.expr, db))
Пример #59
0
def test_tuple():
    assert sqlrepr(('one', 'two', 'three'),
                   'postgres') == "('one', 'two', 'three')"