diff options
author | W. Trevor King <wking@drexel.edu> | 2008-11-25 15:47:19 -0500 |
---|---|---|
committer | W. Trevor King <wking@drexel.edu> | 2008-11-25 15:47:19 -0500 |
commit | 5699aef2a5741c5ffc24d9cb12d6bc9b085d484a (patch) | |
tree | 84ac8783ce2d1f9a28ba0bd0c256ae7179c68507 /becommands/set.py | |
parent | ed4d971d1375a692fbd3a394237f56e851bb5d0e (diff) | |
download | bugseverywhere-5699aef2a5741c5ffc24d9cb12d6bc9b085d484a.tar.gz |
Added libbe/encoding.py to wrap input/output/file access appropriately.
I borrowed most of the code for this.
get_encoding() is from Trac
http://trac.edgewall.org/browser/trunk/trac/util/datefmt.py
format_datetime()
Trac has a BSD license
http://trac.edgewall.org/wiki/TracLicense
I don't know if such a small snippet requires us to "reproduce the
above copyright" or where we need to reproduce it if it is needed.
The stdout/stdin replacement code follows
http://wiki.python.org/moin/ShellRedirectionFails
Because of the stdout replacement, the doctests executes now need an
optional 'test' argument to turn off replacement during the doctests,
otherwise doctest flips out (since it had set up stdout to catch
output, and then we clobbered it's setup).
References:
http://wiki.python.org/moin/Unicode
http://www.amk.ca/python/howto/unicode
http://www.python.org/dev/peps/pep-0100/
I also split libbe/editor.py off from libbe.utility.py and started
explaining the motivation for the BugDir init flags in it's docstring.
Diffstat (limited to 'becommands/set.py')
-rw-r--r-- | becommands/set.py | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/becommands/set.py b/becommands/set.py index 24011f0..3904262 100644 --- a/becommands/set.py +++ b/becommands/set.py @@ -18,25 +18,24 @@ from libbe import cmdutil, bugdir __desc__ = __doc__ -def execute(args): +def execute(args, test=False): """ >>> import os >>> bd = bugdir.simple_bug_dir() >>> os.chdir(bd.root) - >>> execute(["target"]) + >>> execute(["target"], test=True) None - >>> execute(["target", "tomorrow"]) - >>> execute(["target"]) + >>> execute(["target", "tomorrow"], test=True) + >>> execute(["target"], test=True) tomorrow - >>> execute(["target", "none"]) - >>> execute(["target"]) + >>> execute(["target", "none"], test=True) + >>> execute(["target"], test=True) None """ options, args = get_parser().parse_args(args) if len(args) > 2: - help() - raise cmdutil.UserError("Too many arguments.") - bd = bugdir.BugDir(from_disk=True) + raise cmdutil.UsageError, "Too many arguments" + bd = bugdir.BugDir(from_disk=True, manipulate_encodings=not test) if len(args) == 0: keys = bd.settings.keys() keys.sort() |