summaryrefslogtreecommitdiffstats
path: root/testsuites/vstf/vstf_scripts/vstf/agent/spirent/spirent.py
diff options
context:
space:
mode:
Diffstat (limited to 'testsuites/vstf/vstf_scripts/vstf/agent/spirent/spirent.py')
-rw-r--r--testsuites/vstf/vstf_scripts/vstf/agent/spirent/spirent.py267
1 files changed, 179 insertions, 88 deletions
diff --git a/testsuites/vstf/vstf_scripts/vstf/agent/spirent/spirent.py b/testsuites/vstf/vstf_scripts/vstf/agent/spirent/spirent.py
index 904de736..ff2af1f8 100644
--- a/testsuites/vstf/vstf_scripts/vstf/agent/spirent/spirent.py
+++ b/testsuites/vstf/vstf_scripts/vstf/agent/spirent/spirent.py
@@ -14,23 +14,26 @@ import Tkinter
def build_cmd(*args):
cmd = ''
for arg in args:
- cmd = cmd+str(arg)+' '
+ cmd = cmd + str(arg) + ' '
#import pdb
- #pdb.set_trace()
+ # pdb.set_trace()
return cmd
class stcPython():
+
def __init__(self):
self.tclsh = Tkinter.Tcl()
self.stcpkg = '/home/Spirent_TestCenter_4.46/Spirent_TestCenter_Application_Linux'
- self.tclsh.eval("set auto_path [ linsert $auto_path 0 %s ]" %(self.stcpkg))
+ self.tclsh.eval(
+ "set auto_path [ linsert $auto_path 0 %s ]" %
+ (self.stcpkg))
self.tclsh.eval("package require SpirentTestCenter")
def build_cmd(self, *args):
cmd = ''
for arg in args:
- cmd = cmd+str(arg)+' '
+ cmd = cmd + str(arg) + ' '
return cmd
# [ stc base interface ]
@@ -38,206 +41,294 @@ class stcPython():
cmd = build_cmd('stc::init', *args)
return self.tclsh.eval(cmd)
# stc connect
- def stc_connect(self,*args):
+
+ def stc_connect(self, *args):
cmd = build_cmd('stc::connect', *args)
return self.tclsh.eval(cmd)
# stc disconnect
- def stc_disconnect(self,*args):
+
+ def stc_disconnect(self, *args):
cmd = build_cmd('stc::disconnect', *args)
return self.tclsh.eval(cmd)
# stc create
- def stc_create(self,*args):
+
+ def stc_create(self, *args):
cmd = build_cmd('stc::create', *args)
return self.tclsh.eval(cmd)
# stc delete
- def stc_delete(self,*args):
+
+ def stc_delete(self, *args):
cmd = build_cmd('stc::delete', *args)
return self.tclsh.eval(cmd)
# stc config
- def stc_config(self,*args):
+
+ def stc_config(self, *args):
cmd = build_cmd('stc::config', *args)
return self.tclsh.eval(cmd)
# stc get
- def stc_get(self,*args):
+
+ def stc_get(self, *args):
cmd = build_cmd('stc::get', *args)
return self.tclsh.eval(cmd)
# stc apply
- def stc_apply(self,*args):
+
+ def stc_apply(self, *args):
cmd = build_cmd('stc::apply', *args)
return self.tclsh.eval(cmd)
# stc perform
- def stc_perform(self,*args):
+
+ def stc_perform(self, *args):
cmd = build_cmd('stc::perform', *args)
return self.tclsh.eval(cmd)
# stc reserve
- def stc_reserve(self,*args):
+
+ def stc_reserve(self, *args):
cmd = build_cmd('stc::reserve', *args)
return self.tclsh.eval(cmd)
# stc release
- def stc_release(self,*args):
+
+ def stc_release(self, *args):
cmd = build_cmd('stc::release', *args)
return self.tclsh.eval(cmd)
# stc subscribe
- def stc_subscribe(self,*args):
- cmd = build_cmd('stc::subscribe',*args)
+
+ def stc_subscribe(self, *args):
+ cmd = build_cmd('stc::subscribe', *args)
return self.tclsh.eval(cmd)
# stc unsubscribe
- def stc_unsubscribe(self,*args):
+
+ def stc_unsubscribe(self, *args):
cmd = build_cmd('stc::unsubscribe', *args)
return self.tclsh.eval(cmd)
# stc wait until sequencer complete
- def stc_waituntilcomplete(self,*args):
+
+ def stc_waituntilcomplete(self, *args):
cmd = build_cmd('stc::waituntilcomplete', *args)
return self.tclsh.eval(cmd)
# stc help
+
def stc_help(self, *args):
- cmd = build_cmd('stc::help',*args)
+ cmd = build_cmd('stc::help', *args)
return self.tclsh.eval(cmd)
# [ stc expand interface ]
# get one dict-key's value
# return value
- def stc_get_value(self,stc_dict,stc_key):
- cmd = stc_dict+' -'+stc_key
+ def stc_get_value(self, stc_dict, stc_key):
+ cmd = stc_dict + ' -' + stc_key
return self.stc_get(cmd)
# create project
# return: project_name
+
def stc_create_project(self):
return self.stc_create('project')
# create port under project
# return: port name
- def stc_create_port(self,project_name):
- cmd = 'port -under '+project_name
+
+ def stc_create_port(self, project_name):
+ cmd = 'port -under ' + project_name
return self.stc_create(cmd)
# config port location
# return: None
- def stc_config_port_location(self,port_name,chassisAddress,slot,port):
+
+ def stc_config_port_location(self, port_name, chassisAddress, slot, port):
#import pdb
- #pdb.set_trace()
- cmd = port_name+' -location //'+chassisAddress+'/'+slot+'/'+port+' -UseDefaultHost False'
+ # pdb.set_trace()
+ cmd = port_name + ' -location //' + chassisAddress + \
+ '/' + slot + '/' + port + ' -UseDefaultHost False'
return self.stc_config(cmd)
# create streamblock under port
# return: streamblock name
- def stc_create_streamblock(self,port_name,vlan_tag,ExpectedRxPort,srcMac,dstMac,sourceAddr,destAddr):
+
+ def stc_create_streamblock(
+ self,
+ port_name,
+ vlan_tag,
+ ExpectedRxPort,
+ srcMac,
+ dstMac,
+ sourceAddr,
+ destAddr):
#import pdb
- #pdb.set_trace()
- if vlan_tag == None or vlan_tag == 'None':
+ # pdb.set_trace()
+ if vlan_tag is None or vlan_tag == 'None':
frameStruc = '"EthernetII IPv4 Udp"'
- if ExpectedRxPort == '' :
- return self.stc_create( 'streamBlock -under ',port_name,
- '-frameConfig ',frameStruc,
- '-frame "EthernetII.srcMac',srcMac,'EthernetII.dstMac',dstMac,
- 'IPv4.1.sourceAddr',sourceAddr,'IPv4.1.destAddr',destAddr,'"')
- else :
- return self.stc_create( 'streamBlock -under ',port_name,
- '-ExpectedRxPort',ExpectedRxPort,
- '-frameConfig ',frameStruc,
- '-frame "EthernetII.srcMac',srcMac,'EthernetII.dstMac',dstMac,
- 'IPv4.1.sourceAddr',sourceAddr,'IPv4.1.destAddr',destAddr,'"')
- else :
+ if ExpectedRxPort == '':
+ return self.stc_create(
+ 'streamBlock -under ',
+ port_name,
+ '-frameConfig ',
+ frameStruc,
+ '-frame "EthernetII.srcMac',
+ srcMac,
+ 'EthernetII.dstMac',
+ dstMac,
+ 'IPv4.1.sourceAddr',
+ sourceAddr,
+ 'IPv4.1.destAddr',
+ destAddr,
+ '"')
+ else:
+ return self.stc_create(
+ 'streamBlock -under ',
+ port_name,
+ '-ExpectedRxPort',
+ ExpectedRxPort,
+ '-frameConfig ',
+ frameStruc,
+ '-frame "EthernetII.srcMac',
+ srcMac,
+ 'EthernetII.dstMac',
+ dstMac,
+ 'IPv4.1.sourceAddr',
+ sourceAddr,
+ 'IPv4.1.destAddr',
+ destAddr,
+ '"')
+ else:
frameStruc = '"EthernetII Vlan IPv4 Udp"'
- if ExpectedRxPort == '' :
- return self.stc_create( 'streamBlock -under ',port_name,
- '-frameConfig '+frameStruc,
- '-frame "EthernetII.srcMac',srcMac,'EthernetII.dstMac',dstMac,
- 'Vlan.1.id',vlan_tag,
- 'IPv4.1.sourceAddr',sourceAddr,'IPv4.1.destAddr',destAddr,'"')
- else :
- return self.stc_create( 'streamBlock -under ',port_name,
- '-ExpectedRxPort',ExpectedRxPort,
- '-frameConfig '+frameStruc,
- '-frame "EthernetII.srcMac',srcMac,'EthernetII.dstMac',dstMac,
- 'Vlan.1.id',vlan_tag,
- 'IPv4.1.sourceAddr',sourceAddr,'IPv4.1.destAddr',destAddr,'"')
+ if ExpectedRxPort == '':
+ return self.stc_create(
+ 'streamBlock -under ',
+ port_name,
+ '-frameConfig ' +
+ frameStruc,
+ '-frame "EthernetII.srcMac',
+ srcMac,
+ 'EthernetII.dstMac',
+ dstMac,
+ 'Vlan.1.id',
+ vlan_tag,
+ 'IPv4.1.sourceAddr',
+ sourceAddr,
+ 'IPv4.1.destAddr',
+ destAddr,
+ '"')
+ else:
+ return self.stc_create(
+ 'streamBlock -under ',
+ port_name,
+ '-ExpectedRxPort',
+ ExpectedRxPort,
+ '-frameConfig ' +
+ frameStruc,
+ '-frame "EthernetII.srcMac',
+ srcMac,
+ 'EthernetII.dstMac',
+ dstMac,
+ 'Vlan.1.id',
+ vlan_tag,
+ 'IPv4.1.sourceAddr',
+ sourceAddr,
+ 'IPv4.1.destAddr',
+ destAddr,
+ '"')
# config streamblock with part arguments
# argument list use args dictionary
- def stc_config_streamblock(self,streamblock_name,args_dict):
+
+ def stc_config_streamblock(self, streamblock_name, args_dict):
cmd = ''
- for key in args_dict.keys() :
- temp_cmd = '-'+key+' '+str(args_dict[key])
+ for key in args_dict.keys():
+ temp_cmd = '-' + key + ' ' + str(args_dict[key])
cmd = cmd + temp_cmd
- return self.stc_config(streamblock_name,cmd)
+ return self.stc_config(streamblock_name, cmd)
# get generator name from port name
# return: generator name
- def stc_get_generator(self,port_name):
- cmd = port_name+' -children-generator'
+
+ def stc_get_generator(self, port_name):
+ cmd = port_name + ' -children-generator'
return self.stc_get(cmd)
# config generator with part arguments
# argument list use args dictionary
# return none
- def stc_config_generator(self,generator_name,args_dict):
+
+ def stc_config_generator(self, generator_name, args_dict):
cmd = ''
- for key in args_dict.keys() :
- temp_cmd = '-'+key+' '+str(args_dict[key])
+ for key in args_dict.keys():
+ temp_cmd = '-' + key + ' ' + str(args_dict[key])
cmd = cmd + temp_cmd
- return self.stc_config(generator_name,cmd)
+ return self.stc_config(generator_name, cmd)
# attach port
# return: port's parent project info
- def stc_attach_ports(self,portList):
+
+ def stc_attach_ports(self, portList):
cmd = 'AttachPorts -portList {'
- for port in portList :
- cmd = cmd+' '+port
- cmd = cmd+'} -autoConnect TRUE'
+ for port in portList:
+ cmd = cmd + ' ' + port
+ cmd = cmd + '} -autoConnect TRUE'
return self.stc_perform(cmd)
# config src mac and dst mac
# return: none
- def stc_config_ethII(self,ethII,src_mac,dst_mac):
- cmd = ethII+' -srcMac '+src_mac+' -dstMac '+dst_mac
+
+ def stc_config_ethII(self, ethII, src_mac, dst_mac):
+ cmd = ethII + ' -srcMac ' + src_mac + ' -dstMac ' + dst_mac
return self.stc_config(cmd)
# config src ip and dst ip
# return: none
- def stc_config_ethIII(self,ethIII,src_ip,dst_ip):
- cmd = ethIII+' -sourceAddr '+src_ip+' -destAddr '+dst_ip
+
+ def stc_config_ethIII(self, ethIII, src_ip, dst_ip):
+ cmd = ethIII + ' -sourceAddr ' + src_ip + ' -destAddr ' + dst_ip
return self.stc_config(cmd)
# start streamblock
# return: none
- def stc_streamblock_start(self,streamblock_list):
+
+ def stc_streamblock_start(self, streamblock_list):
cmd = 'StreamBlockStart -StreamBlockList {'
- for streamblock in streamblock_list :
- cmd = cmd+' '+streamblock
- cmd = cmd+' } -ExecuteSynchronous TRUE'
+ for streamblock in streamblock_list:
+ cmd = cmd + ' ' + streamblock
+ cmd = cmd + ' } -ExecuteSynchronous TRUE'
return self.stc_perform(cmd)
# stop streamblock
- def stc_streamblock_stop(self,streamblock_list):
+
+ def stc_streamblock_stop(self, streamblock_list):
cmd = 'StreamBlockStop -StreamBlockList {'
- for streamblock in streamblock_list :
- cmd = cmd+' '+streamblock
- cmd = cmd+' } -ExecuteSynchronous TRUE'
+ for streamblock in streamblock_list:
+ cmd = cmd + ' ' + streamblock
+ cmd = cmd + ' } -ExecuteSynchronous TRUE'
return self.stc_perform(cmd)
# start generator
# return: none
- def stc_generator_start(self,generator_List):
+
+ def stc_generator_start(self, generator_List):
cmd = 'GeneratorStart -generatorList {'
- for generator in generator_List :
- cmd = cmd+' '+generator
- cmd = cmd+' }'
+ for generator in generator_List:
+ cmd = cmd + ' ' + generator
+ cmd = cmd + ' }'
return self.stc_perform(cmd)
# stop generator
# return: none
- def stc_generator_stop(self,generator_List):
+
+ def stc_generator_stop(self, generator_List):
cmd = 'GeneratorStop -generatorList {'
- for generator in generator_List :
- cmd = cmd+' '+generator
- cmd = cmd+' }'
+ for generator in generator_List:
+ cmd = cmd + ' ' + generator
+ cmd = cmd + ' }'
return self.stc_perform(cmd)
# create rfc2544 throughput test
+
def stc_setup_rfc2544_throughput(self):
pass
# create rfc2544 frameloss test
+
def stc_setup_rfc2544_frameloss(self):
pass
# create rfc2544 latency test
+
def stc_setup_rfc2544_latency(self):
pass
# start Sequence start
+
def stc_sequence_start(self):
return self.stc_perform('SequencerStart')
# output rfc2544 throughput result
+
def stc_get_rfc2544_throughput_result(self):
pass
# output rfc2544 frameloss result
+
def stc_get_rfc2544_frameloss_result(self):
pass
# output rfc2544 latency result
+
def stc_get_rfc2544_latency_result(self):
pass