@task(help={<EOL>'<STR_LIT>': "<STR_LIT>",<EOL>'<STR_LIT>': "<STR_LIT>",<EOL>'<STR_LIT>': "<STR_LIT>",<EOL>'<STR_LIT>': "<STR_LIT>",<EOL>})<EOL>def tox(ctx, verbose=False, clean=False, env_list='<STR_LIT>', opts='<STR_LIT>'):
cfg = config.load()<EOL>add_dir2pypath(cfg.project_root)<EOL>snakepits = ctx.rituals.snakepits.split(os.pathsep)<EOL>cmd = []<EOL>snakepits = [i for i in snakepits if os.path.isdir(i)]<EOL>if snakepits:<EOL><INDENT>cmd += ['<STR_LIT>'.format(os.pathsep.join(snakepits),)]<EOL><DEDENT>if clean and os.path.exists(cfg.rootjoin('<STR_LIT>')):<EOL><INDENT>shutil.rmtree(cfg.rootjoin('<STR_LIT>'))<EOL><DEDENT>cmd += ['<STR_LIT>']<EOL>if verbose:<EOL><INDENT>cmd += ['<STR_LIT>']<EOL><DEDENT>if env_list:<EOL><INDENT>cmd += ['<STR_LIT>', env_list]<EOL><DEDENT>cmd += opts<EOL>ctx.run('<STR_LIT:U+0020>'.join(cmd))<EOL>
Perform multi-environment tests.