diff --git a/tests/pytest/fulltest.sh b/tests/pytest/fulltest.sh index 32551042a69f63a5fbf9eb84e26a1c4a8c6ce4b7..9399064096db05a0ad528e6ff97b17b7f7f8696e 100755 --- a/tests/pytest/fulltest.sh +++ b/tests/pytest/fulltest.sh @@ -403,7 +403,7 @@ python3 ./test.py -f query/queryDiffColsOr.py python3 ./test.py -f client/nettest.py python3 ./test.py -f query/queryRegex.py - +python3 ./test.py -f tools/taosdemoTestdatatype.py #======================p4-end=============== diff --git a/tests/pytest/tools/taosdemoTestdatatype.py b/tests/pytest/tools/taosdemoTestdatatype.py new file mode 100644 index 0000000000000000000000000000000000000000..e32d895571da7d2a101dc32201ebba4754ec4740 --- /dev/null +++ b/tests/pytest/tools/taosdemoTestdatatype.py @@ -0,0 +1,94 @@ +################################################################### +# 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 os +from util.log import * +from util.cases import * +from util.sql import * +from util.dnodes import * + +class TDTestCase: + def init(self, conn, logSql): + tdLog.debug("start to execute %s" % __file__) + tdSql.init(conn.cursor(), logSql) + + self.numberOfTables = 10 + self.numberOfRecords = 10 + + def getBuildPath(self): + selfPath = os.path.dirname(os.path.realpath(__file__)) + + if ("community" in selfPath): + projPath = selfPath[:selfPath.find("community")] + else: + projPath = selfPath[:selfPath.find("tests")] + + for root, dirs, files in os.walk(projPath): + if ("taosd" in files): + rootRealPath = os.path.dirname(os.path.realpath(root)) + if ("packaging" not in rootRealPath): + buildPath = root[:len(root) - len("/build/bin")] + break + return buildPath + + def run(self): + buildPath = self.getBuildPath() + if (buildPath == ""): + tdLog.exit("taosdemo not found!") + else: + tdLog.info("taosdemo found in %s" % buildPath) + binPath = buildPath + "/build/bin/" + + os.system("%staosdemo -d test002 -y -t %d -n %d -b INT,nchar\\(8\\),binary\\(16\\),binary,nchar -w 8" % + (binPath, self.numberOfTables, self.numberOfRecords)) + + tdSql.execute('use test002') + tdSql.query("select count(*) from meters") + tdSql.checkData(0, 0, self.numberOfTables * self.numberOfRecords) + + tdSql.query("select * from meters") + tdSql.checkRows(self.numberOfTables * self.numberOfRecords) + + tdLog.info('insert into d1 values(now,100,"abcd1234","abcdefgh12345678","abcdefgh","abcdefgh")') + tdSql.execute('insert into d1 values(now,100,"abcd1234","abcdefgh12345678","abcdefgh","abcdefgh")') + tdSql.query("select * from meters") + tdSql.checkRows(101) + + tdSql.error('insert into d1 values(now,100,"abcd","abcd"') + tdSql.error('insert into d1 values(now,100,100,100)') + + os.system("%staosdemo -d test002 -y -t %d -n %d --data-type INT,nchar\\(8\\),binary\\(16\\),binary,nchar -w 8" % + (binPath, self.numberOfTables, self.numberOfRecords)) + + tdSql.execute('use test002') + tdSql.query("select count(*) from meters") + tdSql.checkData(0, 0, self.numberOfTables * self.numberOfRecords) + + + os.system("%staosdemo -d test002 -y -t %d -n %d -bINT,nchar\\(8\\),binary\\(16\\),binary,nchar -w 8" % + (binPath, self.numberOfTables, self.numberOfRecords)) + + tdSql.execute('use test002') + tdSql.query("select count(*) from meters") + tdSql.checkData(0, 0, self.numberOfTables * self.numberOfRecords) + + + + def stop(self): + tdSql.close() + tdLog.success("%s successfully executed" % __file__) + + +tdCases.addWindows(__file__, TDTestCase()) +tdCases.addLinux(__file__, TDTestCase()) \ No newline at end of file