def __init__(self, options, logger): """Constructor for the INSintTester object. """ # Invoke our base class constructor. INSintGUI.__init__(self) self.logger = logger self.insconfig = INSconfig() # Set up default connection parameters from command line self.obcpnum = options.obcpnum self.monunitnum = options.monunitnum if not options.obcphost: self.obcphost = SOSSrpc.get_myhost(short=True) else: self.obcphost = options.obcphost self.raidpath = options.fitsdir self.transfermethod = options.transfermethod self.username = options.username self.password = options.password self.ev_quit = threading.Event() self.ev_mainquit = threading.Event() self.soss = None # Did user specify a Gen2 status source? if options.statussvc: ro_status = ro.remoteObjectProxy(options.statussvc) statusObj = INSint.FetchStatusWrapper_Gen2(ro_status) # Did user specify a SOSS status source? elif options.statushost: from SOSS.status import cachedStatusObj statusDict = cachedStatusObj(options.statushost) statusObj = INSint.FetchStatusWrapper_SOSS(statusDict) # Did user specify a SOSS status file? elif options.statusfile: try: in_f = open(options.statusfile, 'r') statusDict = eval(in_f.read()) in_f.close() except Exception, e: self.showStatus("Error reading status file '%s': %s" % \ (options.statusfile, str(e))) statusDict = {} statusObj = INSint.FetchStatusWrapper_SOSS(statusDict)
def __init__(self): self.insconfig = INSconfig() self.obcpnum = 18 self.obcphost = 'fmos02' self.ev_quit = threading.Event() self.ev_mainquit = threading.Event() self.soss = None self.logger = logging.getLogger('INSintTesterCLI') statusDict = {} self.statusObj = INSint.FetchStatusWrapper_SOSS(statusDict) self.cmdtag = 0
def setUp(self): self.env = environment.MockEnvironment() self.env.removeTestDirs() # just in case self.env.makeDirs() self.obcpnum = 9 self.ev_quit = threading.Event() # Create mini monitor for INSint self.minimon = Monitor.Minimon('monitor', logger) myhost = SOSSrpc.get_myhost(short=True) raidpath = self.env.INST_PATH statusObj = INSint.FetchStatusWrapper_SOSS({}) # Create and start the instrument interface self.insint = INSint.ocsInsInt(self.obcpnum, myhost, raidpath, statusObj, db=self.minimon, logger=logger, ev_quit=self.ev_quit) self.insint.start(wait=True) # Create and start SIMCAM ocsint = DAQtk.ocsInt(self.obcpnum, logger=logger, ev_quit=self.ev_quit) self.simcam = SIMCAM.Instrument(logger, ev_quit=self.ev_quit, ocsint=ocsint, allowNoPara=False, env=self.env) self.simcam.loadPersonality('SIMCAM') self.simcam.loadParaBuf(('SIMCAM', 'FITS_FILE'), fits_file_para) # Wait until SIMCAM is up and running self.simcam.start(wait=True)
elif options.statusfile: try: in_f = open(options.statusfile, 'r') statusDict = eval(in_f.read()) in_f.close() except Exception, e: self.showStatus("Error reading status file '%s': %s" % \ (options.statusfile, str(e))) statusDict = {} statusObj = INSint.FetchStatusWrapper_SOSS(statusDict) else: statusDict = {} statusObj = INSint.FetchStatusWrapper_SOSS(statusDict) self.statusObj = statusObj self.mode = None self.cmdtag = 0 self.cmdqueue = Queue.Queue() self.monitor = options.monitor # Set defaults for setup dialog sw = self.widgets['transfermethod'] sw.set_active(1) #current default for this widget is 9, but it would be nice to set it here #self.widgets['obcpnum'].set_value_as_int(self.obcpnum) self.widgets['username'].set_text(self.username) self.widgets['password'].set_text(self.password) self.widgets['obcphost'].set_text(self.obcphost)