From 8fb87d7faf65425253c5467a208dd54673c37f17 Mon Sep 17 00:00:00 2001 From: liuyq-617 Date: Tue, 2 Feb 2021 18:19:09 +0800 Subject: [PATCH 1/3] [TD-2555]add test case for stddev --- .../functions/function_stddev_td2555.py | 100 ++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 tests/pytest/functions/function_stddev_td2555.py diff --git a/tests/pytest/functions/function_stddev_td2555.py b/tests/pytest/functions/function_stddev_td2555.py new file mode 100644 index 0000000000..5680493a05 --- /dev/null +++ b/tests/pytest/functions/function_stddev_td2555.py @@ -0,0 +1,100 @@ +################################################################### +# 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 = 100 + self.ts = 1537146000000 + + def getData(self): + for i in range(tdSql.queryRows): + for j in range(6): + exec('self.clist{}.append(tdSql.queryResult[i][j+1])'.format(j+1)) + + def run(self): + tdSql.prepare() + + intData = [] + floatData = [] + + 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)) tags(id int,gbid binary(20),loc nchar(20))''') + tdSql.execute("create table test1 using test tags(1,'beijing','北京')") + tdSql.execute("create table test2 using test tags(2,'shanghai','上海')") + tdSql.execute("create table test3 using test tags(3,'shenzhen','深圳')") + for j in range(3): + for i in range(self.rowNum): + tdSql.execute("insert into test%d values(now-%dh, %d, %d, %d, %d, %f, %f, %d, 'taosdata%d', '涛思数据%d')" + % (j,i, i + 1, i + 1, i + 1, i + 1, i + 0.1, i + 0.1, i % 2, i + 1, i + 1)) + intData.append(i + 1) + floatData.append(i + 0.1) + + # stddev verifacation + tdSql.error("select stddev(ts) from test") + tdSql.error("select stddev(col7) from test") + tdSql.error("select stddev(col8) from test") + tdSql.error("select stddev(col9) from test") + + tdSql.query("select stddev(col1) from test") + tdSql.checkData(0, 0, np.std(intData)) + + tdSql.query("select stddev(col2) from test") + tdSql.checkData(0, 0, np.std(intData)) + + tdSql.query("select stddev(col3) from test") + tdSql.checkData(0, 0, np.std(intData)) + + tdSql.query("select stddev(col4) from test") + tdSql.checkData(0, 0, np.std(intData)) + + tdSql.query("select stddev(col5) from test") + tdSql.checkData(0, 0, np.std(floatData)) + + tdSql.query("select stddev(col6) from test") + tdSql.checkData(0, 0, np.std(floatData)) + + con_list = [' id = 1 and ts >=now - 1d and ts =now - 1d and ts =now - 1d and ts =now - 1d and ts =now - 1d and ts Date: Tue, 2 Feb 2021 18:25:18 +0800 Subject: [PATCH 2/3] change --- .../functions/function_stddev_td2555.py | 36 +++++-------------- 1 file changed, 8 insertions(+), 28 deletions(-) diff --git a/tests/pytest/functions/function_stddev_td2555.py b/tests/pytest/functions/function_stddev_td2555.py index 5680493a05..dd7ea8b438 100644 --- a/tests/pytest/functions/function_stddev_td2555.py +++ b/tests/pytest/functions/function_stddev_td2555.py @@ -26,6 +26,12 @@ class TDTestCase: self.rowNum = 100 self.ts = 1537146000000 + self.clist1 = [] + self.clist2 = [] + self.clist3 = [] + self.clist4 = [] + self.clist5 = [] + self.clist6 = [] def getData(self): for i in range(tdSql.queryRows): @@ -35,9 +41,6 @@ class TDTestCase: def run(self): tdSql.prepare() - intData = [] - floatData = [] - 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)) tags(id int,gbid binary(20),loc nchar(20))''') tdSql.execute("create table test1 using test tags(1,'beijing','北京')") @@ -46,9 +49,7 @@ class TDTestCase: for j in range(3): for i in range(self.rowNum): tdSql.execute("insert into test%d values(now-%dh, %d, %d, %d, %d, %f, %f, %d, 'taosdata%d', '涛思数据%d')" - % (j,i, i + 1, i + 1, i + 1, i + 1, i + 0.1, i + 0.1, i % 2, i + 1, i + 1)) - intData.append(i + 1) - floatData.append(i + 0.1) + % (j,i, i + 1, i + 1, i + 1, i + 1, i + 0.1, i + 0.1, i % 2, i + 1, i + 1)) # stddev verifacation tdSql.error("select stddev(ts) from test") @@ -56,24 +57,6 @@ class TDTestCase: tdSql.error("select stddev(col8) from test") tdSql.error("select stddev(col9) from test") - tdSql.query("select stddev(col1) from test") - tdSql.checkData(0, 0, np.std(intData)) - - tdSql.query("select stddev(col2) from test") - tdSql.checkData(0, 0, np.std(intData)) - - tdSql.query("select stddev(col3) from test") - tdSql.checkData(0, 0, np.std(intData)) - - tdSql.query("select stddev(col4) from test") - tdSql.checkData(0, 0, np.std(intData)) - - tdSql.query("select stddev(col5) from test") - tdSql.checkData(0, 0, np.std(floatData)) - - tdSql.query("select stddev(col6) from test") - tdSql.checkData(0, 0, np.std(floatData)) - con_list = [' id = 1 and ts >=now - 1d and ts =now - 1d and ts =now - 1d and ts Date: Tue, 2 Feb 2021 20:19:43 +0800 Subject: [PATCH 3/3] update --- .../functions/function_stddev_td2555.py | 35 ++++++++++++------- 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/tests/pytest/functions/function_stddev_td2555.py b/tests/pytest/functions/function_stddev_td2555.py index dd7ea8b438..a4da7d5e29 100644 --- a/tests/pytest/functions/function_stddev_td2555.py +++ b/tests/pytest/functions/function_stddev_td2555.py @@ -42,14 +42,15 @@ class TDTestCase: 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)) tags(id int,gbid binary(20),loc nchar(20))''') + col7 bool, col8 binary(20), col9 nchar(20)) tags(cid int,gbid binary(20),loc nchar(20))''') tdSql.execute("create table test1 using test tags(1,'beijing','北京')") - tdSql.execute("create table test2 using test tags(2,'shanghai','上海')") - tdSql.execute("create table test3 using test tags(3,'shenzhen','深圳')") - for j in range(3): + tdSql.execute("create table test2 using test tags(2,'shanghai','深圳')") + tdSql.execute("create table test3 using test tags(2,'shenzhen','深圳')") + tdSql.execute("create table test4 using test tags(1,'shanghai','上海')") + for j in range(4): for i in range(self.rowNum): tdSql.execute("insert into test%d values(now-%dh, %d, %d, %d, %d, %f, %f, %d, 'taosdata%d', '涛思数据%d')" - % (j,i, i + 1, i + 1, i + 1, i + 1, i + 0.1, i + 0.1, i % 2, i + 1, i + 1)) + % (j+1,i, i + 1, i + 1, i + 1, i + 1, i + i * 0.1, i * 1.5, i % 2, i + 1, i + 1)) # stddev verifacation tdSql.error("select stddev(ts) from test") @@ -57,12 +58,10 @@ class TDTestCase: tdSql.error("select stddev(col8) from test") tdSql.error("select stddev(col9) from test") - con_list = [' id = 1 and ts >=now - 1d and ts =now - 1d and ts =now - 1d and ts =now - 1d and ts =now - 1d and ts =now - 1d and ts =now - 1d and ts =now - 1d and ts =now - 1d and ts =now - 1d and ts