# HG changeset patch
# User Georges Racinet <georges.racinet@octobus.net>
# Date 1606399242 -3600
#      Thu Nov 26 15:00:42 2020 +0100
# Node ID 5c10f022bea2789cff0d4525462936f12de61ca9
# Parent  d06c82eda802cf436d97b8de19e66d2b710503ba
Removed obsole migration scripts and their tests

diff --git a/conftest.py b/conftest.py
deleted file mode 100644
--- a/conftest.py
+++ /dev/null
@@ -1,45 +0,0 @@
-import attr
-import os
-import pytest
-import sys
-
-sys.path.insert(0,
-                os.path.join(os.path.dirname(__file__),
-                             'heptapod', 'assets'))
-
-
-@attr.s
-class Heptapod:
-    rails_root = attr.ib()
-    log_vol = attr.ib()
-    data_vol = attr.ib()
-
-    def migrator(self):
-        from heptapod_migr import HeptapodMigrator
-        return HeptapodMigrator(rails_root=str(self.rails_root),
-                                data_vol=str(self.data_vol),
-                                log_vol=str(self.log_vol))
-
-    @property
-    def git_data(self):
-        return self.data_vol.join('git-data')
-
-    @property
-    def repos_root(self):
-        return self.git_data.join('repositories')
-
-    def ensure_dirs(self):
-        self.git_data.ensure(dir=True)
-        self.repos_root.ensure(dir=True)
-
-
-@pytest.fixture()
-def heptapod(tmpdir):
-    data = tmpdir.ensure('var', dir=True)
-    log = tmpdir.ensure('log', dir=True)
-    rails = tmpdir.ensure('rails', dir=True)
-    heptapod = Heptapod(rails_root=rails,
-                        data_vol=data,
-                        log_vol=log)
-    heptapod.ensure_dirs()
-    yield heptapod
diff --git a/tests/test_migr_0_3.py b/tests/test_migr_0_3.py
deleted file mode 100644
--- a/tests/test_migr_0_3.py
+++ /dev/null
@@ -1,40 +0,0 @@
-def test_migr(heptapod):
-    rails = heptapod.rails_root
-    rails.join('HEPTAPOD_VERSION').write('0.3.1.dev')
-
-    migrator = heptapod.migrator()
-    repos_root = heptapod.repos_root
-    group_repo = repos_root.ensure('grp', 'repo', '.hg', dir=True)
-    subgroup_repo = repos_root.ensure('other', 'subgrp',
-                                      'repo', '.hg', dir=True)
-    nestedsubgroup_repo = repos_root.ensure('other', 'subgrp', 'nested',
-                                            'repo', '.hg', dir=True)
-    topl_repo = repos_root.ensure('top', '.hg', dir=True)
-    all_repos = (group_repo, subgroup_repo, nestedsubgroup_repo, topl_repo)
-    old_global_hgrc = repos_root.ensure('global_hgrc')
-    for repo in all_repos:
-        repo.join('hgrc').write("%include {}\n".format(old_global_hgrc))
-
-    migrator.pick_version_steps('0.3.0')
-    migrator.run_all()
-
-    for repo in all_repos:
-        assert repo.join('hgrc').read() == (
-            "%include /etc/gitlab/heptapod.hgrc\n")
-    assert not old_global_hgrc.check()
-
-
-def test_migr_unit_no_global_hgrc(heptapod):
-    """Don't fail if the previous global hgrc file has already been removed."""
-    migrator = heptapod.migrator()
-    migrator.migr_global_hgrc()
-
-
-def test_migr_unit_no_hgrc(heptapod):
-    """Don't fail the whole process if some repo has no hgrc.
-    """
-    migrator = heptapod.migrator()
-    repos_root = heptapod.repos_root
-    repos_root.ensure('global_hgrc')
-    repos_root.ensure('grp', 'repo', '.hg', dir=True)
-    migrator.migr_global_hgrc()
diff --git a/tests/test_migr_0_7.py b/tests/test_migr_0_7.py
deleted file mode 100644
--- a/tests/test_migr_0_7.py
+++ /dev/null
@@ -1,226 +0,0 @@
-def strip_comments_whitespace(lines):
-    return [l for l in (li.split('#', 1)[0].strip() for li in lines) if l]
-
-
-def test_migr_full(heptapod):
-    rails = heptapod.rails_root
-    rails.join('HEPTAPOD_VERSION').write('0.6.1')
-
-    migrator = heptapod.migrator()
-    repos_root = heptapod.repos_root
-    group_repo = repos_root.ensure('grp', 'repo', '.hg', dir=True)
-    hgrc = group_repo.join('hgrc')
-    hgrc_local = group_repo.join('hgrc.local')
-    hgrc.write('\n'.join((
-        "%include /etc/gitlab/heptapod.hgrc",
-        "",
-        "[extensions]",
-        "foo=/path/to/foo.py",
-        "",
-        "[heptapod]",
-        "mirror-path = git+ssh://grp/repo.git",
-        "",
-        "[phases]",
-        "publish=true",
-    )))
-
-    migrator.pick_version_steps('0.7.0.dev1')
-    migrator.run_all()
-
-    assert strip_comments_whitespace(hgrc_local.readlines()) == [
-        "%include ../../hgrc",
-        "[extensions]",
-        "foo=/path/to/foo.py",
-        "[phases]",
-        "publish=true",
-        ]
-
-    assert strip_comments_whitespace(hgrc.readlines()) == [
-        "%include /etc/gitlab/heptapod.hgrc",
-        "%include hgrc.local"
-        ]
-
-
-def test_migr_unit_no_hgrc(heptapod):
-    """Don't fail the whole process if some repo has no hgrc.
-    """
-    migrator = heptapod.migrator()
-    repos_root = heptapod.repos_root
-    repos_root.ensure('grp', 'repo', '.hg', dir=True)
-    migrator.migr_default_git_sync()
-
-
-def test_migr_existing_include(heptapod):
-    """Previsously set includes have to preserved.
-
-    This is how before the group HGRCs users may have factorized
-    configuration over several repos (I did).
-    """
-    migrator = heptapod.migrator()
-    repos_root = heptapod.repos_root
-    group_repo = repos_root.ensure('grp', 'repo', '.hg', dir=True)
-    hgrc = group_repo.join('hgrc')
-    hgrc_local = group_repo.join('hgrc.local')
-    hgrc.write('\n'.join((
-        "%include /etc/gitlab/heptapod.hgrc",
-        "%include /path/to/first.hgrc",
-        "",
-        "[heptapod]",
-        "mirror-path = git+ssh://grp/repo.git",
-        "[phases]",
-        "publish = no",
-        "%include /path/to/second.hgrc",
-    )))
-
-    migrator.migr_default_git_sync()
-
-    assert strip_comments_whitespace(hgrc_local.readlines()) == [
-        "%include ../../hgrc",
-        "%include /path/to/first.hgrc",
-        "[phases]",
-        "publish = no",
-        "%include /path/to/second.hgrc",
-        ]
-
-
-def test_migr_existing_include_right_after_section(heptapod):
-    """A manually previously set include ends the section
-    """
-    migrator = heptapod.migrator()
-    repos_root = heptapod.repos_root
-    group_repo = repos_root.ensure('grp', 'repo', '.hg', dir=True)
-    hgrc = group_repo.join('hgrc')
-    hgrc_local = group_repo.join('hgrc.local')
-    hgrc.write('\n'.join((
-        "%include /etc/gitlab/heptapod.hgrc",
-        "%include /path/to/first.hgrc",
-        "",
-        "[heptapod]",
-        "mirror-path = git+ssh://grp/repo.git",
-        "%include /path/to/second.hgrc",
-    )))
-
-    migrator.migr_default_git_sync()
-
-    assert strip_comments_whitespace(hgrc_local.readlines()) == [
-        "%include ../../hgrc",
-        "%include /path/to/first.hgrc",
-        "%include /path/to/second.hgrc",
-        ]
-
-
-def test_migr_unit_heptapod_section_item_not_last(heptapod):
-    """Other settings than mirror-path must survive.
-
-    This is mostly useful if we want to re-run later and a meaningful
-    setting has appeared.
-    """
-    migrator = heptapod.migrator()
-    repos_root = heptapod.repos_root
-    group_repo = repos_root.ensure('grp', 'repo', '.hg', dir=True)
-    hgrc = group_repo.join('hgrc')
-    hgrc_local = group_repo.join('hgrc.local')
-    hgrc.write('\n'.join((
-        "%include /etc/gitlab/heptapod.hgrc",
-        "",
-        "[heptapod]",
-        "mirror-path = git+ssh://grp/repo.git",
-        "foo = bar",
-        "",
-        "[phases]",
-        "publish=true",
-    )))
-
-    migrator.migr_default_git_sync()
-
-    assert strip_comments_whitespace(hgrc_local.readlines()) == [
-        "%include ../../hgrc",
-        "[heptapod]",
-        "foo = bar",
-        "[phases]",
-        "publish=true",
-        ]
-
-
-def test_migr_unit_heptapod_section_item_last(heptapod):
-    """Other settings than mirror-path must survive.
-
-    This is mostly useful if we want to re-run later and a meaningful
-    setting has appeared.
-    """
-    migrator = heptapod.migrator()
-    repos_root = heptapod.repos_root
-    group_repo = repos_root.ensure('grp', 'repo', '.hg', dir=True)
-    hgrc = group_repo.join('hgrc')
-    hgrc_local = group_repo.join('hgrc.local')
-    hgrc.write('\n'.join((
-        "%include /etc/gitlab/heptapod.hgrc",
-        "",
-        "[heptapod]",
-        "mirror-path = git+ssh://grp/repo.git",
-        "foo = bar",
-    )))
-
-    migrator.migr_default_git_sync()
-
-    assert strip_comments_whitespace(hgrc_local.readlines()) == [
-        "%include ../../hgrc",
-        "[heptapod]",
-        "foo = bar",
-        ]
-
-
-def test_migr_unit_heptapod_section_only_comments(heptapod):
-    """The heptapod section must disappear if only comments besides mirror-path
-    """
-    migrator = heptapod.migrator()
-    repos_root = heptapod.repos_root
-    group_repo = repos_root.ensure('grp', 'repo', '.hg', dir=True)
-    hgrc = group_repo.join('hgrc')
-    hgrc_local = group_repo.join('hgrc.local')
-    hgrc.write('\n'.join((
-        "%include /etc/gitlab/heptapod.hgrc",
-        "",
-        "[heptapod]",
-        "mirror-path = git+ssh://grp/repo.git",
-        "# I enjoy making some comments"
-        "",
-        "[phases]",
-        "publish=true",
-    )))
-
-    migrator.migr_default_git_sync()
-
-    assert strip_comments_whitespace(hgrc_local.readlines()) == [
-        "%include ../../hgrc",
-        "[phases]",
-        "publish=true",
-        ]
-
-
-def test_migr_subgroup(heptapod):
-    """Subgroups HGRCs must be initialized.
-    """
-    migrator = heptapod.migrator()
-    repos_root = heptapod.repos_root
-    subgroup = repos_root.ensure('grp', 'sub', dir=True)
-    subgroup_repo = subgroup.ensure('repo', '.hg', dir=True)
-
-    subgroup_hgrc = subgroup.join('hgrc')
-    repo_hgrc = subgroup_repo.join('hgrc')
-    hgrc_local = subgroup_repo.join('hgrc.local')
-    repo_hgrc.write('\n'.join((
-        "%include /etc/gitlab/heptapod.hgrc",
-        "",
-        "[heptapod]",
-        "mirror-path = git+ssh://grp/repo.git",
-    )))
-
-    migrator.migr_default_git_sync()
-
-    assert strip_comments_whitespace(hgrc_local.readlines()) == [
-        "%include ../../hgrc",
-        ]
-    assert strip_comments_whitespace(subgroup_hgrc.readlines()) == [
-        "%include ../hgrc",
-        ]
diff --git a/tests/test_migr_runner.py b/tests/test_migr_runner.py
deleted file mode 100644
--- a/tests/test_migr_runner.py
+++ /dev/null
@@ -1,123 +0,0 @@
-"""General tests for the migration runner.
-
-These should not test a given step.
-"""
-from heptapod_migr import parse_version
-
-
-def should_not_be_called(name):
-    def wrapped(*a, **kw):
-        raise AssertionError("%s should not have been called, "
-                             "args=%r, kwargs=%r" % (name, a, kw))
-    return wrapped
-
-
-def failing(msg):
-    def wrapped(*a, **kw):
-        raise RuntimeError(msg)
-
-    return wrapped
-
-
-def record(msg, acc):
-    """Create a function that appends its message into the `acc` list."""
-    def wrapped(*a, **kw):
-        acc.append(msg)
-    return wrapped
-
-
-def test_migr_basic_operation(heptapod):
-    """Only steps for the appropriate versions get run, final version is pkg
-    """
-    rails = heptapod.rails_root
-    rails.join('HEPTAPOD_VERSION').write('1.2.3')
-    migrator = heptapod.migrator()
-    migrator.write_migrated_version(parse_version('1.0'))
-    done = []
-    migrator.all_steps = [('1.0.0', record('step for 1.0.0', done)),
-                          ('1.1.0', record('step for 1.1.0', done))
-                          ]
-    migrator.run_all()
-    assert done == ['step for 1.1.0']
-    assert heptapod.git_data.join('HEPTAPOD_VERSION').read() == '1.2.3'
-
-
-def test_migr_dev_versions(heptapod):
-    """Often migration steps are introduced in intermediate versions.
-    """
-    rails = heptapod.rails_root
-    rails.join('HEPTAPOD_VERSION').write('1.2.3')
-    migrator = heptapod.migrator()
-    migrator.write_migrated_version(parse_version('1.0'))
-    done = []
-    migrator.all_steps = [('1.0.0', record('step for 1.0.0', done)),
-                          ('1.1.0.dev1', record('step for dev version', done))
-                          ]
-    migrator.run_all()
-    assert done == ['step for dev version']
-    assert heptapod.git_data.join('HEPTAPOD_VERSION').read() == '1.2.3'
-
-
-def test_migr_early_return(heptapod):
-    rails = heptapod.rails_root
-    rails.join('HEPTAPOD_VERSION').write('1.2.3')
-    migrator = heptapod.migrator()
-    migrator.write_migrated_version(parse_version('1.2.3'))
-    migrator.step = should_not_be_called('step()')
-    migrator.run_all()
-
-
-def test_runner_idempotency(heptapod):
-    rails = heptapod.rails_root
-    rails.join('HEPTAPOD_VERSION').write('1.2.3')
-    migrator = heptapod.migrator()
-    migrator.write_migrated_version(parse_version('1.1'))
-    migrator.all_steps = [('1.0', should_not_be_called("step for 1.0"))]
-    migrator.run_all()
-
-
-def test_logging_config(heptapod):
-    """At the very least, test that it doesn't break."""
-    migrator = heptapod.migrator()
-    migrator.setup_logging()
-
-
-def test_stop_log_on_uncatched(heptapod):
-    rails = heptapod.rails_root
-    rails.join('HEPTAPOD_VERSION').write('1.4.0')
-    migrator = heptapod.migrator()
-    migrator.write_migrated_version(parse_version('1.0'))
-    done = []
-    migrator.all_steps = [('1.1.0', record('step before failure', done)),
-                          ('1.2.0', failing('bogus step')),
-                          ('1.3.0', record('step after failure', done)),
-                          ]
-    try:
-        migrator.run_all()
-    except RuntimeError as exc:
-        assert str(exc) == 'bogus step'
-    assert done == ['step before failure']
-    assert heptapod.git_data.join('HEPTAPOD_VERSION').read() == '1.1.0'
-
-
-def test_walk_for_repos(heptapod):
-    migrator = heptapod.migrator()
-    repos_root = heptapod.repos_root
-    repos_root.ensure('grp', 'somefile')
-    repos_root.ensure('grp', 'repo', '.hg', dir=True)
-    repos_root.ensure('grp', 'repo.git', dir=True)
-    repos_root.ensure('grp', 'repo.git', 'sub', dir=True)
-    repos_root.ensure('grp', 'repo', '.hg', 'wd_dir', dir=True)
-    repos_root.ensure('grp', 'repo', '.hg', 'wd_file')
-    repos_root.ensure('grp', 'sub', 'repo', '.hg', dir=True)
-    repos_root.ensure('grp', 'sub', 'nested', 'repo', '.hg', dir=True)
-
-    assert set(migrator.walk_for_repos()) == {
-        (False, 0, str(repos_root)),
-        (False, 1, str(repos_root.join('grp'))),
-        (True, 2, str(repos_root.join('grp', 'repo'))),
-        (False, 2, str(repos_root.join('grp', 'sub'))),
-        (True, 3, str(repos_root.join('grp', 'sub', 'repo'))),
-        (False, 3, str(repos_root.join('grp', 'sub', 'nested'))),
-        (True, 4, str(repos_root.join('grp', 'sub', 'nested', 'repo'))),
-        }
diff --git a/tests/util.py b/tests/util.py
deleted file mode 100644
--- a/tests/util.py
+++ /dev/null
@@ -1,6 +0,0 @@
-def prepare_heptapod(tmpdir):
-    """Create the needed files and directories.
-
-    This is probably not worth a fixture (nothing to tear down) and
-    a simple way to have the caller know the paths is to have it give them.
-    """