class VST(object): def __init__(self): self.Freq = 2.5e9 self.SWM_Out = 0 self.LTE_Dir = 'DL' self.LTE_ChBW = 100 #MHz self.LTE_RB = 66 #RB self.LTE_RBO = 0 #RB Offset self.LTE_Mod = 'QAM64' #QPSK; QAM16; QAM64; QAM256 self.LTE_CC = 1 def Get_LTE_All(self): odata = [[] for i in range(3)] odata[0].append("[[Parameter]] ") odata[0].append("Direction ") odata[0].append("Duplex ") odata[0].append("Ch BW ") odata[0].append("===User/BWP====") odata[0].append("RB ") odata[0].append("RBoff ") odata[0].append("Mod ") try: odata[1].append("[-SMW-]") odata[1].append(self.SMW.Get_LTE_Direction()) odata[1].append(self.SMW.Get_LTE_Duplex()) odata[1].append(self.SMW.Get_LTE_ChBW()) odata[1].append("=User="******"[-FSW-]") odata[2].append(self.FSW.Get_LTE_Direction()) odata[2].append(self.FSW.Get_LTE_Duplex()) odata[2].append(self.FSW.Get_LTE_ChBW()) odata[2].append("=User="******"%s\t%s\t%s"%(data[0][i],data[1][i],data[2][i])) except: try: print("%s\t%s\t%s"%(data[0][i],data[1][i],'<notRead>')) except: print("%s\t%s\t%s"%(data[0][i],'<notRead>',data[2][i])) def jav_Open(self,SMW_IP,FSW_IP,OFile=''): self.SMW = VSG().jav_Open(SMW_IP,OFile,prnt=0) #Create SMW Object self.FSW = VSA().jav_Open(FSW_IP,OFile,prnt=0) #Create FSW Object return self def jav_Close(self): self.SMW.jav_Close() self.FSW.jav_Close() def jav_Clear(self): self.SMW.jav_Clear() self.FSW.jav_Clear() def Set_LTE_All(self): try: ### SMW Settings self.SMW.Set_Freq(self.Freq) self.SMW.Set_LTE_BBState('OFF') self.SMW.Set_LTE_Direction(self.LTE_Dir) self.SMW.Set_LTE_ChBW(self.LTE_ChBW) self.SMW.Set_LTE_ResBlock(self.LTE_RB) self.SMW.Set_LTE_ResBlockOffset(self.LTE_RBO) self.SMW.Set_LTE_Modulation(self.LTE_Mod) self.SMW.Set_LTE_BBState('ON') self.SMW.Set_RFState('ON') #Turn RF Output on self.SMW.Set_RFPwr(self.SWM_Out) #Output Power except: print("NR5G_SetSettings: SMW Error") try: ### FSW Setting self.FSW.Init_LTE() self.FSW.Set_Freq(self.Freq) self.FSW.Set_LTE_Direction(self.LTE_Dir) self.FSW.Set_LTE_ChBW(self.LTE_ChBW) self.FSW.Set_LTE_ResBlock(self.LTE_RB) self.FSW.Set_LTE_ResBlockOffset(self.LTE_RBO) self.FSW.Set_LTE_Modulation(self.LTE_Mod) self.FSW.Set_SweepCont(1) self.FSW.Set_InitImm() except: print("NR5G_SetSettings: FSW Error") return 0
class TestGeneral(unittest.TestCase): def setUp(self): #run before each test self.FSW = VSA().jav_OpenTest(host) self.FSW.Init_LTE() def tearDown(self): #Run after each test self.assertEqual(self.FSW.jav_Error()[0],'0') self.FSW.jav_Close() ############################################################################### ### <Test> ############################################################################### def test_FSW_LTE_AutoRef(self): self.FSW.Set_LTE_AutoRef() def test_FSW_LTE_Get_DL(self): self.FSW.Set_LTE_Direction('DL') self.FSW.Set_LTE_Duplex('FDD') nullVal = self.FSW.Get_LTE_Direction() nullVal = self.FSW.Get_LTE_Duplex() nullVal = self.FSW.Get_LTE_ChBW() nullVal = self.FSW.Get_LTE_ResBlock() # Need to test DL nullVal = self.FSW.Get_LTE_ResBlockOffset() # Need to test DL nullVal = self.FSW.Get_LTE_Modulation() # Need to test DL def test_FSW_LTE_Get_UL(self): self.FSW.Set_LTE_Direction('UL') self.FSW.Set_LTE_Duplex('FDD') nullVal = self.FSW.Get_LTE_Direction() nullVal = self.FSW.Get_LTE_Duplex() nullVal = self.FSW.Get_LTE_ChBW() nullVal = self.FSW.Get_LTE_ResBlock() # Need to test DL nullVal = self.FSW.Get_LTE_ResBlockOffset() # Need to test DL nullVal = self.FSW.Get_LTE_Modulation() # Need to test DL def test_FSW_LTE_CC(self): self.FSW.Set_LTE_CC(2) getVal = self.FSW.Get_LTE_CC() if self.FSW.connected: self.assertEqual(getVal,'2') self.FSW.Set_LTE_CC(1) getVal = self.FSW.Get_LTE_CC() if self.FSW.connected: self.assertEqual(getVal,'1') def test_FSW_LTE_Direction(self): self.FSW.Set_LTE_Direction('UL') getVal = self.FSW.Get_LTE_Direction() if self.FSW.connected: self.assertEqual(getVal,'UL') self.FSW.Set_LTE_Direction('DL') getVal = self.FSW.Get_LTE_Direction() if self.FSW.connected: self.assertEqual(getVal,'DL') def test_FSW_LET_Meas(self): self.FSW.Get_LTE_EVMParams() self.FSW.Get_EVM_n_Params() self.FSW.Get_EVM() self.FSW.Get_LTE_CrestFactor() self.FSW.Get_LTE_ChPwr() def test_FSW_LTE_Set_UL(self): self.FSW.Set_Freq(2e9) self.FSW.Set_LTE_EVMUnit('DB') self.FSW.Set_LTE_Duplex('TDD') self.FSW.Set_LTE_Duplex('FDD') self.FSW.Set_LTE_SubFrameCount(2) self.FSW.Set_LTE_Direction('UL') self.FSW.Set_LTE_ChBW(20) self.FSW.Set_LTE_ResBlock(66) self.FSW.Set_LTE_ResBlockOffset(0) self.FSW.Set_LTE_Modulation('QPSK') def test_FSW_LTE_SEM(self): self.FSW.Init_LTE_SEM()