Merge pull request #23023 from taosdata/test/main/TD-25218

test: check error info of failed sql
This commit is contained in:
Alex Duan 2023-09-25 13:54:17 +08:00 committed by GitHub
commit 228b9d2128
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 7 deletions

View File

@ -78,7 +78,7 @@ class TDSql:
self.cursor.execute(s)
time.sleep(2)
def error(self, sql, expectedErrno = None):
def error(self, sql, expectedErrno = None, expectErrInfo = None):
caller = inspect.getframeinfo(inspect.stack()[1][0])
expectErrNotOccured = True
@ -87,12 +87,9 @@ class TDSql:
except BaseException as e:
expectErrNotOccured = False
self.errno = e.errno
self.error_info = repr(e)
# print(error_info)
# self.error_info = error_info[error_info.index('(')+1:-1].split(",")[0].replace("'","")
error_info = repr(e)
self.error_info = error_info[error_info.index('(')+1:-1].split(",")[0].replace("'","")
# self.error_info = (','.join(error_info.split(",")[:-1]).split("(",1)[1:][0]).replace("'","")
# print("!!!!!!!!!!!!!!",self.error_info)
if expectErrNotOccured:
tdLog.exit("%s(%d) failed: sql:%s, expect error not occured" % (caller.filename, caller.lineno, sql))
else:
@ -108,8 +105,15 @@ class TDSql:
else:
tdLog.info("sql:%s, expect error occured" % (sql))
return self.error_info
if expectErrInfo != None:
if expectErrInfo == self.error_info:
tdLog.info("sql:%s, expected expectErrInfo %s occured" % (sql, expectErrInfo))
else:
tdLog.exit("%s(%d) failed: sql:%s, expectErrInfo %s occured, but not expected errno %s" % (caller.filename, caller.lineno, sql, self.error_info, expectErrInfo))
else:
tdLog.info("sql:%s, expect error occured" % (sql))
return self.error_info
def query(self, sql, row_tag=None, queryTimes=10, count_expected_res=None):
self.sql = sql

View File

@ -180,6 +180,13 @@ class TDTestCase:
tdSql.error(f'show indexes from db.ctb1 from db')
tdSql.error(f'show indexes from `db`.`ctb1` from db')
# check error information
tdSql.error(f'create index idx1 on db2.stb (t1);', expectErrInfo='Database not exist')
tdSql.error(f'use db2;', expectErrInfo='Database not exist')
tdSql.error(f' alter stable db2.stb add column c2 int;', expectErrInfo='Database not exist')
def stop(self):
tdSql.close()
tdLog.success("%s successfully executed" % __file__)