def test_driver_enums(self): """ Verify that all driver enumeration has no duplicate values that might cause confusion. Also do a little extra validation for the Capabilites """ self.assert_enum_has_no_duplicates(Command()) self.assert_enum_has_no_duplicates(ScheduledJob()) self.assert_enum_has_no_duplicates(DataParticleType()) self.assert_enum_has_no_duplicates(PARProtocolState()) self.assert_enum_has_no_duplicates(PARProtocolEvent()) self.assert_enum_has_no_duplicates(Parameter()) # Test capabilites for duplicates, them verify that capabilities is a subset of proto events self.assert_enum_has_no_duplicates(PARCapability()) self.assert_enum_complete(PARCapability(), PARProtocolEvent())
from mi.idk.unit_test import InstrumentDriverUnitTestCase, InstrumentDriverIntegrationTestCase from mi.idk.unit_test import InstrumentDriverQualificationTestCase, AgentCapabilityType from mi.instrument.satlantic.par_ser_600m.driver import Command, DataParticleType, SatlanticPARInstrumentProtocol from mi.instrument.satlantic.par_ser_600m.driver import PARProtocolState, PARProtocolEvent, PARCapability, Parameter from mi.instrument.satlantic.par_ser_600m.driver import ScheduledJob, EOLN, Prompt, SatlanticPARConfigParticle from mi.instrument.satlantic.par_ser_600m.driver import SatlanticPARDataParticle from mi.instrument.satlantic.par_ser_600m.driver import SatlanticPARDataParticleKey, SatlanticPARConfigParticleKey from mi.instrument.satlantic.par_ser_600m.driver import SatlanticPARInstrumentDriver, EngineeringParameter InstrumentDriverTestCase.initialize( driver_module='mi.instrument.satlantic.par_ser_600m.driver', driver_class="SatlanticPARInstrumentDriver", instrument_agent_resource_id='satlantic_par_ser_600m_ooicore', instrument_agent_name='satlantic_par_ser_600m_agent', instrument_agent_packet_config=DataParticleType(), driver_startup_config={ DriverConfigKey.PARAMETERS: { Parameter.MAXRATE: 1, Parameter.FIRMWARE: '1.0.0', Parameter.SERIAL: '4278190306', Parameter.INSTRUMENT: 'SATPAR' } }) # SATPAR4278190306,49.02,2157023616,171 VALID_SAMPLE = "SATPAR4278190306,49.02,2157023616,171\r\n" INVALID_SAMPLE = "SATPAR4278190306,49.02,2157023616,172\r\n" # Make tests verbose and provide stdout # bin/nosetests -s -v ion/services/mi/drivers/test/test_satlantic_par.py