fix test cases
This commit is contained in:
parent
f74bcc42ab
commit
64a18e9fbd
|
@ -8,14 +8,14 @@ from util.sql import *
|
||||||
from util.cases import *
|
from util.cases import *
|
||||||
|
|
||||||
class TDTestCase:
|
class TDTestCase:
|
||||||
updatecfgDict = {'debugFlag': 143 ,"cDebugFlag":143,"uDebugFlag":143 ,"rpcDebugFlag":143 , "tmrDebugFlag":143 ,
|
updatecfgDict = {'debugFlag': 143 ,"cDebugFlag":143,"uDebugFlag":143 ,"rpcDebugFlag":143 , "tmrDebugFlag":143 ,
|
||||||
"jniDebugFlag":143 ,"simDebugFlag":143,"dDebugFlag":143, "dDebugFlag":143,"vDebugFlag":143,"mDebugFlag":143,"qDebugFlag":143,
|
"jniDebugFlag":143 ,"simDebugFlag":143,"dDebugFlag":143, "dDebugFlag":143,"vDebugFlag":143,"mDebugFlag":143,"qDebugFlag":143,
|
||||||
"wDebugFlag":143,"sDebugFlag":143,"tsdbDebugFlag":143,"tqDebugFlag":143 ,"fsDebugFlag":143 ,"udfDebugFlag":143}
|
"wDebugFlag":143,"sDebugFlag":143,"tsdbDebugFlag":143,"tqDebugFlag":143 ,"fsDebugFlag":143 ,"udfDebugFlag":143}
|
||||||
|
|
||||||
def init(self, conn, logSql):
|
def init(self, conn, logSql):
|
||||||
tdLog.debug(f"start to excute {__file__}")
|
tdLog.debug(f"start to excute {__file__}")
|
||||||
tdSql.init(conn.cursor())
|
tdSql.init(conn.cursor())
|
||||||
|
|
||||||
def prepare_datas(self):
|
def prepare_datas(self):
|
||||||
tdSql.execute(
|
tdSql.execute(
|
||||||
'''create table stb1
|
'''create table stb1
|
||||||
|
@ -23,7 +23,7 @@ class TDTestCase:
|
||||||
tags (t1 int)
|
tags (t1 int)
|
||||||
'''
|
'''
|
||||||
)
|
)
|
||||||
|
|
||||||
tdSql.execute(
|
tdSql.execute(
|
||||||
'''
|
'''
|
||||||
create table t1
|
create table t1
|
||||||
|
@ -65,14 +65,14 @@ class TDTestCase:
|
||||||
( '2023-02-21 01:01:01.000', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL )
|
( '2023-02-21 01:01:01.000', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL )
|
||||||
'''
|
'''
|
||||||
)
|
)
|
||||||
|
|
||||||
def check_result_auto(self ,origin_query , round_query):
|
def check_result_auto(self ,origin_query , round_query):
|
||||||
pass
|
pass
|
||||||
round_result = tdSql.getResult(round_query)
|
round_result = tdSql.getResult(round_query)
|
||||||
origin_result = tdSql.getResult(origin_query)
|
origin_result = tdSql.getResult(origin_query)
|
||||||
|
|
||||||
auto_result =[]
|
auto_result =[]
|
||||||
|
|
||||||
for row in origin_result:
|
for row in origin_result:
|
||||||
row_check = []
|
row_check = []
|
||||||
for elem in row:
|
for elem in row:
|
||||||
|
@ -87,13 +87,13 @@ class TDTestCase:
|
||||||
for row_index , row in enumerate(round_result):
|
for row_index , row in enumerate(round_result):
|
||||||
for col_index , elem in enumerate(row):
|
for col_index , elem in enumerate(row):
|
||||||
if auto_result[row_index][col_index] != elem:
|
if auto_result[row_index][col_index] != elem:
|
||||||
check_status = False
|
check_status = False
|
||||||
if not check_status:
|
if not check_status:
|
||||||
tdLog.notice("round function value has not as expected , sql is \"%s\" "%round_query )
|
tdLog.notice("round function value has not as expected , sql is \"%s\" "%round_query )
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
else:
|
else:
|
||||||
tdLog.info("round value check pass , it work as expected ,sql is \"%s\" "%round_query )
|
tdLog.info("round value check pass , it work as expected ,sql is \"%s\" "%round_query )
|
||||||
|
|
||||||
def test_errors(self):
|
def test_errors(self):
|
||||||
error_sql_lists = [
|
error_sql_lists = [
|
||||||
"select round from t1",
|
"select round from t1",
|
||||||
|
@ -127,42 +127,42 @@ class TDTestCase:
|
||||||
]
|
]
|
||||||
for error_sql in error_sql_lists:
|
for error_sql in error_sql_lists:
|
||||||
tdSql.error(error_sql)
|
tdSql.error(error_sql)
|
||||||
|
|
||||||
def support_types(self):
|
def support_types(self):
|
||||||
type_error_sql_lists = [
|
type_error_sql_lists = [
|
||||||
"select round(ts) from t1" ,
|
"select round(ts) from t1" ,
|
||||||
"select round(c7) from t1",
|
"select round(c7) from t1",
|
||||||
"select round(c8) from t1",
|
"select round(c8) from t1",
|
||||||
"select round(c9) from t1",
|
"select round(c9) from t1",
|
||||||
"select round(ts) from ct1" ,
|
"select round(ts) from ct1" ,
|
||||||
"select round(c7) from ct1",
|
"select round(c7) from ct1",
|
||||||
"select round(c8) from ct1",
|
"select round(c8) from ct1",
|
||||||
"select round(c9) from ct1",
|
"select round(c9) from ct1",
|
||||||
"select round(ts) from ct3" ,
|
"select round(ts) from ct3" ,
|
||||||
"select round(c7) from ct3",
|
"select round(c7) from ct3",
|
||||||
"select round(c8) from ct3",
|
"select round(c8) from ct3",
|
||||||
"select round(c9) from ct3",
|
"select round(c9) from ct3",
|
||||||
"select round(ts) from ct4" ,
|
"select round(ts) from ct4" ,
|
||||||
"select round(c7) from ct4",
|
"select round(c7) from ct4",
|
||||||
"select round(c8) from ct4",
|
"select round(c8) from ct4",
|
||||||
"select round(c9) from ct4",
|
"select round(c9) from ct4",
|
||||||
"select round(ts) from stb1" ,
|
"select round(ts) from stb1" ,
|
||||||
"select round(c7) from stb1",
|
"select round(c7) from stb1",
|
||||||
"select round(c8) from stb1",
|
"select round(c8) from stb1",
|
||||||
"select round(c9) from stb1" ,
|
"select round(c9) from stb1" ,
|
||||||
|
|
||||||
"select round(ts) from stbbb1" ,
|
"select round(ts) from stbbb1" ,
|
||||||
"select round(c7) from stbbb1",
|
"select round(c7) from stbbb1",
|
||||||
|
|
||||||
"select round(ts) from tbname",
|
"select round(ts) from tbname",
|
||||||
"select round(c9) from tbname"
|
"select round(c9) from tbname"
|
||||||
|
|
||||||
]
|
]
|
||||||
|
|
||||||
for type_sql in type_error_sql_lists:
|
for type_sql in type_error_sql_lists:
|
||||||
tdSql.error(type_sql)
|
tdSql.error(type_sql)
|
||||||
|
|
||||||
|
|
||||||
type_sql_lists = [
|
type_sql_lists = [
|
||||||
"select round(c1) from t1",
|
"select round(c1) from t1",
|
||||||
"select round(c2) from t1",
|
"select round(c2) from t1",
|
||||||
|
@ -192,16 +192,16 @@ class TDTestCase:
|
||||||
"select round(c5) from stb1",
|
"select round(c5) from stb1",
|
||||||
"select round(c6) from stb1",
|
"select round(c6) from stb1",
|
||||||
|
|
||||||
"select round(c6) as alisb from stb1",
|
"select round(c6) as alisb from stb1",
|
||||||
"select round(c6) alisb from stb1",
|
"select round(c6) alisb from stb1",
|
||||||
]
|
]
|
||||||
|
|
||||||
for type_sql in type_sql_lists:
|
for type_sql in type_sql_lists:
|
||||||
tdSql.query(type_sql)
|
tdSql.query(type_sql)
|
||||||
|
|
||||||
def basic_round_function(self):
|
def basic_round_function(self):
|
||||||
|
|
||||||
# basic query
|
# basic query
|
||||||
tdSql.query("select c1 from ct3")
|
tdSql.query("select c1 from ct3")
|
||||||
tdSql.checkRows(0)
|
tdSql.checkRows(0)
|
||||||
tdSql.query("select c1 from t1")
|
tdSql.query("select c1 from t1")
|
||||||
|
@ -221,7 +221,7 @@ class TDTestCase:
|
||||||
tdSql.query("select round(c5) from ct3")
|
tdSql.query("select round(c5) from ct3")
|
||||||
tdSql.checkRows(0)
|
tdSql.checkRows(0)
|
||||||
tdSql.query("select round(c6) from ct3")
|
tdSql.query("select round(c6) from ct3")
|
||||||
|
|
||||||
# used for regular table
|
# used for regular table
|
||||||
tdSql.query("select round(c1) from t1")
|
tdSql.query("select round(c1) from t1")
|
||||||
tdSql.checkData(0, 0, None)
|
tdSql.checkData(0, 0, None)
|
||||||
|
@ -239,7 +239,7 @@ class TDTestCase:
|
||||||
tdSql.checkData(5, 5, None)
|
tdSql.checkData(5, 5, None)
|
||||||
|
|
||||||
self.check_result_auto( "select c1, c2, c3 , c4, c5 from t1", "select (c1), round(c2) ,round(c3), round(c4), round(c5) from t1")
|
self.check_result_auto( "select c1, c2, c3 , c4, c5 from t1", "select (c1), round(c2) ,round(c3), round(c4), round(c5) from t1")
|
||||||
|
|
||||||
# used for sub table
|
# used for sub table
|
||||||
tdSql.query("select round(c1) from ct1")
|
tdSql.query("select round(c1) from ct1")
|
||||||
tdSql.checkData(0, 0, 8)
|
tdSql.checkData(0, 0, 8)
|
||||||
|
@ -251,20 +251,20 @@ class TDTestCase:
|
||||||
self.check_result_auto( "select c1, c2, c3 , c4, c5 from ct1", "select (c1), round(c2) ,round(c3), round(c4), round(c5) from ct1")
|
self.check_result_auto( "select c1, c2, c3 , c4, c5 from ct1", "select (c1), round(c2) ,round(c3), round(c4), round(c5) from ct1")
|
||||||
self.check_result_auto("select round(round(round(round(round(round(round(round(round(round(c1)))))))))) nest_col_func from ct1;","select c1 from ct1" )
|
self.check_result_auto("select round(round(round(round(round(round(round(round(round(round(c1)))))))))) nest_col_func from ct1;","select c1 from ct1" )
|
||||||
|
|
||||||
# used for stable table
|
# used for stable table
|
||||||
|
|
||||||
tdSql.query("select round(c1) from stb1")
|
tdSql.query("select round(c1) from stb1")
|
||||||
tdSql.checkRows(25)
|
tdSql.checkRows(25)
|
||||||
self.check_result_auto( "select c1, c2, c3 , c4, c5 from ct4 ", "select (c1), round(c2) ,round(c3), round(c4), round(c5) from ct4")
|
self.check_result_auto( "select c1, c2, c3 , c4, c5 from ct4 ", "select (c1), round(c2) ,round(c3), round(c4), round(c5) from ct4")
|
||||||
self.check_result_auto("select round(round(round(round(round(round(round(round(round(round(c1)))))))))) nest_col_func from ct4;" , "select c1 from ct4" )
|
self.check_result_auto("select round(round(round(round(round(round(round(round(round(round(c1)))))))))) nest_col_func from ct4;" , "select c1 from ct4" )
|
||||||
|
|
||||||
|
|
||||||
# used for not exists table
|
# used for not exists table
|
||||||
tdSql.error("select round(c1) from stbbb1")
|
tdSql.error("select round(c1) from stbbb1")
|
||||||
tdSql.error("select round(c1) from tbname")
|
tdSql.error("select round(c1) from tbname")
|
||||||
tdSql.error("select round(c1) from ct5")
|
tdSql.error("select round(c1) from ct5")
|
||||||
|
|
||||||
# mix with common col
|
# mix with common col
|
||||||
tdSql.query("select c1, round(c1) from ct1")
|
tdSql.query("select c1, round(c1) from ct1")
|
||||||
tdSql.checkData(0 , 0 ,8)
|
tdSql.checkData(0 , 0 ,8)
|
||||||
tdSql.checkData(0 , 1 ,8)
|
tdSql.checkData(0 , 1 ,8)
|
||||||
|
@ -289,7 +289,7 @@ class TDTestCase:
|
||||||
tdSql.checkData(0 , 1 ,None)
|
tdSql.checkData(0 , 1 ,None)
|
||||||
tdSql.checkData(0 , 2 ,None)
|
tdSql.checkData(0 , 2 ,None)
|
||||||
tdSql.checkData(0 , 3 ,None)
|
tdSql.checkData(0 , 3 ,None)
|
||||||
|
|
||||||
tdSql.checkData(3 , 0 , 6)
|
tdSql.checkData(3 , 0 , 6)
|
||||||
tdSql.checkData(3 , 1 , 6)
|
tdSql.checkData(3 , 1 , 6)
|
||||||
tdSql.checkData(3 , 2 ,6.66000)
|
tdSql.checkData(3 , 2 ,6.66000)
|
||||||
|
@ -315,7 +315,7 @@ class TDTestCase:
|
||||||
tdSql.query("select max(c5), count(c5) from stb1")
|
tdSql.query("select max(c5), count(c5) from stb1")
|
||||||
tdSql.query("select max(c5), count(c5) from ct1")
|
tdSql.query("select max(c5), count(c5) from ct1")
|
||||||
|
|
||||||
|
|
||||||
# bug fix for count
|
# bug fix for count
|
||||||
tdSql.query("select count(c1) from ct4 ")
|
tdSql.query("select count(c1) from ct4 ")
|
||||||
tdSql.checkData(0,0,9)
|
tdSql.checkData(0,0,9)
|
||||||
|
@ -326,7 +326,7 @@ class TDTestCase:
|
||||||
tdSql.query("select count(*) from stb1 ")
|
tdSql.query("select count(*) from stb1 ")
|
||||||
tdSql.checkData(0,0,25)
|
tdSql.checkData(0,0,25)
|
||||||
|
|
||||||
# bug fix for compute
|
# bug fix for compute
|
||||||
tdSql.query("select c1, abs(c1) -0 ,round(c1)-0 from ct4 ")
|
tdSql.query("select c1, abs(c1) -0 ,round(c1)-0 from ct4 ")
|
||||||
tdSql.checkData(0, 0, None)
|
tdSql.checkData(0, 0, None)
|
||||||
tdSql.checkData(0, 1, None)
|
tdSql.checkData(0, 1, None)
|
||||||
|
@ -378,10 +378,10 @@ class TDTestCase:
|
||||||
tdSql.checkData(0,4,7.900000000)
|
tdSql.checkData(0,4,7.900000000)
|
||||||
tdSql.checkData(0,5,3.000000000)
|
tdSql.checkData(0,5,3.000000000)
|
||||||
tdSql.checkData(0,6,7.500000000)
|
tdSql.checkData(0,6,7.500000000)
|
||||||
|
|
||||||
def round_Arithmetic(self):
|
def round_Arithmetic(self):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
def check_boundary_values(self):
|
def check_boundary_values(self):
|
||||||
|
|
||||||
tdSql.execute("drop database if exists bound_test")
|
tdSql.execute("drop database if exists bound_test")
|
||||||
|
@ -410,14 +410,14 @@ class TDTestCase:
|
||||||
tdSql.execute(
|
tdSql.execute(
|
||||||
f"insert into sub1_bound values ( now(), -2147483643, -9223372036854775803, -32763, -123, -3.39E+38, -1.69e+308, True, 'binary_tb1', 'nchar_tb1', now() )"
|
f"insert into sub1_bound values ( now(), -2147483643, -9223372036854775803, -32763, -123, -3.39E+38, -1.69e+308, True, 'binary_tb1', 'nchar_tb1', now() )"
|
||||||
)
|
)
|
||||||
|
|
||||||
tdSql.error(
|
tdSql.error(
|
||||||
f"insert into sub1_bound values ( now()+1s, 2147483648, 9223372036854775808, 32768, 128, 3.40E+38, 1.7e+308, True, 'binary_tb1', 'nchar_tb1', now() )"
|
f"insert into sub1_bound values ( now()+1s, 2147483648, 9223372036854775808, 32768, 128, 3.40E+38, 1.7e+308, True, 'binary_tb1', 'nchar_tb1', now() )"
|
||||||
)
|
)
|
||||||
self.check_result_auto( "select c1, c2, c3 , c4, c5 ,c6 from sub1_bound ", "select round(c1), round(c2) ,round(c3), round(c4), round(c5) ,round(c6) from sub1_bound")
|
self.check_result_auto( "select c1, c2, c3 , c4, c5 ,c6 from sub1_bound ", "select round(c1), round(c2) ,round(c3), round(c4), round(c5) ,round(c6) from sub1_bound")
|
||||||
self.check_result_auto( "select c1, c2, c3 , c3, c2 ,c1 from sub1_bound ", "select round(c1), round(c2) ,round(c3), round(c3), round(c2) ,round(c1) from sub1_bound")
|
self.check_result_auto( "select c1, c2, c3 , c3, c2 ,c1 from sub1_bound ", "select round(c1), round(c2) ,round(c3), round(c3), round(c2) ,round(c1) from sub1_bound")
|
||||||
self.check_result_auto("select round(round(round(round(round(round(round(round(round(round(c1)))))))))) nest_col_func from sub1_bound;" , "select round(c1) from sub1_bound" )
|
self.check_result_auto("select round(round(round(round(round(round(round(round(round(round(c1)))))))))) nest_col_func from sub1_bound;" , "select round(c1) from sub1_bound" )
|
||||||
|
|
||||||
# check basic elem for table per row
|
# check basic elem for table per row
|
||||||
tdSql.query("select round(c1+0.2) ,round(c2) , round(c3+0.3) , round(c4-0.3), round(c5/2), round(c6/2) from sub1_bound ")
|
tdSql.query("select round(c1+0.2) ,round(c2) , round(c3+0.3) , round(c4-0.3), round(c5/2), round(c6/2) from sub1_bound ")
|
||||||
tdSql.checkData(0, 0, 2147483647.000000000)
|
tdSql.checkData(0, 0, 2147483647.000000000)
|
||||||
|
@ -444,32 +444,32 @@ class TDTestCase:
|
||||||
self.check_result_auto( " select t1,c5 from stb1 where c1 > 0 order by tbname " , "select round(t1) ,round(c5) from stb1 where c1 > 0 order by tbname" )
|
self.check_result_auto( " select t1,c5 from stb1 where c1 > 0 order by tbname " , "select round(t1) ,round(c5) from stb1 where c1 > 0 order by tbname" )
|
||||||
self.check_result_auto( " select t1,c5 from stb1 where c1 > 0 order by tbname " , "select round(t1) , round(c5) from stb1 where c1 > 0 order by tbname" )
|
self.check_result_auto( " select t1,c5 from stb1 where c1 > 0 order by tbname " , "select round(t1) , round(c5) from stb1 where c1 > 0 order by tbname" )
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
def run(self): # sourcery skip: extract-duplicate-method, remove-redundant-fstring
|
def run(self): # sourcery skip: extract-duplicate-method, remove-redundant-fstring
|
||||||
tdSql.prepare()
|
tdSql.prepare()
|
||||||
|
|
||||||
tdLog.printNoPrefix("==========step1:create table ==============")
|
tdLog.printNoPrefix("==========step1:create table ==============")
|
||||||
|
|
||||||
self.prepare_datas()
|
self.prepare_datas()
|
||||||
|
|
||||||
tdLog.printNoPrefix("==========step2:test errors ==============")
|
tdLog.printNoPrefix("==========step2:test errors ==============")
|
||||||
|
|
||||||
self.test_errors()
|
self.test_errors()
|
||||||
|
|
||||||
tdLog.printNoPrefix("==========step3:support types ============")
|
tdLog.printNoPrefix("==========step3:support types ============")
|
||||||
|
|
||||||
self.support_types()
|
self.support_types()
|
||||||
|
|
||||||
tdLog.printNoPrefix("==========step4: round basic query ============")
|
tdLog.printNoPrefix("==========step4: round basic query ============")
|
||||||
|
|
||||||
self.basic_round_function()
|
self.basic_round_function()
|
||||||
|
|
||||||
tdLog.printNoPrefix("==========step5: round boundary query ============")
|
tdLog.printNoPrefix("==========step5: round boundary query ============")
|
||||||
|
|
||||||
self.check_boundary_values()
|
self.check_boundary_values()
|
||||||
|
|
||||||
tdLog.printNoPrefix("==========step6: round filter query ============")
|
tdLog.printNoPrefix("==========step6: round filter query ============")
|
||||||
|
|
||||||
self.abs_func_filter()
|
self.abs_func_filter()
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue