Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def test():
with plac.Interpreter(ishelve.main) as i:
i.check('.clear', 'cleared the shelve')
i.check('a=1', 'setting a=1')
i.check('a', '1')
i.check('.delete=a', 'deleted a')
i.check('a', 'a: not found')
def submit_tasks(self):
npoints = math.ceil(self.npoints / self.n_cpu)
self.i = plac.Interpreter(self).__enter__()
return [self.i.submit('calc_pi %d' % npoints)
for _ in range(self.n_cpu)]
baseparser = plac.parser_from(main)
if fname is None:
baseparser.print_help()
elif sys.argv[1] == fname: # script mode
plactool = plac.import_main(fname)
plactool.prog = os.path.basename(sys.argv[0]) + ' ' + fname
out = plac.call(plactool, sys.argv[2:], eager=False)
if plac.iterable(out):
for output in out:
print(output)
else:
print(out)
elif interactive or multiline or serve:
plactool = plac.import_main(fname, *extra)
plactool.prog = ''
i = plac.Interpreter(plactool)
if interactive:
i.interact(verbose=verbose)
elif multiline:
i.multiline(verbose=verbose)
elif serve:
i.start_server(serve)
elif batch:
run((fname,) + extra, 'execute', verbose)
elif test:
run((fname,) + extra, 'doctest', verbose)
print('run %s plac test(s)' % (len(extra) + 1))
else:
baseparser.print_usage()
main.add_help = False
def run(fnames, cmd, verbose):
"Run batch scripts and tests"
for fname in fnames:
with open(fname) as f:
lines = list(f)
if not lines[0].startswith('#!'):
sys.exit('Missing or incorrect shebang line!')
firstline = lines[0][2:] # strip the shebang
init_args = shlex.split(firstline)
tool = plac.import_main(*init_args)
command = getattr(plac.Interpreter(tool), cmd) # doctest or execute
if verbose:
sys.stdout.write('Running %s with %s' % (fname, firstline))
command(lines[1:], verbose=verbose)