summaryrefslogtreecommitdiffstats
path: root/vstf/vstf/controller/database/dbinterface.py
diff options
context:
space:
mode:
Diffstat (limited to 'vstf/vstf/controller/database/dbinterface.py')
-rwxr-xr-xvstf/vstf/controller/database/dbinterface.py398
1 files changed, 213 insertions, 185 deletions
diff --git a/vstf/vstf/controller/database/dbinterface.py b/vstf/vstf/controller/database/dbinterface.py
index ae34c861..d0996c30 100755
--- a/vstf/vstf/controller/database/dbinterface.py
+++ b/vstf/vstf/controller/database/dbinterface.py
@@ -1,8 +1,12 @@
-#!/usr/bin/python
-# -*- coding: utf8 -*-
-# author: wly
-# date: 2015-07-29
-# see license for license details
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
__version__ = ''' '''
import os
import logging
@@ -10,7 +14,8 @@ import logging
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy import and_
-from vstf.controller.database.tables import *
+import vstf.controller.database.tables as table
+from vstf.controller.database import constants as const
LOG = logging.getLogger(__name__)
@@ -38,7 +43,7 @@ class DbManage(object):
except Exception as e:
raise e
- # if the db is new , cleate all tables and init static tables
+ # if the db is new , create all tables and init static tables
if not db_exists:
self.create_tables()
self.init_tables()
@@ -47,11 +52,11 @@ class DbManage(object):
self._engine.close_all()
def create_tables(self):
- Base.metadata.create_all(self._engine)
+ table.Base.metadata.create_all(self._engine)
self._session.commit()
def drop_tables(self):
- Base.metadata.drop_all(self._engine)
+ table.Base.metadata.drop_all(self._engine)
self._session.commit()
def init_tables(self):
@@ -62,9 +67,9 @@ class DbManage(object):
def init_scenario_table(self):
items = []
for values in const.SCENARIO_INFO_LIST:
- item = TblScenarioInfo(ScenarioName=values[0],
- FigurePath=values[1],
- Description=values[2])
+ item = table.TblScenarioInfo(ScenarioName=values[0],
+ FigurePath=values[1],
+ Description=values[2])
items.append(item)
self._session.add_all(items)
@@ -72,53 +77,53 @@ class DbManage(object):
def init_casetable(self):
items = []
for values in const.CASE_INFO_LIST:
- item = TblCaseInfo(CaseTag=values[0],
- ScenarioName=values[1],
- CaseName=values[2],
- FigurePath=values[3],
- Description=values[4],
- Direction=values[5],
- Directiontag=values[6],
- Configure=values[7])
+ item = table.TblCaseInfo(CaseTag=values[0],
+ ScenarioName=values[1],
+ CaseName=values[2],
+ FigurePath=values[3],
+ Description=values[4],
+ Direction=values[5],
+ Directiontag=values[6],
+ Configure=values[7])
items.append(item)
self._session.add_all(items)
def query_caseinfo(self):
- query = self._session.query(TblCaseInfo.ScenarioName,
- TblCaseInfo.CaseTag,
- TblCaseInfo.CaseName,
- TblCaseInfo.Direction,
- TblCaseInfo.Configure)
+ query = self._session.query(table.TblCaseInfo.ScenarioName,
+ table.TblCaseInfo.CaseTag,
+ table.TblCaseInfo.CaseName,
+ table.TblCaseInfo.Direction,
+ table.TblCaseInfo.Configure)
return query.all()
def query_case(self, casetag):
- query = self._session.query(TblCaseInfo.ScenarioName,
- TblCaseInfo.Directiontag)
+ query = self._session.query(table.TblCaseInfo.ScenarioName,
+ table.TblCaseInfo.Directiontag)
return query.first()
# Single TblTaskList API
def get_last_taskid(self):
- query = self._session.query(TblTaskList.TaskID)
+ query = self._session.query(table.TblTaskList.TaskID)
if query:
return query.all()[-1][0]
else:
return 0
def query_tasklist(self):
- query = self._session.query(TblTaskList)
+ query = self._session.query(table.TblTaskList)
return query.all()
def query_taskdate(self, taskid):
- query = self._session.query(TblTaskList.Date).filter(and_(
- TblTaskList.TaskID == taskid))
+ query = self._session.query(table.TblTaskList.Date).filter(and_(
+ table.TblTaskList.TaskID == taskid))
result = ""
if query:
result += query.first()[0]
return result
def query_taskname(self, taskid):
- query = self._session.query(TblTaskList.TaskName).filter(and_(
- TblTaskList.TaskID == taskid))
+ query = self._session.query(table.TblTaskList.TaskName).filter(and_(
+ table.TblTaskList.TaskID == taskid))
result = ""
if query:
result += query.first()[0]
@@ -126,7 +131,7 @@ class DbManage(object):
def create_task(self, name, date, desc):
try:
- item = TblTaskList(name, date, desc)
+ item = table.TblTaskList(name, date, desc)
self._session.add(item)
self._session.commit()
except Exception:
@@ -137,32 +142,33 @@ class DbManage(object):
# Single TblHostInfo API
def add_host_2task(self, taskid, name, machine, cpu, men, nic, os):
"""All var except task must be string"""
- item = TblHostInfo(taskid, name, machine, cpu, men, nic, os)
+ item = table.TblHostInfo(taskid, name, machine, cpu, men, nic, os)
self._session.add(item)
self._session.commit()
def query_task_host_list(self, taskid):
- query = self._session.query(TblHostInfo.HostName,
- TblHostInfo.Server,
- TblHostInfo.CPU,
- TblHostInfo.MEM,
- TblHostInfo.NIC,
- TblHostInfo.OS).filter(
- TblHostInfo.TaskID == taskid)
+ query = self._session.query(table.TblHostInfo.HostName,
+ table.TblHostInfo.Server,
+ table.TblHostInfo.CPU,
+ table.TblHostInfo.MEM,
+ table.TblHostInfo.NIC,
+ table.TblHostInfo.OS).filter(
+ table.TblHostInfo.TaskID == taskid)
return query.all()
# Single TblTestList API
def get_last_testid(self):
- query = self._session.query(TblTestList.TestID)
+ query = self._session.query(table.TblTestList.TestID)
+ print query.all()
if query:
return query.all()[-1][0]
else:
return 0
- def add_test_2task(self, task, case, protocol, provider, typ, tool):
+ def add_test_2task(self, task, case, protocol, typ, switch, provider, tool):
try:
- item = TblTestList(task, case, protocol, provider, typ, tool)
+ item = table.TblTestList(task, case, protocol, typ, switch, provider, tool)
self._session.add(item)
self._session.commit()
except Exception:
@@ -171,12 +177,12 @@ class DbManage(object):
return self.get_last_testid()
def get_test_type(self, testid):
- query = self._session.query(TblTestList.Type).filter(
- TblTestList.TestID == testid)
+ query = self._session.query(table.TblTestList.Type).filter(
+ table.TblTestList.TestID == testid)
return query.first()
def add_extent_2task(self, task, name, content, description):
- item = TblEXTInfo(task, name, content, description)
+ item = table.TblEXTInfo(task, name, content, description)
self._session.add(item)
self._session.commit()
@@ -199,9 +205,9 @@ class DbManage(object):
"""
ptype = self.get_test_type(testid)
instance_map = {
- 'throughput': TblThroughput,
- 'frameloss': TblFrameloss,
- 'latency': TblLatency
+ 'throughput': table.TblThroughput,
+ 'frameloss': table.TblFrameloss,
+ 'latency': table.TblLatency
}
if ptype and ptype[0] not in instance_map:
@@ -228,37 +234,37 @@ class DbManage(object):
def query_tasks(self):
result = []
- ret = self._session.query(TblTaskList)
+ ret = self._session.query(table.TblTaskList)
if ret:
for tmp in ret.all():
result.append([tmp.TaskID, tmp.TaskName, tmp.Date, tmp.EXTInfo])
return result
def query_all_task_id(self):
- query = self._session.query(TblTaskList.TaskID)
+ query = self._session.query(table.TblTaskList.TaskID)
if query:
return query.all()
else:
return []
def get_caseinfo(self):
- query = self._session.query(TblCaseInfo.ScenarioName,
- TblCaseInfo.CaseTag,
- TblCaseInfo.CaseName,
- TblCaseInfo.Direction,
- TblCaseInfo.Configure)
+ query = self._session.query(table.TblCaseInfo.ScenarioName,
+ table.TblCaseInfo.CaseTag,
+ table.TblCaseInfo.CaseName,
+ table.TblCaseInfo.Direction,
+ table.TblCaseInfo.Configure)
return query.all()
def query_scenario(self, casetag):
- query = self._session.query(TblCaseInfo.ScenarioName).filter(TblCaseInfo.CaseTag == casetag)
+ query = self._session.query(table.TblCaseInfo.ScenarioName).filter(table.TblCaseInfo.CaseTag == casetag)
ret = ""
if query and query.first():
ret = query.first()[0]
return ret
def query_casefigure(self, casetag, tools):
- query = self._session.query(TblCaseInfo.FigurePath).filter(and_(
- TblCaseInfo.CaseTag == casetag))
+ query = self._session.query(table.TblCaseInfo.FigurePath).filter(and_(
+ table.TblCaseInfo.CaseTag == casetag))
result = ""
if query:
result += query.first()[0]
@@ -267,167 +273,183 @@ class DbManage(object):
return result
def query_casename(self, casetag):
- query = self._session.query(TblCaseInfo.CaseName).filter(and_(
- TblCaseInfo.CaseTag == casetag))
+ query = self._session.query(table.TblCaseInfo.CaseName).filter(and_(
+ table.TblCaseInfo.CaseTag == casetag))
result = ""
if query:
result += query.first()[0]
return result
- # Single TblScenarioInfo API
+ # Single TblTestList API
def query_caselist(self, taskid, scenario):
- query = self._session.query(TblTestList.CaseTag).filter(and_(
- TblTestList.CaseTag == TblCaseInfo.CaseTag,
- TblCaseInfo.ScenarioName == scenario,
- TblTestList.TaskID == taskid)).group_by(TblCaseInfo.CaseTag)
+ query = self._session.query(table.TblTestList.CaseTag).filter(and_(
+ table.TblTestList.CaseTag == table.TblCaseInfo.CaseTag,
+ table.TblCaseInfo.ScenarioName == scenario,
+ table.TblTestList.TaskID == taskid)).group_by(table.TblCaseInfo.CaseTag)
+ return query.all()
+
+ def query_testlist(self, taskid, scenario):
+ """
+
+ :rtype : object
+ """
+ query = self._session.query(table.TblTestList).filter(and_(
+ table.TblTestList.CaseTag == table.TblCaseInfo.CaseTag,
+ table.TblCaseInfo.ScenarioName == scenario,
+ table.TblTestList.TaskID == taskid))
return query.all()
def query_casetool(self, taskid, casetag, provider, ptype):
- query = self._session.query(TblTestList.Tools).filter(and_(
- TblTestList.TaskID == taskid,
- TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider,
- TblTestList.Type == ptype))
+ query = self._session.query(table.TblTestList.Tools).filter(and_(
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider,
+ table.TblTestList.Type == ptype))
return query.all()
def query_casetools(self, taskid, casetag):
- query = self._session.query(TblTestList.Tools).filter(and_(
- TblTestList.CaseTag == casetag,
- TblTestList.TaskID == taskid)).group_by(TblTestList.Tools)
+ query = self._session.query(table.TblTestList.Tools).filter(and_(
+ table.TblTestList.CaseTag == casetag,
+ table.TblTestList.TaskID == taskid)).group_by(table.TblTestList.Tools)
return query.all()
def query_scenariolist(self, taskid):
- query = self._session.query(TblCaseInfo.ScenarioName).filter(and_(
- TblTestList.CaseTag == TblCaseInfo.CaseTag,
- TblTestList.TaskID == taskid)).group_by(TblCaseInfo.ScenarioName)
+ query = self._session.query(table.TblCaseInfo.ScenarioName).filter(and_(
+ table.TblTestList.CaseTag == table.TblCaseInfo.CaseTag,
+ table.TblTestList.TaskID == taskid)).group_by(table.TblCaseInfo.ScenarioName)
return query.all()
def query_throughput_load(self, taskid, casetag, provider):
ptype = 'throughput'
- query = self._session.query(TblThroughput.AvgFrameSize, TblThroughput.OfferedLoad).filter(and_(
- TblTestList.TaskID == taskid,
- TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider, TblTestList.Type == ptype,
- TblTestList.TestID == TblThroughput.TestID))
+ query = self._session.query(table.TblThroughput.AvgFrameSize, table.TblThroughput.OfferedLoad).filter(and_(
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider, table.TblTestList.Type == ptype,
+ table.TblTestList.TestID == table.TblThroughput.TestID))
return query.all()
def query_throughput_bandwidth(self, taskid, casetag, provider):
ptype = 'throughput'
- query = self._session.query(TblThroughput.AvgFrameSize, TblThroughput.Bandwidth).filter(and_(
- TblTestList.TaskID == taskid,
- TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider, TblTestList.Type == ptype,
- TblTestList.TestID == TblThroughput.TestID))
+ query = self._session.query(table.TblThroughput.AvgFrameSize, table.TblThroughput.Bandwidth).filter(and_(
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider, table.TblTestList.Type == ptype,
+ table.TblTestList.TestID == table.TblThroughput.TestID))
return query.all()
def query_throughput_table(self, taskid, casetag, provider):
ptype = 'throughput'
- query = self._session.query(TblThroughput.AvgFrameSize,
- TblThroughput.Bandwidth,
- TblThroughput.OfferedLoad,
- TblThroughput.CPU,
- TblThroughput.MppspGhz,
- TblThroughput.MinimumLatency,
- TblThroughput.MaximumLatency,
- TblThroughput.AverageLatency,
+ query = self._session.query(table.TblThroughput.AvgFrameSize,
+ table.TblThroughput.Bandwidth,
+ table.TblThroughput.OfferedLoad,
+ table.TblThroughput.CPU,
+ table.TblThroughput.MppspGhz,
+ table.TblThroughput.MinimumLatency,
+ table.TblThroughput.MaximumLatency,
+ table.TblThroughput.AverageLatency,
).filter(and_(
- TblTestList.TaskID == taskid,
- TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider, TblTestList.Type == ptype,
- TblTestList.TestID == TblThroughput.TestID))
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider, table.TblTestList.Type == ptype,
+ table.TblTestList.TestID == table.TblThroughput.TestID))
return query.all()
def query_throughput_simpletable(self, taskid, casetag, provider):
ptype = 'throughput'
- query = self._session.query(TblThroughput.AvgFrameSize,
- TblThroughput.Bandwidth,
- TblThroughput.OfferedLoad,
- TblThroughput.CPU,
- TblThroughput.MppspGhz,
- TblThroughput.AverageLatency,
+ query = self._session.query(table.TblThroughput.AvgFrameSize,
+ table.TblThroughput.Bandwidth,
+ table.TblThroughput.OfferedLoad,
+ table.TblThroughput.CPU,
+ table.TblThroughput.MppspGhz,
+ table.TblThroughput.AverageLatency,
).filter(and_(
- TblTestList.TaskID == taskid,
- TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider, TblTestList.Type == ptype,
- TblTestList.TestID == TblThroughput.TestID))
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider, table.TblTestList.Type == ptype,
+ table.TblTestList.TestID == table.TblThroughput.TestID))
+ return query.all()
+
+ def query_testdata(self, testid, ptype):
+ obj = getattr(table, "Tbl%s" % (ptype.title()))
+ query = self._session.query(obj).filter(obj.TestID == testid)
return query.all()
def query_throughput_avg(self, taskid, casetag, provider):
ptype = 'throughput'
- query = self._session.query(TblThroughput.AvgFrameSize, TblThroughput.AverageLatency).filter(and_(
- TblTestList.TaskID == taskid,
- TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider, TblTestList.Type == ptype,
- TblTestList.TestID == TblThroughput.TestID))
+ query = self._session.query(table.TblThroughput.AvgFrameSize, table.TblThroughput.AverageLatency).filter(and_(
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider, table.TblTestList.Type == ptype,
+ table.TblTestList.TestID == table.TblThroughput.TestID))
return query.all()
def query_frameloss_bandwidth(self, taskid, casetag, provider):
ptype = 'frameloss'
- query = self._session.query(TblFrameloss.AvgFrameSize, TblFrameloss.Bandwidth).filter(and_(
- TblTestList.TaskID == taskid,
- TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider, TblTestList.Type == ptype,
- TblTestList.TestID == TblFrameloss.TestID))
+ query = self._session.query(table.TblFrameloss.AvgFrameSize, table.TblFrameloss.Bandwidth).filter(and_(
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider, table.TblTestList.Type == ptype,
+ table.TblTestList.TestID == table.TblFrameloss.TestID))
return query.all()
def query_frameloss_load(self, taskid, casetag, provider):
ptype = 'frameloss'
- query = self._session.query(TblFrameloss.AvgFrameSize, TblFrameloss.OfferedLoad).filter(and_(
- TblTestList.TaskID == taskid,
- TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider, TblTestList.Type == ptype,
- TblTestList.TestID == TblFrameloss.TestID))
+ query = self._session.query(table.TblFrameloss.AvgFrameSize, table.TblFrameloss.OfferedLoad).filter(and_(
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider, table.TblTestList.Type == ptype,
+ table.TblTestList.TestID == table.TblFrameloss.TestID))
return query.all()
def query_frameloss_table(self, taskid, casetag, provider):
ptype = 'frameloss'
- query = self._session.query(TblFrameloss.AvgFrameSize,
- TblFrameloss.Bandwidth,
- TblFrameloss.OfferedLoad,
- TblFrameloss.CPU,
- TblFrameloss.MppspGhz,
- TblFrameloss.MinimumLatency,
- TblFrameloss.MaximumLatency,
- TblFrameloss.AverageLatency,
+ query = self._session.query(table.TblFrameloss.AvgFrameSize,
+ table.TblFrameloss.Bandwidth,
+ table.TblFrameloss.OfferedLoad,
+ table.TblFrameloss.CPU,
+ table.TblFrameloss.MppspGhz,
+ table.TblFrameloss.MinimumLatency,
+ table.TblFrameloss.MaximumLatency,
+ table.TblFrameloss.AverageLatency
).filter(and_(
- TblTestList.TaskID == taskid,
- TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider, TblTestList.Type == ptype,
- TblTestList.TestID == TblFrameloss.TestID))
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider, table.TblTestList.Type == ptype,
+ table.TblTestList.TestID == table.TblFrameloss.TestID))
return query.all()
def query_frameloss_simpletable(self, taskid, casetag, provider):
ptype = 'frameloss'
- query = self._session.query(TblFrameloss.AvgFrameSize,
- TblFrameloss.Bandwidth,
- TblFrameloss.OfferedLoad,
- TblFrameloss.CPU,
- TblFrameloss.MppspGhz,
- TblFrameloss.AverageLatency,
+ query = self._session.query(table.TblFrameloss.AvgFrameSize,
+ table.TblFrameloss.Bandwidth,
+ table.TblFrameloss.OfferedLoad,
+ table.TblFrameloss.CPU,
+ table.TblFrameloss.MppspGhz,
+ table.TblFrameloss.AverageLatency
).filter(and_(
- TblTestList.TaskID == taskid,
- TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider, TblTestList.Type == ptype,
- TblTestList.TestID == TblFrameloss.TestID))
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider, table.TblTestList.Type == ptype,
+ table.TblTestList.TestID == table.TblFrameloss.TestID))
return query.all()
def query_frameloss_avg(self, taskid, casetag, provider):
ptype = 'frameloss'
- query = self._session.query(TblFrameloss.AvgFrameSize, TblFrameloss.AverageLatency).filter(and_(
- TblTestList.TaskID == taskid,
- TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider, TblTestList.Type == ptype,
- TblTestList.TestID == TblFrameloss.TestID))
+ query = self._session.query(table.TblFrameloss.AvgFrameSize, table.TblFrameloss.AverageLatency).filter(and_(
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider, table.TblTestList.Type == ptype,
+ table.TblTestList.TestID == table.TblFrameloss.TestID))
return query.all()
def query_latency_avg(self, taskid, casetag, provider):
ptype = 'latency'
- query = self._session.query(TblLatency.AvgFrameSize, TblLatency.AverageLatency).filter(and_(
- TblTestList.TaskID == taskid,
- TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider, TblTestList.Type == ptype,
- TblTestList.TestID == TblLatency.TestID))
+ query = self._session.query(table.TblLatency.AvgFrameSize, table.TblLatency.AverageLatency).filter(and_(
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider, table.TblTestList.Type == ptype,
+ table.TblTestList.TestID == table.TblLatency.TestID))
return query.all()
def query_summary_table(self, taskid, casetag, provider, ptype):
@@ -461,50 +483,51 @@ class DbManage(object):
return []
def query_throughput_provider(self, taskid, casetag, provider):
- query = self._session.query(TblThroughput).filter(and_(TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider,
- TblTestList.TaskID == taskid,
- TblTestList.TestID == TblThroughput.TestID))
+ query = self._session.query(table.TblThroughput).filter(and_(table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider,
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.TestID == table.TblThroughput.TestID))
return query.all()
def query_frameloss_provider(self, taskid, casetag, provider):
- query = self._session.query(TblFrameloss).filter(and_(TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider,
- TblTestList.TaskID == taskid,
- TblTestList.TestID == TblFrameloss.TestID))
+ query = self._session.query(table.TblFrameloss).filter(and_(table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider,
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.TestID == table.TblFrameloss.TestID))
return query.all()
def query_latency_provider(self, taskid, casetag, provider):
- query = self._session.query(TblLatency).filter(and_(TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider,
- TblTestList.TaskID == taskid,
- TblTestList.TestID == TblLatency.TestID))
+ query = self._session.query(table.TblLatency).filter(and_(table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider,
+ table.TblTestList.TaskID == taskid,
+ table.TblTestList.TestID == table.TblLatency.TestID))
return query.all()
def query_case_type_count(self, taskid, casetag, ptype):
- query = self._session.query(TblTestList).filter(and_(TblTestList.CaseTag == casetag,
- TblTestList.Type == ptype, TblTestList.TaskID == taskid))
+ query = self._session.query(table.TblTestList).filter(and_(table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Type == ptype,
+ table.TblTestList.TaskID == taskid))
return query.count()
def query_case_provider_count(self, taskid, casetag, provider):
- query = self._session.query(TblTestList).filter(and_(TblTestList.CaseTag == casetag,
- TblTestList.Provider == provider,
- TblTestList.TaskID == taskid))
+ query = self._session.query(table.TblTestList).filter(and_(table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Provider == provider,
+ table.TblTestList.TaskID == taskid))
return query.count()
def query_case_type_provider_count(self, taskid, casetag, provider, ptype):
- query = self._session.query(TblTestList).filter(and_(TblTestList.CaseTag == casetag,
- TblTestList.Type == ptype,
- TblTestList.Provider == provider,
- TblTestList.TaskID == taskid))
+ query = self._session.query(table.TblTestList).filter(and_(table.TblTestList.CaseTag == casetag,
+ table.TblTestList.Type == ptype,
+ table.TblTestList.Provider == provider,
+ table.TblTestList.TaskID == taskid))
return query.count()
def query_exten_info(self, taskid):
- query = self._session.query(TblEXTInfo.EXTName,
- TblEXTInfo.EXTContent,
- TblEXTInfo.Description).filter(TblEXTInfo.TaskID == taskid)
+ query = self._session.query(table.TblEXTInfo.EXTName,
+ table.TblEXTInfo.EXTContent,
+ table.TblEXTInfo.Description).filter(table.TblEXTInfo.TaskID == taskid)
return query.all()
@@ -517,7 +540,7 @@ def unit_test():
dbase.add_extent_2task(taskid, "CETH", "driver", "version 2.0")
dbase.add_extent_2task(taskid, "EVS", "switch", "version 3.0")
- testid = dbase.add_test_2task(taskid, "Tn-1", 'udp', "rdp", "throughput", "netperf")
+ testid = dbase.add_test_2task(taskid, "Tn-1", 'udp', "throughput", "ovs", None, "netperf")
data = {
'64': {
'OfferedLoad': 2,
@@ -535,7 +558,7 @@ def unit_test():
}
dbase.add_data_2test(testid, data)
- testid = dbase.add_test_2task(taskid, "Tn-1", 'udp', "rdp", "frameloss", "netperf")
+ testid = dbase.add_test_2task(taskid, "Tn-1", 'udp', "frameloss", "ovs", None, "netperf")
data = {
'64': {
'OfferedLoad': 2,
@@ -553,7 +576,7 @@ def unit_test():
}
dbase.add_data_2test(testid, data)
- testid = dbase.add_test_2task(taskid, "Tn-1", 'udp', "rdp", "latency", "netperf")
+ testid = dbase.add_test_2task(taskid, "Tn-1", 'udp', "latency", "ovs", None, "netperf")
data = {
64: {'MaximumLatency': 0.0, 'AverageLatency': 0.0, 'MinimumLatency': 0.0, 'OfferedLoad': 0.0},
128: {'MaximumLatency': 0.0, 'AverageLatency': 0.0, 'MinimumLatency': 0.0, 'OfferedLoad': 0.0},
@@ -561,7 +584,12 @@ def unit_test():
1024: {'MaximumLatency': 0.0, 'AverageLatency': 0.0, 'MinimumLatency': 0.0, 'OfferedLoad': 0.0}
}
dbase.add_data_2test(testid, data)
+ query = dbase.query_testlist(1, "Tn")
+ for item in query:
+ print item.Protocol
+ query = dbase.query_testdata(1, "throughput")
+ print query
if __name__ == '__main__':
unit_test()