-
Notifications
You must be signed in to change notification settings - Fork 990
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix --notestendpt handling #86
Merged
Merged
Changes from 3 commits
Commits
Show all changes
4 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -431,7 +431,7 @@ def build_test_configurations(self, parent_test): | |
|
||
# Get target | ||
target = None | ||
target_required = not self._test_ep and not self._test_daplink | ||
target_required = self._test_ep | ||
if board_id in board_id_to_target: | ||
target = board_id_to_target[board_id] | ||
elif target_required: | ||
|
@@ -573,25 +573,32 @@ def main(): | |
use_prebuilt = args.targetdir is not None | ||
use_compile_api = args.user is not None and args.password is not None | ||
|
||
test_info = TestInfo('DAPLink') | ||
|
||
# Validate args | ||
|
||
# See if user wants to test endpoints. If yes and he didn't provide | ||
# target test binaries, use the Compile API to build them | ||
all_targets = None | ||
if not args.notestendpt: | ||
if not use_prebuilt and not use_compile_api: | ||
print("Endpoint test requires target test images.") | ||
print(" Directory with pre-build target test images") | ||
print(" Directory with pre-built target test images") | ||
print(" must be specified with '--targetdir'") | ||
print("OR") | ||
print(" Mbed login credentials '--user' and '--password' must") | ||
print(" be specified so test images can be built with") | ||
print(" the compile API.") | ||
exit(-1) | ||
|
||
firmware_explicitly_specified = len(args.firmware) != 0 | ||
test_info = TestInfo('DAPLink') | ||
if args.targetdir is not None: | ||
target_dir = args.targetdir | ||
else: | ||
target_dir = daplink_dir + os.sep + 'tmp' | ||
build_target_bundle(target_dir, args.user, args.password, test_info) | ||
|
||
if args.targetdir is not None: | ||
target_dir = args.targetdir | ||
else: | ||
target_dir = daplink_dir + os.sep + 'tmp' | ||
build_target_bundle(target_dir, args.user, args.password, test_info) | ||
|
||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Nitpick - trailing whitespace on line 579, 593 and 599 There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Good nitpick. I found four other lines with trailing whitespace. Cleanup pushed |
||
target_bundle = load_target_bundle(target_dir) | ||
all_targets = target_bundle.get_target_list() | ||
|
||
if os.path.exists(args.logdir): | ||
if args.force: | ||
|
@@ -606,10 +613,9 @@ def main(): | |
firmware_bundle = load_bundle_from_project() | ||
else: | ||
firmware_bundle = load_bundle_from_release(args.firmwaredir) | ||
target_bundle = load_target_bundle(target_dir) | ||
|
||
all_firmware = firmware_bundle.get_firmware_list() | ||
all_boards = get_all_attached_daplink_boards() | ||
all_targets = target_bundle.get_target_list() | ||
|
||
for board in all_boards: | ||
if board.get_mode() == board.MODE_BL: | ||
|
@@ -620,6 +626,7 @@ def main(): | |
print('Unable to switch mode on board: %s' % board.unique_id) | ||
|
||
# Make sure firmware is present | ||
firmware_explicitly_specified = len(args.firmware) != 0 | ||
if firmware_explicitly_specified: | ||
all_firmware_names = set(fw.name for fw in all_firmware) | ||
firmware_missing = False | ||
|
@@ -635,7 +642,8 @@ def main(): | |
tester = TestManager() | ||
tester.add_firmware(all_firmware) | ||
tester.add_boards(all_boards) | ||
tester.add_targets(all_targets) | ||
if all_targets is not None: | ||
tester.add_targets(all_targets) | ||
if firmware_explicitly_specified: | ||
tester.set_firmware_filter(args.firmware) | ||
|
||
|
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It might be better to raise and exception here or add a 'vaild' field rather than calling exit. That way the script using this is able to recover from an error rather than exiting
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thought about that but then noticed there are a number of exit(-1) calls in run_test.py. I was trying to be consistent. Are you saying to throw an exception so the calling function can continue if it wishes to?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
By script I meant run_test.py. Currently everything which uses exit() resides in run_test.py and isn't meant to be used outside that script. This is more of a nitpick so don't feel like it needs to change. If the need arises in the future to make this case recoverable then it can be changed later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sounds good. I will leave it as is. Doesn't seem like a recoverable error condition. Like you said, we can change that as needed
John