Ejemplo n.º 1
0
    def test_translator(self):
        """Test translating message dictionary values."""
        orig = (
            'pytroll://tm1 file [email protected] 2018-10-25T01:15:54.752065 v1.01 application/json '
            '{"sensor": "viirs", "format": "SDR", "variant": "DR", "uid": "bla.png", "uri": "/home/user/bla.png"}'
        )
        dest_dir = '/tmp'
        expected = (
            'pytroll://tm1 file [email protected] 2018-10-25T01:15:54.752065 v1.01 application/json '
            '{"sensor": "viirs", "format": "SDR", "variant": "DR", "uid": "bla.png", "uri": "/tmp/bla.png"}'
        )

        def dummy_cb(k, v):
            dirname, filename = os.path.split(v)
            return os.path.join(dest_dir, filename)

        expected_dict = Message(rawstr=expected).data
        res = translate_dict_value(Message(rawstr=orig).data, 'uri', dummy_cb)
        self.assertDictEqual(expected_dict, res)

        orig = (
            'pytroll://tm1 file [email protected] 2018-10-25T01:15:54.752065 v1.01 application/json '
            '{"sensor": "viirs", "format": "SDR", "variant": "DR", '
            ' "dataset": [{"uid": "bla.png", "uri": "/home/user/bla.png"},'
            '             {"uid": "bla2.png", "uri": "/home/user/bla2.png"}]}')

        expected = (
            'pytroll://tm1 file [email protected] 2018-10-25T01:15:54.752065 v1.01 application/json '
            '{"sensor": "viirs", "format": "SDR", "variant": "DR", '
            ' "dataset": [{"uid": "bla.png", "uri": "/tmp/bla.png"},'
            '             {"uid": "bla2.png", "uri": "/tmp/bla2.png"}]}')

        expected_dict = Message(rawstr=expected).data
        res = translate_dict_value(Message(rawstr=orig).data, 'uri', dummy_cb)
        self.assertDictEqual(expected_dict, res)

        orig = (
            'pytroll://tm1 file [email protected] 2018-10-25T01:15:54.752065 v1.01 application/json '
            '{"sensor": "viirs", "format": "SDR", "variant": "DR", '
            ' "collection": [{"dataset": [{"uid": "bla.png", "uri": "/home/user/bla.png"},'
            '                             {"uid": "bla2.png", "uri": "/home/user/bla2.png"}]}]}'
        )

        expected = (
            'pytroll://tm1 file [email protected] 2018-10-25T01:15:54.752065 v1.01 application/json '
            '{"sensor": "viirs", "format": "SDR", "variant": "DR", '
            ' "collection": [{"dataset": [{"uid": "bla.png", "uri": "/tmp/bla.png"},'
            '                             {"uid": "bla2.png", "uri": "/tmp/bla2.png"}]}]}'
        )

        expected_dict = Message(rawstr=expected).data
        res = translate_dict_value(Message(rawstr=orig).data, 'uri', dummy_cb)
        self.assertDictEqual(expected_dict, res)
Ejemplo n.º 2
0
    def test_translate_dict_value(self):
        """Test message data dictionary value translation."""
        msg = Message(rawstr=test_msg)
        orig_data = copy.deepcopy(msg.data)

        res = translate_dict_value(msg.data, 'uri',
                                   dummy_callback_translate_dict_values)
        for uri in gen_dict_extract(res, 'uri'):
            self.assertTrue(uri.startswith(DEST_DIR))

        self.assertDictEqual(orig_data, msg.data)
Ejemplo n.º 3
0
    def test_real_translate(self):
        msg = Message(rawstr=test_msg)
        orig_data = copy.deepcopy(msg.data)

        def dummy_cb(k, v):
            dirname, filename = os.path.split(v)
            return os.path.join(dest_dir, filename)

        dest_dir = '/tmp'
        res = translate_dict_value(msg.data, 'uri', dummy_cb)
        for uri in gen_dict_extract(res, 'uri'):
            self.assertTrue(uri.startswith(dest_dir))

        self.assertDictEqual(orig_data, msg.data)
Ejemplo n.º 4
0
    def test_translate_dict_values_file_message(self):
        """Test translating message dictionary values."""
        orig = (
            'pytroll://tm1 file [email protected] 2018-10-25T01:15:54.752065 v1.01 application/json '
            '{"sensor": "viirs", "format": "SDR", "variant": "DR", "uid": "bla.png", "uri": "/home/user/bla.png"}'
        )
        expected = (
            'pytroll://tm1 file [email protected] 2018-10-25T01:15:54.752065 v1.01 application/json '
            '{"sensor": "viirs", "format": "SDR", "variant": "DR", "uid": "bla.png", "uri": "/tmp/bla.png"}'
        )

        expected_dict = Message(rawstr=expected).data
        res = translate_dict_value(
            Message(rawstr=orig).data, 'uri',
            dummy_callback_translate_dict_values)
        self.assertDictEqual(expected_dict, res)