Skip to content

Commit 45e6345

Browse files
Merge pull request #271 from bridadan/add_retarget_logging_coverage
Add test for missing retarget coverage
2 parents 51e3d74 + 929fcbe commit 45e6345

File tree

1 file changed

+38
-1
lines changed

1 file changed

+38
-1
lines changed

test/mbedls_toolsbase.py

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,9 @@
2121
import errno
2222
import logging
2323
import re
24-
from mock import patch
24+
import json
25+
from io import StringIO
26+
from mock import patch, mock_open
2527
from copy import deepcopy
2628

2729
from mbed_lstools.lstools_base import MbedLsToolsBase, FSInteraction
@@ -188,5 +190,40 @@ def test_fs_before(self):
188190
self.assertIsNone(ret)
189191
_read_htm.assert_called_with(device['mount_point'])
190192

193+
class RetargetTestCase(unittest.TestCase):
194+
""" Test cases that makes use of retargetting
195+
"""
196+
197+
def setUp(self):
198+
retarget_data = {
199+
'0240DEADBEEF': {
200+
'serial_port' : 'valid'
201+
}
202+
}
203+
204+
_open = mock_open(read_data=json.dumps(retarget_data))
205+
206+
with patch('os.path.isfile') as _isfile,\
207+
patch('mbed_lstools.lstools_base.open', _open):
208+
self.base = DummyLsTools()
209+
_open.assert_called()
210+
211+
def tearDown(self):
212+
pass
213+
214+
def test_list_mbeds_valid_platform(self):
215+
self.base.return_value = [{'mount_point': 'dummy_mount_point',
216+
'target_id_usb_id': u'0240DEADBEEF',
217+
'serial_port': None}]
218+
with patch('mbed_lstools.lstools_base.MbedLsToolsBase._read_htm_ids') as _read_htm,\
219+
patch('mbed_lstools.lstools_base.MbedLsToolsBase.mount_point_ready') as _mpr,\
220+
patch('mbed_lstools.lstools_base.PlatformDatabase.get') as _get:
221+
_mpr.return_value = True
222+
_read_htm.return_value = (u'0240DEADBEEF', {})
223+
_get.return_value = 'foo_target'
224+
to_check = self.base.list_mbeds()
225+
self.assertEqual(len(to_check), 1)
226+
self.assertEqual(to_check[0]['serial_port'], 'valid')
227+
191228
if __name__ == '__main__':
192229
unittest.main()

0 commit comments

Comments
 (0)