def get_plugin_caps(methods=None): if not methods: methods = ['CopyMethod', 'ResetMethod'] result = {} for method in methods: result[method] = host_tests_plugins.get_plugin_caps(method) return result
def cmd_parser_setup(): """! Creates simple command line parser """ parser = optparse.OptionParser() parser.add_option('-f', '--file', dest='filename', help='File to flash onto mbed device') parser.add_option("-d", "--disk", dest="disk", help="Target disk (mount point) path. Example: F:, /mnt/MBED", metavar="DISK_PATH") copy_methods_str = "Plugin support: " + ', '.join(host_tests_plugins.get_plugin_caps('CopyMethod')) parser.add_option("-c", "--copy", dest="copy_method", default='shell', help="Copy (flash the target) method selector. " + copy_methods_str, metavar="COPY_METHOD") parser.add_option('', '--plugins', dest='list_plugins', default=False, action="store_true", help='Prints registered plugins and exits') parser.add_option('', '--version', dest='version', default=False, action="store_true", help='Prints package version and exits') parser.description = """Flash mbed devices from command line.""" \ """This module is using build in to mbed-host-tests plugins used for flashing mbed devices""" parser.epilog = """Example: mbedflsh -d E: -f /path/to/file.bin""" (opts, args) = parser.parse_args() return (opts, args)
def init_host_test_cli_params(): """! Function creates CLI parser object and returns populated options object. @return Function returns 'options' object returned from OptionParser class @details Options object later can be used to populate host test selector script. """ parser = OptionParser() parser.add_option("-m", "--micro", dest="micro", help="Target microcontroller name", metavar="MICRO") parser.add_option("-p", "--port", dest="port", help="Serial port of the target", metavar="PORT") parser.add_option("-d", "--disk", dest="disk", help="Target disk (mount point) path", metavar="DISK_PATH") parser.add_option("-f", "--image-path", dest="image_path", help="Path with target's binary image", metavar="IMAGE_PATH") copy_methods_str = "Plugin support: " + ', '.join(host_tests_plugins.get_plugin_caps('CopyMethod')) parser.add_option("-c", "--copy", dest="copy_method", help="Copy (flash the target) method selector. " + copy_methods_str, metavar="COPY_METHOD") reset_methods_str = "Plugin support: " + ', '.join(host_tests_plugins.get_plugin_caps('ResetMethod')) parser.add_option("-r", "--reset", dest="forced_reset_type", help="Forces different type of reset. " + reset_methods_str) parser.add_option("-C", "--program_cycle_s", dest="program_cycle_s", help="Program cycle sleep. Define how many seconds you want wait after copying binary onto target", type="float", metavar="PROGRAM_CYCLE_S") parser.add_option("-R", "--reset-timeout", dest="forced_reset_timeout", metavar="NUMBER", type="int", help="When forcing a reset using option -r you can set up after reset idle delay in seconds") parser.add_option("-e", "--enum-host-tests", dest="enum_host_tests", help="Define directory with local host tests") parser.add_option('', '--test-cfg', dest='json_test_configuration', help='Pass to host test class data about host test configuration') parser.add_option('', '--list', dest='list_reg_hts', default=False, action="store_true", help='Prints registered host test and exits') parser.add_option('', '--plugins', dest='list_plugins', default=False, action="store_true", help='Prints registered plugins and exits') parser.add_option('', '--run', dest='run_binary', default=False, action="store_true", help='Runs binary image on target (workflow: flash, reset, output console)') parser.add_option('', '--skip-flashing', dest='skip_flashing', default=False, action="store_true", help='Skips use of copy/flash plugin. Note: target will not be reflashed') parser.add_option('', '--skip-reset', dest='skip_reset', default=False, action="store_true", help='Skips use of reset plugin. Note: target will not be reset') parser.add_option('-b', '--send-break', dest='send_break_cmd', default=False, action="store_true", help='Send reset signal to board on specified port (-p PORT) and print serial output. You can combine this with (-r RESET_TYPE) switch') parser.add_option('-v', '--verbose', dest='verbose', default=False, action="store_true", help='More verbose mode') parser.add_option('', '--version', dest='version', default=False, action="store_true", help='Prints package version and exits') parser.description = """Flash, reset and perform host supervised tests on mbed platforms""" parser.epilog = """Example: mbedhtrun -d E: -p COM5 -f "test.bin" -C 4 -c shell -m K64F""" (options, _) = parser.parse_args() return options
def init_host_test_cli_params(): """! Function creates CLI parser object and returns populated options object. @return Function returns 'options' object returned from OptionParser class @details Options object later can be used to populate host test selector script. """ parser = OptionParser() parser.add_option("-m", "--micro", dest="micro", help="Target microcontroller name", metavar="MICRO") parser.add_option("-p", "--port", dest="port", help="Serial port of the target", metavar="PORT") parser.add_option("-d", "--disk", dest="disk", help="Target disk (mount point) path", metavar="DISK_PATH") parser.add_option("-f", "--image-path", dest="image_path", help="Path with target's binary image", metavar="IMAGE_PATH") copy_methods_str = "Plugin support: " + ', '.join( host_tests_plugins.get_plugin_caps('CopyMethod')) parser.add_option("-c", "--copy", dest="copy_method", help="Copy (flash the target) method selector. " + copy_methods_str, metavar="COPY_METHOD") reset_methods_str = "Plugin support: " + ', '.join( host_tests_plugins.get_plugin_caps('ResetMethod')) parser.add_option("-r", "--reset", dest="forced_reset_type", help="Forces different type of reset. " + reset_methods_str) parser.add_option( "-C", "--program_cycle_s", dest="program_cycle_s", help= "Program cycle sleep. Define how many seconds you want wait after copying binary onto target", type="float", metavar="PROGRAM_CYCLE_S") parser.add_option( "-R", "--reset-timeout", dest="forced_reset_timeout", metavar="NUMBER", type="int", help= "When forcing a reset using option -r you can set up after reset idle delay in seconds" ) parser.add_option("-e", "--enum-host-tests", dest="enum_host_tests", help="Define directory with local host tests") parser.add_option( '', '--test-cfg', dest='json_test_configuration', help='Pass to host test class data about host test configuration') parser.add_option('', '--list', dest='list_reg_hts', default=False, action="store_true", help='Prints registered host test and exits') parser.add_option('', '--plugins', dest='list_plugins', default=False, action="store_true", help='Prints registered plugins and exits') parser.add_option( '', '--run', dest='run_binary', default=False, action="store_true", help= 'Runs binary image on target (workflow: flash, reset, output console)') parser.add_option( '', '--skip-flashing', dest='skip_flashing', default=False, action="store_true", help= 'Skips use of copy/flash plugin. Note: target will not be reflashed') parser.add_option( '', '--skip-reset', dest='skip_reset', default=False, action="store_true", help='Skips use of reset plugin. Note: target will not be reset') parser.add_option( '-b', '--send-break', dest='send_break_cmd', default=False, action="store_true", help= 'Send reset signal to board on specified port (-p PORT) and print serial output. You can combine this with (-r RESET_TYPE) switch' ) parser.add_option('-v', '--verbose', dest='verbose', default=False, action="store_true", help='More verbose mode') parser.add_option('', '--version', dest='version', default=False, action="store_true", help='Prints package version and exits') parser.description = """Flash, reset and perform host supervised tests on mbed platforms""" parser.epilog = """Example: mbedhtrun -d E: -p COM5 -f "test.bin" -C 4 -c shell -m K64F""" (options, _) = parser.parse_args() return options