From c022901e2e839ba309a38c5b83275d4cda282a77 Mon Sep 17 00:00:00 2001 From: Doug Hellmann Date: Fri, 22 Jul 2016 17:37:30 -0400 Subject: [PATCH] use Config instead of individual args with parameters Instead of passing an increasing number of arguments around through the system, set up the Config instance correctly and use it. Also make the reporoot a required argument for Config, and let the release note subdirectory be an optional argument with a default. Change-Id: I5fc6358bb496f44e3fd68c89ad71b06067dd7425 Signed-off-by: Doug Hellmann --- reno/cache.py | 31 ++----- reno/config.py | 16 ++-- reno/lister.py | 9 +-- reno/loader.py | 42 +++------- reno/main.py | 2 +- reno/report.py | 10 +-- reno/scanner.py | 19 ++--- reno/sphinxext.py | 14 +--- reno/tests/test_cache.py | 8 +- reno/tests/test_config.py | 5 +- reno/tests/test_formatter.py | 8 +- reno/tests/test_loader.py | 7 +- reno/tests/test_scanner.py | 153 +++++++++-------------------------- 13 files changed, 92 insertions(+), 232 deletions(-) diff --git a/reno/cache.py b/reno/cache.py index 18fc2de..c31ca88 100644 --- a/reno/cache.py +++ b/reno/cache.py @@ -17,16 +17,10 @@ import yaml from reno import loader from reno import scanner -from reno import utils -def build_cache_db(reporoot, notesdir, branch, collapse_pre_releases, - versions_to_include, earliest_version): - notes = scanner.get_notes_by_version( - reporoot, notesdir, branch, - collapse_pre_releases=collapse_pre_releases, - earliest_version=earliest_version, - ) +def build_cache_db(conf, versions_to_include): + notes = scanner.get_notes_by_version(conf) # Default to including all versions returned by the scanner. if not versions_to_include: @@ -38,7 +32,7 @@ def build_cache_db(reporoot, notesdir, branch, collapse_pre_releases, for version in versions_to_include: for filename, sha in notes[version]: body = scanner.get_file_at_commit( - reporoot, + conf.reporoot, filename, sha, ) @@ -60,8 +54,7 @@ def build_cache_db(reporoot, notesdir, branch, collapse_pre_releases, return cache -def write_cache_db(reporoot, notesdir, branch, collapse_pre_releases, - versions_to_include, earliest_version, +def write_cache_db(conf, versions_to_include, outfilename=None): """Create a cache database file for the release notes data. @@ -82,19 +75,15 @@ def write_cache_db(reporoot, notesdir, branch, collapse_pre_releases, stream = open(outfilename, 'w') close_stream = True else: - outfilename = loader.get_cache_filename(reporoot, notesdir) + outfilename = loader.get_cache_filename(conf.reporoot, conf.notespath) if not os.path.exists(os.path.dirname(outfilename)): os.makedirs(os.path.dirname(outfilename)) stream = open(outfilename, 'w') close_stream = True try: cache = build_cache_db( - reporoot=reporoot, - notesdir=notesdir, - branch=branch, - collapse_pre_releases=collapse_pre_releases, + conf, versions_to_include=versions_to_include, - earliest_version=earliest_version, ) yaml.safe_dump( cache, @@ -110,15 +99,9 @@ def write_cache_db(reporoot, notesdir, branch, collapse_pre_releases, def cache_cmd(args, conf): "Generates a release notes cache" - reporoot = conf.reporoot - notesdir = utils.get_notes_dir(conf) write_cache_db( - reporoot=reporoot, - notesdir=notesdir, - branch=conf.branch, - collapse_pre_releases=conf.collapse_pre_releases, + conf=conf, versions_to_include=args.version, - earliest_version=conf.earliest_version, outfilename=args.output, ) return diff --git a/reno/config.py b/reno/config.py index 4bd6fa7..d1af5f2 100644 --- a/reno/config.py +++ b/reno/config.py @@ -14,6 +14,8 @@ import os.path import yaml +from reno import defaults + LOG = logging.getLogger(__name__) @@ -22,9 +24,6 @@ class Config(object): _FILENAME = 'config.yaml' _OPTS = { - # The root directory of the git repository to scan. - 'reporoot': './', - # The notes subdirectory within the relnotesdir where the # notes live. 'notesdir': 'notes', @@ -51,18 +50,23 @@ class Config(object): except KeyError: raise ValueError('unknown option name %r' % (opt,)) - def __init__(self, relnotesdir): + def __init__(self, reporoot, relnotesdir=defaults.RELEASE_NOTES_SUBDIR): """Instantiate a Config object + :param str reporoot: + The root directory of the repository. :param str relnotesdir: - The directory containing release notes. + The directory containing release notes. Defaults to + 'releasenotes'. """ + self.reporoot = reporoot self.relnotesdir = relnotesdir # Initialize attributes from the defaults. self.override(**self._OPTS) - self._filename = os.path.join(relnotesdir, self._FILENAME) + self._filename = os.path.join(self.reporoot, relnotesdir, + self._FILENAME) self._contents = {} self._load_file() diff --git a/reno/lister.py b/reno/lister.py index 45618b6..aa1ec4d 100644 --- a/reno/lister.py +++ b/reno/lister.py @@ -23,14 +23,7 @@ def list_cmd(args, conf): "List notes files based on query arguments" LOG.debug('starting list') reporoot = conf.reporoot - collapse = conf.collapse_pre_releases - ldr = loader.Loader( - reporoot=reporoot, - branch=conf.branch, - collapse_pre_releases=collapse, - earliest_version=conf.earliest_version, - conf=conf, - ) + ldr = loader.Loader(conf) if args.version: versions = args.version else: diff --git a/reno/loader.py b/reno/loader.py index fa8f28f..036e73c 100644 --- a/reno/loader.py +++ b/reno/loader.py @@ -28,11 +28,8 @@ def get_cache_filename(reporoot, notesdir): class Loader(object): "Load the release notes for a given repository." - def __init__(self, reporoot, branch=None, - collapse_pre_releases=True, - earliest_version=None, - ignore_cache=False, - conf=None): + def __init__(self, conf, + ignore_cache=False): """Initialize a Loader. The versions are presented in reverse chronological order. @@ -40,31 +37,24 @@ class Loader(object): Notes files are associated with the earliest version for which they were available, regardless of whether they changed later. - :param reporoot: Path to the root of the git repository. - :type reporoot: str - :param branch: The name of the branch to scan. Defaults to current. - :type branch: str - :param collapse_pre_releases: When true, merge pre-release versions - into the final release, if it is present. - :type collapse_pre_releases: bool - :param earliest_version: The oldest version to include. - :type earliest_version: str - :param ignore_cache: Do not load a cache file if it is present. - :type ignore_cache: bool :param conf: Parsed configuration from file :type conf: reno.config.Config + :param ignore_cache: Do not load a cache file if it is present. + :type ignore_cache: bool """ - self._reporoot = reporoot - self._notespath = conf.notespath - self._branch = branch self._config = conf - self._collapse_pre_releases = self._config.collapse_pre_releases - self._earliest_version = self._config.earliest_version self._ignore_cache = ignore_cache + self._reporoot = conf.reporoot + self._notespath = conf.notespath + self._branch = conf.branch + self._collapse_pre_releases = conf.collapse_pre_releases + self._earliest_version = conf.earliest_version + self._cache = None self._scanner_output = None - self._cache_filename = get_cache_filename(reporoot, self._notespath) + self._cache_filename = get_cache_filename(self._reporoot, + self._notespath) self._load_data() @@ -85,13 +75,7 @@ class Loader(object): for n in self._cache['notes'] } else: - self._scanner_output = scanner.get_notes_by_version( - reporoot=self._reporoot, - notesdir=self._notespath, - branch=self._branch, - collapse_pre_releases=self._collapse_pre_releases, - earliest_version=self._earliest_version, - ) + self._scanner_output = scanner.get_notes_by_version(self._config) @property def versions(self): diff --git a/reno/main.py b/reno/main.py index 01eac0f..3888692 100644 --- a/reno/main.py +++ b/reno/main.py @@ -136,7 +136,7 @@ def main(argv=sys.argv[1:]): do_cache.set_defaults(func=cache.cache_cmd) args = parser.parse_args(argv) - conf = config.Config(args.relnotesdir) + conf = config.Config(args.reporoot, args.relnotesdir) conf.override_from_parsed_args(args) logging.basicConfig( diff --git a/reno/report.py b/reno/report.py index eb55eb6..e59520f 100644 --- a/reno/report.py +++ b/reno/report.py @@ -18,15 +18,7 @@ from reno import loader def report_cmd(args, conf): "Generates a release notes report" - reporoot = conf.reporoot - collapse = conf.collapse_pre_releases - ldr = loader.Loader( - reporoot=reporoot, - branch=conf.branch, - collapse_pre_releases=collapse, - earliest_version=conf.earliest_version, - conf=conf, - ) + ldr = loader.Loader(conf) if args.version: versions = args.version else: diff --git a/reno/scanner.py b/reno/scanner.py index 8f41065..4f8525f 100644 --- a/reno/scanner.py +++ b/reno/scanner.py @@ -149,9 +149,7 @@ def _get_version_tags_on_branch(reporoot, branch): return tags -def get_notes_by_version(reporoot, notesdir, branch=None, - collapse_pre_releases=True, - earliest_version=None): +def get_notes_by_version(conf): """Return an OrderedDict mapping versions to lists of notes files. The versions are presented in reverse chronological order. @@ -161,15 +159,12 @@ def get_notes_by_version(reporoot, notesdir, branch=None, :param reporoot: Path to the root of the git repository. :type reporoot: str - :param notesdir: The directory under *reporoot* with the release notes. - :type notesdir: str - :param branch: The name of the branch to scan. Defaults to current. - :type branch: str - :param collapse_pre_releases: When true, merge pre-release versions - into the final release, if it is present. - :type collapse_pre_releases: bool """ + reporoot = conf.reporoot + notesdir = conf.notespath + branch = conf.branch + LOG.debug('scanning %s/%s (branch=%s)' % (reporoot, notesdir, branch)) # Determine all of the tags known on the branch, in their date @@ -324,7 +319,7 @@ def get_notes_by_version(reporoot, notesdir, branch=None, # Combine pre-releases into the final release, if we are told to # and the final release exists. - if collapse_pre_releases: + if conf.collapse_pre_releases: collapsing = files_and_tags files_and_tags = collections.OrderedDict() for ov in versions_by_date: @@ -370,7 +365,7 @@ def get_notes_by_version(reporoot, notesdir, branch=None, trimmed[ov] = sorted(files_and_tags[ov]) # If we have been told to stop at a version, we can do that # now. - if earliest_version and ov == earliest_version: + if conf.earliest_version and ov == conf.earliest_version: break LOG.debug('[reno] found %d versions and %d files', diff --git a/reno/sphinxext.py b/reno/sphinxext.py index 8dc5ef0..8bff0d6 100644 --- a/reno/sphinxext.py +++ b/reno/sphinxext.py @@ -51,10 +51,8 @@ class ReleaseNotesDirective(rst.Directive): reporoot = os.path.abspath(reporoot_opt) relnotessubdir = self.options.get('relnotessubdir', defaults.RELEASE_NOTES_SUBDIR) - conf = config.Config(relnotessubdir) - opt_overrides = { - 'reporoot': reporoot, - } + conf = config.Config(reporoot, relnotessubdir) + opt_overrides = {} if 'notesdir' in self.options: opt_overrides['notesdir'] = self.options.get('notesdir') version_opt = self.options.get('version') @@ -72,13 +70,7 @@ class ReleaseNotesDirective(rst.Directive): (os.path.join(conf.reporoot, notesdir), branch or 'current branch')) - ldr = loader.Loader( - reporoot=conf.reporoot, - branch=branch, - collapse_pre_releases=conf.collapse_pre_releases, - earliest_version=conf.earliest_version, - conf=conf, - ) + ldr = loader.Loader(conf) if version_opt is not None: versions = [ v.strip() diff --git a/reno/tests/test_cache.py b/reno/tests/test_cache.py index 794d85e..e62d85a 100644 --- a/reno/tests/test_cache.py +++ b/reno/tests/test_cache.py @@ -18,6 +18,7 @@ import mock from oslotest import mockpatch from reno import cache +from reno import config from reno.tests import base @@ -53,17 +54,14 @@ class TestCache(base.TestCase): mockpatch.Patch('reno.scanner.get_file_at_commit', new=self._get_note_body) ) + self.c = config.Config('.') def test_build_cache_db(self): with mock.patch('reno.scanner.get_notes_by_version') as gnbv: gnbv.return_value = self.scanner_output db = cache.build_cache_db( - reporoot=None, - notesdir=None, - branch=None, - collapse_pre_releases=True, + self.c, versions_to_include=[], - earliest_version=None, ) expected = { 'notes': [ diff --git a/reno/tests/test_config.py b/reno/tests/test_config.py index 2208d76..313f537 100644 --- a/reno/tests/test_config.py +++ b/reno/tests/test_config.py @@ -78,7 +78,10 @@ collapse_pre_releases: false self.assertEqual(1, logger.call_count) def test_load_file(self): - config_path = self.tempdir.join(config.Config._FILENAME) + rn_path = self.tempdir.join('releasenotes') + os.mkdir(rn_path) + config_path = self.tempdir.join('releasenotes/' + + config.Config._FILENAME) with open(config_path, 'w') as fd: fd.write(self.EXAMPLE_CONFIG) self.addCleanup(os.unlink, config_path) diff --git a/reno/tests/test_formatter.py b/reno/tests/test_formatter.py index 22c52a9..42dc52c 100644 --- a/reno/tests/test_formatter.py +++ b/reno/tests/test_formatter.py @@ -59,14 +59,12 @@ class TestFormatter(base.TestCase): 'file-contents': self.note_bodies } + self.c = config.Config('reporoot') + with mock.patch('reno.loader.Loader._load_data', _load): self.ldr = loader.Loader( - reporoot='reporoot', - branch=None, - collapse_pre_releases=None, - earliest_version=None, + self.c, ignore_cache=False, - conf=config.Config('reporoot/releasenotes'), ) def test_with_title(self): diff --git a/reno/tests/test_loader.py b/reno/tests/test_loader.py index 3ae6d3b..8ca9cf8 100644 --- a/reno/tests/test_loader.py +++ b/reno/tests/test_loader.py @@ -41,6 +41,7 @@ class TestValidate(base.TestCase): level=logging.WARNING, ) ) + self.c = config.Config('reporoot') def _make_loader(self, note_bodies): def _load(ldr): @@ -51,12 +52,8 @@ class TestValidate(base.TestCase): with mock.patch('reno.loader.Loader._load_data', _load): return loader.Loader( - reporoot='reporoot', - branch=None, - collapse_pre_releases=None, - earliest_version=None, + self.c, ignore_cache=False, - conf=config.Config('reporoot/releasenotes'), ) def test_prelude_list(self): diff --git a/reno/tests/test_scanner.py b/reno/tests/test_scanner.py index abafc4d..a0982ad 100644 --- a/reno/tests/test_scanner.py +++ b/reno/tests/test_scanner.py @@ -23,6 +23,7 @@ import fixtures import mock from testtools.content import text_content +from reno import config from reno import create from reno import scanner from reno.tests import base @@ -179,10 +180,7 @@ class Base(base.TestCase): self.useFixture(fixtures.NestedTempfile()) self.temp_dir = self.useFixture(fixtures.TempDir()).path self.reporoot = os.path.join(self.temp_dir, 'reporoot') - self.notesdir = os.path.join(self.reporoot, - 'releasenotes', - 'notes', - ) + self.c = config.Config(self.reporoot) self._git_setup() self._counter = itertools.count(1) self.get_note_num = lambda: next(self._counter) @@ -192,10 +190,7 @@ class BasicTest(Base): def test_non_python_no_tags(self): filename = self._add_notes_file() - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -208,10 +203,7 @@ class BasicTest(Base): def test_python_no_tags(self): self._make_python_package() filename = self._add_notes_file() - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -225,10 +217,7 @@ class BasicTest(Base): filename = self._add_notes_file() self._add_other_file('not-a-release-note.txt') self._run_git('tag', '-s', '-m', 'first tag', '1.0.0') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -241,10 +230,7 @@ class BasicTest(Base): def test_note_commit_tagged(self): filename = self._add_notes_file() self._run_git('tag', '-s', '-m', 'first tag', '1.0.0') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -258,10 +244,7 @@ class BasicTest(Base): self._make_python_package() self._run_git('tag', '-s', '-m', 'first tag', '1.0.0') filename = self._add_notes_file() - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -276,10 +259,7 @@ class BasicTest(Base): self._add_other_file('ignore-1.txt') self._run_git('tag', '-s', '-m', 'first tag', '1.0.0') self._add_other_file('ignore-2.txt') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -294,10 +274,7 @@ class BasicTest(Base): self._run_git('tag', '-s', '-m', 'first tag', '1.0.0') f1 = self._add_notes_file() f2 = self._add_notes_file() - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -312,10 +289,7 @@ class BasicTest(Base): f1 = self._add_notes_file(commit=False) f2 = self._add_notes_file() self._run_git('tag', '-s', '-m', 'first tag', '1.0.0') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -331,10 +305,7 @@ class BasicTest(Base): f1 = self._add_notes_file() self._run_git('tag', '-s', '-m', 'first tag', '2.0.0') f2 = self._add_notes_file() - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -354,10 +325,7 @@ class BasicTest(Base): f2 = f1.replace('slug1', 'slug2') self._run_git('mv', f1, f2) self._git_commit('rename note file') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -376,10 +344,7 @@ class BasicTest(Base): f2 = f1.replace('slug1', 'slug0') self._run_git('mv', f1, f2) self._git_commit('rename note file') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -398,10 +363,7 @@ class BasicTest(Base): with open(os.path.join(self.reporoot, f1), 'w') as f: f.write('---\npreamble: new contents for file') self._git_commit('edit note file') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -420,10 +382,7 @@ class BasicTest(Base): f2 = f1.replace('slug1', 'slug2') self._run_git('mv', f1, f2) self._git_commit('rename note file') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -445,10 +404,7 @@ class BasicTest(Base): 'slug1-0000000000000001') self._run_git('mv', f1, f2) self._git_commit('rename note file') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -467,11 +423,10 @@ class BasicTest(Base): self._run_git('tag', '-s', '-m', 'middle tag', '2.0.0') f3 = self._add_notes_file() self._run_git('tag', '-s', '-m', 'last tag', '3.0.0') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', + self.c.override( earliest_version='2.0.0', ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -491,10 +446,7 @@ class BasicTest(Base): self._run_git('rm', f1) self._git_commit('remove note file') self._run_git('tag', '-s', '-m', 'first tag', '2.0.0') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -516,10 +468,7 @@ class BasicTest(Base): self._git_commit('remove note file') f3 = self._add_notes_file('slug3') self._run_git('tag', '-s', '-m', 'first tag', '2.0.0') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -538,10 +487,7 @@ class PreReleaseTest(Base): self._run_git('tag', '-s', '-m', 'first tag', '1.0.0.0a1') f1 = self._add_notes_file('slug1') self._run_git('tag', '-s', '-m', 'first tag', '1.0.0.0a2') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -557,10 +503,7 @@ class PreReleaseTest(Base): self._run_git('tag', '-s', '-m', 'first tag', '1.0.0.0b1') f1 = self._add_notes_file('slug1') self._run_git('tag', '-s', '-m', 'first tag', '1.0.0.0b2') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -576,10 +519,7 @@ class PreReleaseTest(Base): self._run_git('tag', '-s', '-m', 'first tag', '1.0.0.0rc1') f1 = self._add_notes_file('slug1') self._run_git('tag', '-s', '-m', 'first tag', '1.0.0.0rc2') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -601,11 +541,10 @@ class PreReleaseTest(Base): self._run_git('tag', '-s', '-m', 'release candidate tag', '1.0.0.0rc1') files.append(self._add_notes_file('slug4')) self._run_git('tag', '-s', '-m', 'full release tag', '1.0.0') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', + self.c.override( collapse_pre_releases=True, ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -624,11 +563,10 @@ class PreReleaseTest(Base): self._run_git('tag', '-s', '-m', 'beta tag', '1.0.0.0b1') f3 = self._add_notes_file('slug3') self._run_git('tag', '-s', '-m', 'release candidate tag', '1.0.0.0rc1') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', + self.c.override( collapse_pre_releases=True, ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -650,11 +588,10 @@ class PreReleaseTest(Base): self._run_git('tag', '-s', '-m', 'beta tag', '1.0.0.0b1') f3 = self._add_notes_file('slug3') self._run_git('tag', '-s', '-m', 'release candidate tag', '1.0.0.0rc1') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', + self.c.override( collapse_pre_releases=True, ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -682,10 +619,7 @@ class MergeCommitTest(Base): self._run_git('merge', '--no-ff', 'test_merge_commit') self._add_other_file('ignore-2.txt') self._run_git('tag', '-s', '-m', 'second tag', '2.0.0') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -713,10 +647,7 @@ class MergeCommitTest(Base): self._run_git('merge', '--no-ff', 'test_merge_commit') self._add_other_file('ignore-2.txt') self._run_git('tag', '-s', '-m', 'second tag', '2.0.0') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -748,10 +679,7 @@ class MergeCommitTest(Base): self._add_other_file('ignore-2.txt') self._run_git('tag', '-s', '-m', 'third tag', '2.0.0') self._add_other_file('ignore-3.txt') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -787,10 +715,7 @@ class MergeCommitTest(Base): self._add_other_file('ignore-2.txt') self._run_git('tag', '-s', '-m', 'third tag', '2.0.0') self._add_other_file('ignore-3.txt') - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -840,10 +765,7 @@ class BranchTest(Base): f21 = self._add_notes_file('slug21') log_text = self._run_git('log') self.addDetail('git log', text_content(log_text)) - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items() @@ -865,11 +787,10 @@ class BranchTest(Base): log_text = self._run_git('log', '--pretty=%x00%H %d', '--name-only', 'stable/2') self.addDetail('git log', text_content(log_text)) - raw_results = scanner.get_notes_by_version( - self.reporoot, - 'releasenotes/notes', - 'stable/2', + self.c.override( + branch='stable/2', ) + raw_results = scanner.get_notes_by_version(self.c) results = { k: [f for (f, n) in v] for (k, v) in raw_results.items()