column_num.py 5.0 KB
Newer Older
sangshuduo's avatar
sangshuduo 已提交
1 2 3
# -*- coding: utf-8 -*-

import sys
S
Shuduo Sang 已提交
4
import subprocess
sangshuduo's avatar
sangshuduo 已提交
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
from util.log import *
from util.cases import *
from util.sql import *


class TDTestCase:
    def init(self, conn):
        tdLog.debug("start to execute %s" % __file__)
        tdSql.init(conn.cursor())

    def run(self):
        tdSql.prepare()

        tdLog.info('=============== step1')
        tdLog.info('create table tb() -x step1')
        tdSql.error('create table tb()')
        tdLog.info('show tables')
        tdSql.query('show tables')
        # TSIM: if $rows != 0 then
        tdLog.info('tdSql.checkRow(0)')
        tdSql.checkRows(0)
        tdLog.info('=============== step2')
        # TSIM: sql create table $tb (ts timestamp)  -x step2
        tdLog.info('create table tb (ts timestamp)  -x step2')
        tdSql.error('create table tb (ts timestamp) ')
        tdLog.info('show tables')
        tdSql.query('show tables')
        # TSIM: if $rows != 0 then
        tdLog.info('tdSql.checkRow(0)')
        tdSql.checkRows(0)
        tdLog.info('=============== step3')
        tdLog.info('create table tb (ts int)  -x step3')
        tdSql.error('create table tb (ts int) ')
        tdLog.info('show tables')
        tdSql.query('show tables')
        tdLog.info('tdSql.checkRow(0)')
        tdSql.checkRows(0)
        tdLog.info('=============== step4')
        tdLog.info('create table tb (ts timestamp, a1 int, a2 int, a3 int, a4 int, a5 int, a6 int, a7 int, a8 int, a9 int, a10 int, a11 int, a12 int, a13 int, a14 int, a15 int, a16 int, a17 int, a18 int, a19 int, a20 int, a21 int, a22 int, a23 int, a24 int, a25 int, a26 int, a27 int, a28 int,a29 int,a30 int,a31 int,a32 int, b1 int, b2 int, b3 int, b4 int, b5 int, b6 int, b7 int, b8 int, b9 int, b10 int, b11 int, b12 int, b13 int, b14 int, b15 int, b16 int, b17 int, b18 int, b19 int, b20 int, b21 int, b22 int, b23 int, b24 int, b25 int, b26 int, b27 int, b28 int,b29 int,b30 int,b31 int,b32 int)')
        tdSql.execute('create table tb (ts timestamp, a1 int, a2 int, a3 int, a4 int, a5 int, a6 int, a7 int, a8 int, a9 int, a10 int, a11 int, a12 int, a13 int, a14 int, a15 int, a16 int, a17 int, a18 int, a19 int, a20 int, a21 int, a22 int, a23 int, a24 int, a25 int, a26 int, a27 int, a28 int,a29 int,a30 int,a31 int,a32 int, b1 int, b2 int, b3 int, b4 int, b5 int, b6 int, b7 int, b8 int, b9 int, b10 int, b11 int, b12 int, b13 int, b14 int, b15 int, b16 int, b17 int, b18 int, b19 int, b20 int, b21 int, b22 int, b23 int, b24 int, b25 int, b26 int, b27 int, b28 int,b29 int,b30 int,b31 int,b32 int)')
        # TSIM:
        # TSIM: sql show tables
        tdLog.info('show tables')
        tdSql.query('show tables')
        tdLog.info('tdSql.checkRow(1)')
        tdSql.checkRows(1)
S
Shuduo Sang 已提交
51

sangshuduo's avatar
sangshuduo 已提交
52
        tdLog.info('=============== step5')
S
Shuduo Sang 已提交
53 54 55

        getMaxColumnNum = "grep -w '#define TSDB_MAX_COLUMNS' ../../src/inc/taosdef.h|awk '{print $3}'"
        boundary = int(subprocess.check_output(getMaxColumnNum, shell=True))
S
Shuduo Sang 已提交
56
        tdLog.info("get max column number is %d" % boundary)
S
Shuduo Sang 已提交
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71

        columnSeq = "ts timestamp"
        for x in range(0, boundary):
            columnSeq = columnSeq + ", col%d int" % x

        tdLog.info("create table tb1 (%s)" % columnSeq)
        tdSql.error('create table tb1 (%s)' % columnSeq)

        columnSeq = "ts timestamp"
        for x in range(0, boundary - 1):
            columnSeq = columnSeq + ", col%d int" % x

        tdLog.info("create table tb1 (%s)" % columnSeq)
        tdSql.execute('create table tb1 (%s)' % columnSeq)

sangshuduo's avatar
sangshuduo 已提交
72 73 74 75 76
        tdLog.info('show tables')
        tdSql.query('show tables')
        # TSIM: if $rows != 2 then
        tdLog.info('tdSql.checkRow(2)')
        tdSql.checkRows(2)
S
Shuduo Sang 已提交
77 78 79 80 81 82

        data = "now"
        for x in range(0, boundary-1):
            data = data + ", %d" % x
        tdLog.info("insert into tb1 values (%s)" % data)
        tdSql.execute("insert into tb1 values (%s)" % data)
sangshuduo's avatar
sangshuduo 已提交
83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
        # TSIM: sql select * from $tb
        tdLog.info('select * from tb1')
        tdSql.query('select * from tb1')
        # TSIM: if $rows != 1 then
        tdLog.info('tdSql.checkRow(1)')
        tdSql.checkRows(1)
        # TSIM: return -1
        # TSIM: endi
        # TSIM:
        # TSIM: sql drop table $tb
        tdLog.info('drop table tb1')
        tdSql.execute('drop table tb1')
        # TSIM: sql show tables
        tdLog.info('show tables')
        tdSql.query('show tables')
        # TSIM: if $rows != 1 then
        tdLog.info('tdSql.checkRow(1)')
        tdSql.checkRows(1)
        # TSIM: return -1
        # TSIM: endi
        # TSIM:
        # TSIM: sql drop database $db
        tdLog.info('drop database db')
        tdSql.execute('drop database db')
        # TSIM: sql show databases
        tdLog.info('show databases')
        tdSql.query('show databases')
        # TSIM: if $rows != 0 then
        tdLog.info('tdSql.checkRow(0)')
        tdSql.checkRows(0)
        # TSIM: return -1
        # TSIM: endi
# convert end

    def stop(self):
        tdSql.close()
        tdLog.success("%s successfully executed" % __file__)


tdCases.addWindows(__file__, TDTestCase())
tdCases.addLinux(__file__, TDTestCase())