diff --git a/tests/pytest/alter/alter_keep.py b/tests/pytest/alter/alter_keep.py index f73b8ce460..a734c660e8 100644 --- a/tests/pytest/alter/alter_keep.py +++ b/tests/pytest/alter/alter_keep.py @@ -23,84 +23,93 @@ class TDTestCase: tdSql.init(conn.cursor(), logSql) def alterKeepCommunity(self): - ## community accepts both 1 paramater, 2 parmaters and 3 paramaters - ## but paramaters other than paramater 1 will be ignored - ## only paramater 1 will be used + tdLog.notice('running Keep Test, Community Version') + #testing keep parameter during create tdSql.query('show databases') - tdSql.checkData(0,7,'3650,3650,3650') + tdSql.checkData(0,7,'3650') + tdSql.execute('drop database db') - tdSql.execute('alter database db keep 10') + tdSql.execute('create database db keep 100') tdSql.query('show databases') - tdSql.checkData(0,7,'10,10,10') + tdSql.checkData(0,7,'100') + tdSql.execute('drop database db') - tdSql.execute('alter database db keep 50') + tdSql.error('create database db keep ') + tdSql.error('create database db keep 0') + tdSql.error('create database db keep 10,20') + tdSql.error('create database db keep 10,20,30') + tdSql.error('create database db keep 20,30,40,50') + + #testing keep parameter during alter + tdSql.execute('create database db') + + tdSql.execute('alter database db keep 100') tdSql.query('show databases') - tdSql.checkData(0,7,'50,50,50') + tdSql.checkData(0,7,'100') - tdSql.execute('alter database db keep 20') + tdSql.error('alter database db keep ') + tdSql.error('alter database db keep 0') + tdSql.error('alter database db keep 10,20') + tdSql.error('alter database db keep 10,20,30') + tdSql.error('alter database db keep 20,30,40,50') tdSql.query('show databases') - tdSql.checkData(0,7,'20,20,20') - - tdSql.execute('alter database db keep 100, 98 ,99') - tdSql.query('show databases') - tdSql.checkData(0,7,'100,100,100') - - tdSql.execute('alter database db keep 99, 100 ,101') - tdSql.query('show databases') - tdSql.checkData(0,7,'99,99,99') - - tdSql.execute('alter database db keep 200, 199 ,198') - tdSql.query('show databases') - tdSql.checkData(0,7,'200,200,200') - - tdSql.execute('alter database db keep 4000,4001') - tdSql.query('show databases') - tdSql.checkData(0,7,'4000,4000,4000') - - tdSql.execute('alter database db keep 5000,50') - tdSql.query('show databases') - tdSql.checkData(0,7,'5000,5000,5000') - - tdSql.execute('alter database db keep 50,5000') - tdSql.query('show databases') - tdSql.checkData(0,7,'50,50,50') - + tdSql.checkData(0,7,'100') def alterKeepEnterprise(self): - ## enterprise only accept three inputs - ## does not accept 1 paramaters nor 3 paramaters + tdLog.notice('running Keep Test, Enterprise Version') + #testing keep parameter during create tdSql.query('show databases') tdSql.checkData(0,7,'3650,3650,3650') + tdSql.execute('drop database db') + + tdSql.execute('create database db keep 100') + tdSql.query('show databases') + tdSql.checkData(0,7,'100,100,100') + tdSql.execute('drop database db') + + tdSql.execute('create database db keep 20, 30') + tdSql.query('show databases') + tdSql.checkData(0,7,'20,30,30') + tdSql.execute('drop database db') + + tdSql.execute('create database db keep 30,40,50') + tdSql.query('show databases') + tdSql.checkData(0,7,'30,40,50') + tdSql.execute('drop database db') + + tdSql.error('create database db keep ') + tdSql.error('create database db keep 20,30,40,50') + tdSql.error('create database db keep 0') + tdSql.error('create database db keep 100,50') + tdSql.error('create database db keep 100,40,50') + tdSql.error('create database db keep 20,100,50') + tdSql.error('create database db keep 50,60,20') + + #testing keep parameter during alter + tdSql.execute('create database db') tdSql.execute('alter database db keep 10') tdSql.query('show databases') tdSql.checkData(0,7,'10,10,10') - ## the order for altering keep is keep(D), keep0, keep1. - ## if the order is changed, please modify the following test - ## to make sure the the test is accurate - - tdSql.execute('alter database db keep 10, 10 ,10') + tdSql.execute('alter database db keep 20,30') tdSql.query('show databases') - tdSql.checkData(0,7,'10,10,10') + tdSql.checkData(0,7,'20,30,30') - tdSql.error('alter database db keep 100, 98 ,99') + tdSql.execute('alter database db keep 100,200,300') tdSql.query('show databases') - tdSql.checkData(0,7,'10,10,10') + tdSql.checkData(0,7,'100,200,300') - tdSql.execute('alter database db keep 200, 200 ,200') + tdSql.error('alter database db keep ') + tdSql.error('alter database db keep 20,30,40,50') + tdSql.error('alter database db keep 0') + tdSql.error('alter database db keep 100,50') + tdSql.error('alter database db keep 100,40,50') + tdSql.error('alter database db keep 20,100,50') + tdSql.error('alter database db keep 50,60,20') tdSql.query('show databases') - tdSql.checkData(0,7,'200,200,200') + tdSql.checkData(0,7,'100,200,300') - tdSql.execute('alter database db keep 198, 199 ,200') - tdSql.query('show databases') - tdSql.checkData(0,7,'198,199,200') - - # tdSql.execute('alter database db keep 3650,3650,3650') - # tdSql.error('alter database db keep 4000,3640') - # tdSql.error('alter database db keep 10,10') - # tdSql.query('show databases') - # tdSql.checkData(0,7,'3650,3650,3650') def run(self): tdSql.prepare() @@ -112,7 +121,8 @@ class TDTestCase: else: tdLog.debug('running community test') self.alterKeepCommunity() - + + tdSql.prepare() ##TODO: need to wait for TD-4445 to implement the following ## tests diff --git a/tests/pytest/fulltest.sh b/tests/pytest/fulltest.sh index a93a98a145..e9dc3762fe 100755 --- a/tests/pytest/fulltest.sh +++ b/tests/pytest/fulltest.sh @@ -317,7 +317,6 @@ python3 ./test.py -f query/last_row_cache.py python3 ./test.py -f account/account_create.py python3 ./test.py -f alter/alter_table.py python3 ./test.py -f query/queryGroupbySort.py -python3 ./test.py -f functions/function_session.py python3 ./test.py -f functions/function_stateWindow.py python3 ./test.py -f insert/unsignedInt.py @@ -344,4 +343,5 @@ python3 test.py -f insert/insert_before_use_db.py python3 test.py -f alter/alter_keep.py python3 test.py -f alter/alter_cacheLastRow.py python3 test.py -f alter/alter_keep_exception.py +python3 ./test.py -f query/querySession.py #======================p4-end=============== diff --git a/tests/pytest/functions/function_diff.py b/tests/pytest/functions/function_diff.py index 46ea3a86de..fba3b4c0d4 100644 --- a/tests/pytest/functions/function_diff.py +++ b/tests/pytest/functions/function_diff.py @@ -26,7 +26,20 @@ class TDTestCase: self.rowNum = 10 self.ts = 1537146000000 - + self.perfix = 'dev' + self.tables = 10 + + def insertData(self): + print("==============step1") + tdSql.execute( + "create table if not exists st (ts timestamp, col int) tags(dev nchar(50))") + + for i in range(self.tables): + tdSql.execute("create table %s%d using st tags(%d)" % (self.perfix, i, i)) + rows = 15 + i + for j in range(rows): + tdSql.execute("insert into %s%d values(%d, %d)" %(self.perfix, i, self.ts + i * 20 * 10000 + j * 10000, j)) + def run(self): tdSql.prepare() @@ -99,6 +112,15 @@ class TDTestCase: tdSql.query("select diff(col6) from test1") tdSql.checkRows(10) + + self.insertData() + + tdSql.query("select diff(col) from st group by tbname") + tdSql.checkRows(185) + + tdSql.error("select diff(col) from st group by dev") + + tdSql.error("select diff(col) from st group by col") def stop(self): tdSql.close() diff --git a/tests/pytest/functions/function_diff_restart.py b/tests/pytest/functions/function_diff_restart.py index e03b892477..1e00309860 100644 --- a/tests/pytest/functions/function_diff_restart.py +++ b/tests/pytest/functions/function_diff_restart.py @@ -97,6 +97,12 @@ class TDTestCase: tdSql.query("select diff(col6) from test1") tdSql.checkRows(10) + + tdSql.query("select diff(col) from st group by tbname") + tdSql.checkRows(185) + + tdSql.error("select diff(col) from st group by dev") + tdSql.error("select diff(col) from st group by col") def stop(self): tdSql.close() diff --git a/tests/pytest/functions/function_session.py b/tests/pytest/functions/function_session.py deleted file mode 100644 index 21b6d088ff..0000000000 --- a/tests/pytest/functions/function_session.py +++ /dev/null @@ -1,86 +0,0 @@ -################################################################### -# Copyright (c) 2016 by TAOS Technologies, Inc. -# All rights reserved. -# -# This file is proprietary and confidential to TAOS Technologies. -# No part of this file may be reproduced, stored, transmitted, -# disclosed or used in any form or by any means other than as -# expressly provided by the written permission from Jianhui Tao -# -################################################################### - -# -*- coding: utf-8 -*- - -import sys -import taos -from util.log import * -from util.cases import * -from util.sql import * -#import numpy as np - - -class TDTestCase: - def init(self, conn, logSql): - tdLog.debug("start to execute %s" % __file__) - tdSql.init(conn.cursor()) - - self.rowNum = 10 - self.ts = 1537146000000 - - def run(self): - tdSql.prepare() - - tdSql.execute('''create table test(ts timestamp, col1 tinyint, col2 smallint, col3 int, col4 bigint, col5 float, col6 double, - col7 bool, col8 binary(20), col9 nchar(20), col11 tinyint unsigned, col12 smallint unsigned, col13 int unsigned, col14 bigint unsigned) tags(loc nchar(20))''') - tdSql.execute("create table test1 using test tags('beijing')") - for i in range(self.rowNum): - tdSql.execute("insert into test1 values(%d, %d, %d, %d, %d, %f, %f, %d, 'taosdata%d', '涛思数据%d', %d, %d, %d, %d)" - % (self.ts + i, i + 1, i + 1, i + 1, i + 1, i + 0.1, i + 0.1, i % 2, i + 1, i + 1, i + 1, i + 1, i + 1, i + 1)) - - # operation not allowed on super table - tdSql.error("select count(*) from test session(ts, 1s)") - # operation not allowde on col pro - tdSql.error("select * from test1 session(ts, 1s)") - # operation not allowed on col except primary ts - tdSql.error("select * from test1 session(col1, 1s)") - - tdSql.query("select count(*) from test1 session(ts, 1s)") - - tdSql.checkRows(1) - tdSql.checkData(0, 1, 10) - # append more data - - for i in range(self.rowNum): - tdSql.execute("insert into test1 values(%d, %d, %d, %d, %d, %f, %f, %d, 'taosdata%d', '涛思数据%d', %d, %d, %d, %d)" - % (self.ts + 2000, i + 1, i + 1, i + 1, i + 1, i + 0.1, i + 0.1, i % 2, i + 1, i + 1, i + 1, i + 1, i + 1, i + 1)) - - tdSql.query("select count(*) from test1 session(ts, 1s)") - tdSql.checkRows(2) - tdSql.checkData(0, 1, 10) - tdSql.checkData(1, 1, 1) - - tdSql.query("select count(*) from test1 session(ts, 1m)") - tdSql.checkRows(1) - tdSql.checkData(0, 1, 11) - - tdSql.query("select first(col1) from test1 session(ts, 1s)") - tdSql.checkRows(2) - tdSql.checkData(0, 1, 1) - tdSql.checkData(1, 1, 1) - - - tdSql.query("select first(col1), last(col2) from test1 session(ts, 1s)") - tdSql.checkRows(2) - tdSql.checkData(0, 1, 1) - tdSql.checkData(0, 2, 10) - tdSql.checkData(1, 1, 1) - tdSql.checkData(1, 1, 1) - - # add more function - - def stop(self): - tdSql.close() - tdLog.success("%s successfully executed" % __file__) - -tdCases.addWindows(__file__, TDTestCase()) -tdCases.addLinux(__file__, TDTestCase()) diff --git a/tests/pytest/query/querySession.py b/tests/pytest/query/querySession.py index 9c8fc747df..53d53e2b02 100644 --- a/tests/pytest/query/querySession.py +++ b/tests/pytest/query/querySession.py @@ -82,7 +82,7 @@ class TDTestCase: tdSql.checkData(0, 1, 15) # session with where - tdSql.query("select count(*),first(tagtype),last(tagtype),avg(tagtype),sum(tagtype),min(tagtype),max(tagtype),leastsquares(tagtype, 1, 1),spread(tagtype) from dev_001 where ts <'2020-05-20 0:0:0' session(ts,1d)") + tdSql.query("select count(*),first(tagtype),last(tagtype),avg(tagtype),sum(tagtype),min(tagtype),max(tagtype),leastsquares(tagtype, 1, 1),spread(tagtype),stddev(tagtype),percentile(tagtype,0) from dev_001 where ts <'2020-05-20 0:0:0' session(ts,1d)") tdSql.checkRows(2) tdSql.checkData(0, 1, 13) tdSql.checkData(0, 2, 1) @@ -93,6 +93,9 @@ class TDTestCase: tdSql.checkData(0, 7, 13) tdSql.checkData(0, 8, '{slop:1.000000, intercept:0.000000}') tdSql.checkData(0, 9, 12) + tdSql.checkData(0, 10, 3.741657387) + tdSql.checkData(0, 11, 1) + tdSql.checkData(1, 11, 14) # tdsql err tdSql.error("select * from dev_001 session(ts,1w)")