Esempio n. 1
0
            for parameter in supported_parameters:
                window = PMSingleWindow(parameter)
                screen.add_window(window)

            screen.next_window()

            while True:
                window = screen.get_window()
                parameters = window.get_parameters()

                # TODO refactor - not possible to test at the moment, so leave working part untouched
                if len(parameters) == 1:
                    parameter = parameters[0]
                    if parameter.get_cu_type() == PMCUParameter.CU_TYPE_STD_PARAMETER():
                        packet = connection.read_parameter(parameter)
                        window.set_packets([packet])
                    elif parameter.get_cu_type() == PMCUParameter.CU_TYPE_FIXED_ADDRESS_PARAMETER():
                        packet = connection.read_parameter(parameter)
                        window.set_packets([packet])
                    elif parameter.get_cu_type() == PMCUParameter.CU_TYPE_SWITCH_PARAMETER():
                        packet = connection.read_parameter(parameter)
                        window.set_packets([packet])
                    elif parameter.get_cu_type() == PMCUParameter.CU_TYPE_CALCULATED_PARAMETER():
                        packets = connection.read_parameters(parameter.get_dependencies())
                        window.set_packets(packets)
                elif len(parameters) > 1:
                    packets = connection.read_parameters(parameters)
                    window.set_packets(packets)

                screen.render()
Esempio n. 2
0
            for parameter in supported_parameters:
                window = PMSingleWindow(parameter)
                screen.add_window(window)

            screen.next_window()

            while True:
                window = screen.get_window()
                parameters = window.get_parameters()

                # TODO refactor - not possible to test at the moment, so leave working part untouched
                if len(parameters) == 1:
                    parameter = parameters[0]
                    if parameter.get_cu_type(
                    ) == PMCUParameter.CU_TYPE_STD_PARAMETER():
                        packet = connection.read_parameter(parameter)
                        window.set_packets([packet])
                    elif parameter.get_cu_type(
                    ) == PMCUParameter.CU_TYPE_FIXED_ADDRESS_PARAMETER():
                        packet = connection.read_parameter(parameter)
                        window.set_packets([packet])
                    elif parameter.get_cu_type(
                    ) == PMCUParameter.CU_TYPE_SWITCH_PARAMETER():
                        packet = connection.read_parameter(parameter)
                        window.set_packets([packet])
                    elif parameter.get_cu_type(
                    ) == PMCUParameter.CU_TYPE_CALCULATED_PARAMETER():
                        packets = connection.read_parameters(
                            parameter.get_dependencies())
                        window.set_packets(packets)
                elif len(parameters) > 1:
Esempio n. 3
0
class PMCUTestCase(unittest.TestCase):

    def setUp(self):
        self._ecu_packet = None
        self._tcu_packet = None

        self._connection = None

        self._parameters = None

        self._ecu_context = None
        self._tcu_context = None

        self._ecu_parameters = None
        self._ecu_switch_parameters = None
        self._ecu_calculated_parameters = None

        self._tcu_parameters = None
        self._tcu_calculated_parameters = None
        self._tcu_switch_parameters = None

        logger = PM()
        logger.set(self.log)

    def prepare_1_open_connection(self):
        self._connection = PMDemoConnection()

        result = self._connection.open()
        self.assertTrue(result)

    def prepare_2_init_connection(self):
        self.prepare_1_open_connection()
        self.assertIsNotNone(self._connection)

        self._ecu_packet = self._connection.init(1)
        self.assertIsNotNone(self._ecu_packet)

        self._tcu_packet = self._connection.init(2)
        self.assertIsNotNone(self._tcu_packet)

    def prepare_3_parse_logger_definition(self):
        self.prepare_2_init_connection()
        parser = PMXmlParser()

        self._parameters = parser.parse("logger_METRIC_EN_v263.xml")

        self._parameters = sorted(self._parameters, key=lambda x: x.get_id(), reverse=True)

        self.assertIsNotNone(self._parameters)
        self.assertEqual(len(self._parameters), 716)

    def prepare_4_match_parameters(self):
        self.prepare_3_parse_logger_definition()

        self._ecu_context = PMCUContext(self._ecu_packet, [1, 3])
        self._ecu_parameters = self._ecu_context.match_parameters(self._parameters)
        self.assertIsNotNone(self._ecu_parameters)
        self.assertEqual(len(self._ecu_parameters), 125)

        self._ecu_switch_parameters = self._ecu_context.match_switch_parameters(self._parameters)
        self.assertIsNotNone(self._ecu_switch_parameters)
        self.assertEqual(len(self._ecu_switch_parameters), 36)

        self._ecu_calculated_parameters = self._ecu_context.match_calculated_parameters(self._parameters, self._ecu_parameters)
        self.assertIsNotNone(self._ecu_calculated_parameters)
        self.assertEqual(len(self._ecu_calculated_parameters), 4)

        self._tcu_context = PMCUContext(self._tcu_packet, [2])
        self._tcu_parameters = self._tcu_context.match_parameters(self._parameters)
        self.assertIsNotNone(self._tcu_parameters)
        self.assertEqual(len(self._tcu_parameters), 11)

        self._tcu_switch_parameters = self._tcu_context.match_switch_parameters(self._parameters)
        self.assertIsNotNone(self._tcu_switch_parameters)
        self.assertEqual(len(self._tcu_switch_parameters), 13)

        self._tcu_calculated_parameters = self._tcu_context.match_calculated_parameters(self._parameters, self._tcu_parameters)
        self.assertIsNotNone(self._tcu_calculated_parameters)
        self.assertEqual(len(self._tcu_calculated_parameters), 0)

        #TODO: switches

    def test_5_read_parameters(self):
        self.prepare_4_match_parameters()

        print self._ecu_parameters[120].to_string()
        packet = self._connection.read_parameter(self._ecu_parameters[120])
        value = self._ecu_parameters[120].get_value(packet)
        print 'value=' + value

    def log(self, message, mid):
        print message

        return mid