class TestOmsPlatformDriver(IonIntegrationTestCase, HelperTestMixin): @classmethod def setUpClass(cls): HelperTestMixin.setUpClass() def setUp(self): platform_id = self.PLATFORM_ID self._plat_driver = OmsPlatformDriver(platform_id, DVR_CONFIG) self._plat_driver.set_event_listener(self.evt_recv) def evt_recv(self, driver_event): log.debug('GOT driver_event=%s', str(driver_event)) def tearDown(self): self._plat_driver.destroy() def _ping(self): result = self._plat_driver.ping() self.assertEquals("PONG", result) def _go_active(self): self._plat_driver.go_active() def _get_attribute_values(self): attrNames = self.ATTR_NAMES cur_time = ntplib.system_to_ntp_time(time.time()) from_time = cur_time - 50 # a 50-sec time window attr_values = self._plat_driver.get_attribute_values(attrNames, from_time) log.info("attr_values = %s" % str(attr_values)) self.assertIsInstance(attr_values, dict) for attr_name in attrNames: self.assertTrue(attr_name in attr_values) def _start_resource_monitoring(self): self._plat_driver.start_resource_monitoring() def _stop_resource_monitoring(self): self._plat_driver.stop_resource_monitoring() def _start_event_dispatch(self): params = {} # TODO params not used yet self._plat_driver.start_event_dispatch(params) def _stop_event_dispatch(self): self._plat_driver.stop_event_dispatch() def test(self): self._ping() self._go_active() self._get_attribute_values() self._start_resource_monitoring() self._start_event_dispatch() log.info("sleeping to eventually see some events...") sleep(15) self._stop_event_dispatch() self._stop_resource_monitoring()