fix: time operator test

This commit is contained in:
factosea 2024-12-16 08:59:43 +08:00
parent a65825b88d
commit a18fefc968
4 changed files with 42 additions and 3 deletions

View File

@ -41,8 +41,9 @@ class TDTestCase:
]
self.time_unit = ['b','u','a','s','m','h','d','w']
self.symbol = ['+','-','*','/']
self.error_values = [1.5,'abc','"abc"','!@','today()']
self.error_values = ['abc','"abc"','!@','today()']
self.db_percision = ['ms','us','ns']
self.test_values = [1.5, 10, 9223372036854775807, -9223372036854775808]
def tbtype_check(self,tb_type):
if tb_type == 'normal table' or tb_type == 'child table':
tdSql.checkRows(len(self.values_list))
@ -67,6 +68,9 @@ class TDTestCase:
for symbol in self.symbol:
for param in self.error_values:
tdSql.error(f'select now() {symbol}{param} from {tbname}')
for param in self.test_values:
tdSql.query(f'select now() {symbol}{param} from {tbname}')
tdSql.query(f'select 1 {symbol}{param} from {tbname}')
tdSql.query(f'select now(){symbol}null from {tbname}')
self.tbtype_check(tb_type)
for i in range(len(self.values_list)):

View File

@ -18,7 +18,7 @@ class TDTestCase:
self.today_ts = datetime.datetime.strptime(datetime.datetime.now().strftime("%Y-%m-%d"), "%Y-%m-%d").timestamp()
self.today_ts_ns = 0
self.time_unit = ['b','u','a','s','m','h','d','w']
self.error_param = ['1.5','abc','!@#','"abc"','today()']
self.error_param = ['abc','!@#','"abc"','today()']
self.arithmetic_operators = ['+','-','*','/']
self.relational_operator = ['<','<=','=','>=','>']
# prepare data

View File

@ -288,6 +288,41 @@ class TDTestCase:
tdSql.checkData(0, 2, 1641024000000)
tdSql.checkData(0, 3, 1641024000000)
tdSql.checkData(0, 4, 1641024000002)
tdSql.query(f"SELECT sum(ts + c1), sum(ts+c2) from t2")
tdSql.checkData(0, 0, 1641024000002)
tdSql.checkData(0, 1, 1641024000002)
tdSql.query(f"SELECT sum(ts * c1), sum(ts*c2) from t2")
tdSql.checkData(0, 0, 1641024000001)
tdSql.checkData(0, 1, 1641024000001)
tdSql.query(f"SELECT sum(ts / c1), sum(ts/c2) from t2")
tdSql.checkData(0, 0, 1641024000001)
tdSql.checkData(0, 1, 1641024000001)
tdSql.execute(f"INSERT INTO {self.dbname}.t2(ts, c1, c2) VALUES (1641024000002, 2.0, 2.0);")
tdSql.query(f"SELECT sum(ts + c1), sum(ts+c2) from t2")
tdSql.checkData(0, 0, 3282048000006)
tdSql.checkData(0, 1, 3282048000006)
tdSql.query(f"SELECT sum(ts - c1), sum(ts-c2) from t2")
tdSql.checkData(0, 0, 3282048000000)
tdSql.checkData(0, 1, 3282048000000)
tdSql.query(f"SELECT sum(ts * c1), sum(ts*c2) from t2")
tdSql.checkData(0, 0, 4923072000005)
tdSql.checkData(0, 1, 4923072000005)
tdSql.query(f"SELECT ts / c1, ts/c2 from t2 order by ts")
tdSql.checkData(0, 0, 1641024000001)
tdSql.checkData(0, 1, 1641024000001)
tdSql.checkData(1, 0, 820512000001)
tdSql.checkData(1, 1, 820512000001)
tdSql.query(f"SELECT sum(ts / c1), sum(ts/c2) from t2")
tdSql.checkData(0, 0, 2461536000002)
tdSql.checkData(0, 1, 2461536000002)
# data overflow
tdSql.query(f"SELECT ts + 9223372036854775807 from t2 order by ts")
tdSql.query(f"SELECT ts - 9223372036854775808 from t2 order by ts")
tdSql.query(f"SELECT ts + 8223372036854775807 from t2 order by ts")
tdSql.query(f"SELECT ts - 8223372036854775808 from t2 order by ts")
def run(self):
dbname = "db"

View File

@ -78,7 +78,7 @@ class TDTestCase:
)
# sqls.extend( f"select sum( {un_num_col} + {un_num_col_2} ) from {tbanme} " for un_num_col_2 in UN_NUM_COL )
sqls.extend( f"select sum( {num_col} + {ts_col} ) from {DBNAME}.{tbanme} " for num_col in NUM_COL for ts_col in TS_TYPE_COL)
#sqls.extend( f"select sum( {num_col} + {ts_col} ) from {DBNAME}.{tbanme} " for num_col in NUM_COL for ts_col in TS_TYPE_COL)
sqls.extend(
(
f"select sum() from {DBNAME}.{tbanme} ",