Files
OpenDB/tests/unitTestsPython/TestNet.py
2020-07-21 02:29:39 +02:00

49 lines
2.3 KiB
Python

import opendbpy as odb
import helper
import odbUnitTest
#TestNet: A unit test class for class dbNet
#it inherits from odbunittest.TestCase and has access to the testing functions(asserts)
class TestNet(odbUnitTest.TestCase):
#This Function is called before each of the test cases defined below
#You should use it to create the instances you need to test (in our case n1,n2,n3)
def setUp(self):
self.db,lib = helper.createSimpleDB()
block = helper.create1LevelBlock(self.db,lib,self.db.getChip())
inst = block.getInsts()[0]
self.n1 = inst.findITerm('a').getNet()
self.n2 = inst.findITerm('b').getNet()
self.n3 = inst.findITerm('o').getNet()
#this function is called after each of the test cases
#you should free up space and destroy unneeded objects(cleanup step)
def tearDown(self):
self.db.destroy(self.db)
#each test case should start with the name "test"
def test_naming(self):
self.changeAndTest(self.n1,'rename','getName','_n1','_n1')
self.check(self.n1,'getConstName','_n1')
self.assertFalse(self.change(self.n1,'rename','n2'))
def test_dbSetterAndGetter(self):
self.changeAndTest(self.n1,'setRCDisconnected','isRCDisconnected',False,False)
self.changeAndTest(self.n1,'setRCDisconnected','isRCDisconnected',True,True)
self.changeAndTest(self.n1,'setWeight','getWeight',2,2)
self.changeAndTest(self.n1,'setSourceType','getSourceType','NETLIST','NETLIST')
self.changeAndTest(self.n1,'setXTalkClass','getXTalkClass',1,1)
self.changeAndTest(self.n1,'setCcAdjustFactor','getCcAdjustFactor',1,1)
self.changeAndTest(self.n1,'setSigType','getSigType','RESET','RESET')
def test_dbCc(self):
self.changeAndTest(self.n1,'setDbCc','getDbCc',2,2)
self.changeAndTest(self.n1,'addDbCc','getDbCc',5,3)
def test_cc(self):
node2 = odb.dbCapNode_create(self.n2,0,False)
node1 = odb.dbCapNode_create(self.n1,1,False)
node1.setInternalFlag()
ccseg = odb.dbCCSeg_create(node1,node2)
self.n1.calibrateCouplingCap()
self.check(self.n1,'maxInternalCapNum',1)
self.check(self.n1,'groundCC',True,1)
self.check(self.n2,'groundCC',False,1)
self.check(self.n1,'getCcCount',1)
if __name__=='__main__':
odbUnitTest.mainParallel(TestNet)