예제 #1
0
    def testAttach(self):
        self.assertEqual(len(self.stub.attachmentIds), 0)

        self.stub.setNewAttachDetachCallback(self)

        vita49_fmt = BULKIO.VITA49DataPacketPayloadFormat(
            False, BULKIO.VITA49_REAL, BULKIO.VITA49_32F, False, 0, 0, 0, 0, 0,
            0)

        if self._streamDef._NP_RepositoryId == BULKIO.SDDSStreamDefinition._NP_RepositoryId:
            newStreamDef = self._streamDef('abc', BULKIO.SDDS_SF, '0.0.0.0', 0,
                                           self.GOOD_PORT, 0, False, '')
        else:
            newStreamDef = self._streamDef('0.0.0.0', 0, self.GOOD_PORT,
                                           BULKIO.VITA49_UDP_TRANSPORT, 'abc',
                                           False, vita49_fmt)

        retval = self.port.addStream(newStreamDef)
        self.assertTrue(retval)
        self.assertEqual(len(self.stub.attachmentIds), 1)

        if self._streamDef._NP_RepositoryId == BULKIO.SDDSStreamDefinition._NP_RepositoryId:
            invalidStreamDef = self._streamDef('def', BULKIO.SDDS_SF,
                                               '0.0.0.0', 0, self.BAD_PORT, 0,
                                               False, '')
        else:
            invalidStreamDef = self._streamDef('0.0.0.0', 0, self.BAD_PORT,
                                               BULKIO.VITA49_UDP_TRANSPORT,
                                               'def', False, vita49_fmt)

        self.assertRaises(self._exception, self.port.addStream,
                          invalidStreamDef)
        self.assertRaises(self._exception, self.port.attach, invalidStreamDef,
                          'some_user')
        self.assertEqual(len(self.stub.attachmentIds), 1)

        if self._streamDef._NP_RepositoryId == BULKIO.SDDSStreamDefinition._NP_RepositoryId:
            validStreamDef = self._streamDef('def', BULKIO.SDDS_SF, '0.0.0.0',
                                             0, self.GOOD_PORT, 0, False, '')
        else:
            validStreamDef = self._streamDef('0.0.0.0', 0, self.GOOD_PORT,
                                             BULKIO.VITA49_UDP_TRANSPORT,
                                             'def', False, vita49_fmt)

        retval = self.port.addStream(validStreamDef)
        self.assertTrue(retval)
        self.assertEqual(len(self.stub.attachmentIds), 2)
예제 #2
0
    def callAttach(self, valid_data_format=True, mode=0):
        # Mode 0 = RealShort ,  1 = ComplexShort, 2 = RealFloat, 3 = ComplexFloat

        payloadFormat_RealShort = BULKIO.VITA49DataPacketPayloadFormat(
            True, BULKIO.VITA49_REAL, BULKIO.VITA49_16T, False, 0, 0, 16, 16,
            1, 1)
        payloadFormat_ComplexShort = BULKIO.VITA49DataPacketPayloadFormat(
            True, BULKIO.VITA49_COMPLEX_CARTESIAN, BULKIO.VITA49_16T, False, 0,
            0, 16, 16, 1, 1)
        payloadFormat_RealFloat = BULKIO.VITA49DataPacketPayloadFormat(
            True, BULKIO.VITA49_REAL, BULKIO.VITA49_32F, False, 0, 0, 32, 32,
            1, 1)
        payloadFormat_ComplexFloat = BULKIO.VITA49DataPacketPayloadFormat(
            True, BULKIO.VITA49_COMPLEX_CARTESIAN, BULKIO.VITA49_32F, False, 0,
            0, 32, 32, 1, 1)
        payloadFormat_RealLong = BULKIO.VITA49DataPacketPayloadFormat(
            True, BULKIO.VITA49_REAL, BULKIO.VITA49_32T, False, 0, 0, 32, 32,
            1, 1)
        payloadFormat_RealOctet = BULKIO.VITA49DataPacketPayloadFormat(
            True, BULKIO.VITA49_REAL, BULKIO.VITA49_8T, False, 0, 0, 8, 8, 1,
            1)

        if mode == 0:
            payloadFormat = payloadFormat_RealShort
        elif mode == 1:
            payloadFormat = payloadFormat_ComplexShort
        elif mode == 2:
            payloadFormat = payloadFormat_RealFloat
        elif mode == 3:
            payloadFormat = payloadFormat_ComplexFloat
        elif mode == 4:
            payloadFormat = payloadFormat_RealLong
        elif mode == 5:
            payloadFormat = payloadFormat_RealOctet
        else:
            payloadFormat = None

        streamDef = BULKIO.VITA49StreamDefinition(self.uni_ip, 0, self.port,
                                                  BULKIO.VITA49_UDP_TRANSPORT,
                                                  "id", valid_data_format,
                                                  payloadFormat)

        # Try to attach
        attachId = ''

        try:
            attachId = self.input_vita49_port.attach(streamDef, 'test')
        except Exception, e:
            print str(e)
            print "ATTACH FAILED"
            attachId = ''