From 9bc0e9760a030a6084a7411333216bd821e566b4 Mon Sep 17 00:00:00 2001 From: Przemek Wirkus Date: Wed, 6 Jul 2016 15:56:26 +0100 Subject: [PATCH 1/3] Add support for dummy platforms generation --- mbed_lstools/lstools_base.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/mbed_lstools/lstools_base.py b/mbed_lstools/lstools_base.py index 3e53323..5846bc9 100644 --- a/mbed_lstools/lstools_base.py +++ b/mbed_lstools/lstools_base.py @@ -341,15 +341,14 @@ def mock_manufacture_ids(self, mid, platform_name, oper='+'): # Interface def list_mbeds(self): """! Get information about mbeds connected to device - @return Returns None or if no error MBED_BOARDS = [ , ] - @details MBED_BOARD { 'mount_point' : <>, 'serial_port' : <>, 'target_id' : <>, 'platform_name' : <>, + 'daplink_version' : <>, } # If field unknown, place None """ @@ -397,6 +396,19 @@ def list_mbeds_ext(self): self.debug(self.list_mbeds_ext.__name__, (mbeds[i]['platform_name_unique'], val['target_id'])) return mbeds + def get_dummy_platform(self, platform_name): + """! Returns simple dummy platform """ + platform = { + "platform_name": platform_name, + "mount_point": "DUMMY", + "serial_port": "DUMMY", + "target_id": "DUMMY", + "target_id_mbed_htm": "DUMMY", + "target_id_usb_id": "DUMMY", + "daplink_version": "DUMMY" + } + return platform + def list_platforms(self): """! Useful if you just want to know which platforms are currently available on the system @return List of (unique values) available platforms From 73d878154e783326010c984cb6ea2811d0e9f8f9 Mon Sep 17 00:00:00 2001 From: Przemek Wirkus Date: Wed, 6 Jul 2016 17:06:13 +0100 Subject: [PATCH 2/3] Add static dummy_counter to create platform_name_unique in dummy device --- mbed_lstools/lstools_base.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/mbed_lstools/lstools_base.py b/mbed_lstools/lstools_base.py index 5846bc9..3bfb37c 100644 --- a/mbed_lstools/lstools_base.py +++ b/mbed_lstools/lstools_base.py @@ -398,8 +398,12 @@ def list_mbeds_ext(self): def get_dummy_platform(self, platform_name): """! Returns simple dummy platform """ + if not hasattr(self, "dummy_counter"): + self.dummy_counter = 0 + platform = { "platform_name": platform_name, + "platform_name_unique": "%s[%d]"% (platform_name, self.dummy_counter), "mount_point": "DUMMY", "serial_port": "DUMMY", "target_id": "DUMMY", @@ -407,6 +411,7 @@ def get_dummy_platform(self, platform_name): "target_id_usb_id": "DUMMY", "daplink_version": "DUMMY" } + self.dummy_counter += 1 return platform def list_platforms(self): From 124b69690121c1e5823d918de0e3891f36de052d Mon Sep 17 00:00:00 2001 From: Przemek Wirkus Date: Wed, 6 Jul 2016 17:21:07 +0100 Subject: [PATCH 3/3] Add unique dictionary to count unique dummy platform names Add basic unit tests --- mbed_lstools/lstools_base.py | 9 ++++++--- test/listing.py | 13 +++++++++++++ 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/mbed_lstools/lstools_base.py b/mbed_lstools/lstools_base.py index 3bfb37c..ab327ad 100644 --- a/mbed_lstools/lstools_base.py +++ b/mbed_lstools/lstools_base.py @@ -399,11 +399,14 @@ def list_mbeds_ext(self): def get_dummy_platform(self, platform_name): """! Returns simple dummy platform """ if not hasattr(self, "dummy_counter"): - self.dummy_counter = 0 + self.dummy_counter = {} # platform: counter + + if platform_name not in self.dummy_counter: + self.dummy_counter[platform_name] = 0 platform = { "platform_name": platform_name, - "platform_name_unique": "%s[%d]"% (platform_name, self.dummy_counter), + "platform_name_unique": "%s[%d]"% (platform_name, self.dummy_counter[platform_name]), "mount_point": "DUMMY", "serial_port": "DUMMY", "target_id": "DUMMY", @@ -411,7 +414,7 @@ def get_dummy_platform(self, platform_name): "target_id_usb_id": "DUMMY", "daplink_version": "DUMMY" } - self.dummy_counter += 1 + self.dummy_counter[platform_name] += 1 return platform def list_platforms(self): diff --git a/test/listing.py b/test/listing.py index 066f937..9ddecae 100644 --- a/test/listing.py +++ b/test/listing.py @@ -68,6 +68,7 @@ def test_list_mbeds_ext_mandatory_fields_exist(self): mbeds = self.mbeds.list_mbeds_ext() for mbed in mbeds: self.assertIn('platform_name_unique', mbed) + self.assertIn('daplink_version', mbed) def test_list_platforms(self): platforms = self.mbeds.list_platforms() @@ -83,6 +84,18 @@ def test_list_platforms_ext(self): self.assertIs(type(platforms[p]), int) self.assertTrue(type(platforms[p]) >= 0) + def test_get_dummy_platform(self): + p = self.mbeds.get_dummy_platform('K64F') + self.assertIs(type(p), dict) + + self.assertIn('platform_name', p) + self.assertIn('platform_name_unique', p) + self.assertIn('target_id', p) + self.assertIn('mount_point', p) + self.assertIn('serial_port', p) + self.assertIn('target_id_mbed_htm', p) + self.assertIn('target_id_usb_id', p) + self.assertIn('daplink_version', p) if __name__ == '__main__': unittest.main()