Ejemplo n.º 1
0
def test_use_limit(context):
    map = eval(context.text)
    tb = map["table"]
    t_key = map["key"]

    conn = get_dble_conn(context)

    drop_sql = "drop table if exists {0}".format(tb)
    conn.query(drop_sql)

    gen = generate()
    name = gen.rand_string(10)

    sql = "create table {0}({1} int, data varchar(10))".format(tb, t_key)
    conn.query(sql)

    sql = "alter table {0} drop column {1}".format(tb, t_key)
    result, errMes = conn.query(sql)
    assert_that(
        str(errMes[1]),
        contains_string(
            "The columns may be sharding keys or ER keys, are not allowed to alter sql"
        ))

    sql = "update {0} set {1} = 1".format(tb, t_key)
    result, errMes = conn.query(sql)
    assert_that(str(errMes[1]),
                contains_string("Sharding column can't be updated"))

    sql = "insert into {0} (data) values ('{1}')".format(tb, name)
    result, errMes = conn.query(sql)
    assert_that(
        str(errMes[1]),
        contains_string(
            "bad insert sql, sharding column/joinKey:ID not provided"))

    sql = "insert into {0} values (1+1, '{1}')".format(tb, name)
    result, errMes = conn.query(sql)
    assert_that(str(errMes[1]),
                contains_string("Not Supported of Sharding Value EXPR"))

    conn.query(drop_sql)

    sql = "create table {0}(data varchar(10))".format(tb)
    conn.query(sql)

    sql = "insert into {0} values ('{1}')".format(tb, name)
    result, errMes = conn.query(sql)
    assert_that(
        str(errMes[1]),
        contains_string(
            "bad insert sql, sharding column/joinKey:ID not provided"))

    conn.query(drop_sql)
def step_impl(context, num):
    sql = "insert into test_table values"
    gen = generate()
    value_nu = int(num)
    for i in range(1, value_nu):
        c_str = gen.rand_string(10)
        pad_str = gen.rand_string(60)
        sql += "({0}, {0}, '{1}', '{2}'),".format(i, c_str, pad_str)

    c_str = gen.rand_string(10)
    pad_str = gen.rand_string(60)
    sql += "({0}, {0}, '{1}', '{2}')".format(i + 1, c_str, pad_str)

    ip = context.cfg_dble['dble']['ip']
    port = context.cfg_dble['client_port']
    do_exec_sql(context, ip, "test", "111111", "schema1", port, sql, True,
                "conn_0", "success")