def test_customizer(self): def modify_usage(parser): parser.usage = (parser.usage or '') + 'hello' parser = ArgumentParser() assert parser.usage is None usage = Usage() usage.add_customizer(modify_usage) usage.apply(parser) assert parser.usage == 'hello' def modify_usage_2(parser): parser.usage = (parser.usage or '') + ' hi' usage_2 = Usage() usage_2.add_customizer(modify_usage_2) usage |= usage_2 parser = ArgumentParser() usage.apply(parser) assert parser.usage == 'hello hi'
:model str Noise model json file to write to :-b --bands str - A range/list of bands to listen for ''') def add_subparsers(parser: ArgumentParser): sp = parser.add_subparsers(dest='action') sp.required = True detect_usage.apply(sp.add_parser('detect')) collect_usage.apply(sp.add_parser('collect')) usage.add_customizer(add_subparsers) sample_rate = 16000 stride = 400 width = 4 num_bands = 257 chunk_seconds = stride / sample_rate DetectionData = namedtuple('DetectionData', 'volume bands') def parse_bands(s, m): s = re.sub(r'\s', '', s) if ',' in s: return sum([parse_bands(i, m) for i in s.split(',')], []) if '-' in s: