diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2018-02-25 07:34:57 -0500 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2018-02-25 07:34:57 -0500 |
commit | 3d8463e6a3e53fc2ad7e381f2f0f53d8bfeb7cd4 (patch) | |
tree | 7b186dd1e82e93f41448037e022375919bc463f0 /coverage/disposition.py | |
parent | 99b07c0c7265eb5ecd8efa15f8e57ac799eb7418 (diff) | |
download | python-coveragepy-3d8463e6a3e53fc2ad7e381f2f0f53d8bfeb7cd4.tar.gz |
Huge refactor of code out of control into inorout
Diffstat (limited to 'coverage/disposition.py')
-rw-r--r-- | coverage/disposition.py | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/coverage/disposition.py b/coverage/disposition.py new file mode 100644 index 0000000..e9b8ba6 --- /dev/null +++ b/coverage/disposition.py @@ -0,0 +1,37 @@ +# Licensed under the Apache License: http://www.apache.org/licenses/LICENSE-2.0 +# For details: https://bitbucket.org/ned/coveragepy/src/default/NOTICE.txt + +"""Simple value objects for tracking what to do with files.""" + + +class FileDisposition(object): + """A simple value type for recording what to do with a file.""" + pass + + +# FileDisposition "methods": FileDisposition is a pure value object, so it can +# be implemented in either C or Python. Acting on them is done with these +# functions. + +def disposition_init(cls, original_filename): + """Construct and initialize a new FileDisposition object.""" + disp = cls() + disp.original_filename = original_filename + disp.canonical_filename = original_filename + disp.source_filename = None + disp.trace = False + disp.reason = "" + disp.file_tracer = None + disp.has_dynamic_filename = False + return disp + + +def disposition_debug_msg(disp): + """Make a nice debug message of what the FileDisposition is doing.""" + if disp.trace: + msg = "Tracing %r" % (disp.original_filename,) + if disp.file_tracer: + msg += ": will be traced by %r" % disp.file_tracer + else: + msg = "Not tracing %r: %s" % (disp.original_filename, disp.reason) + return msg |