move logic for gc back to commands.gc

This commit is contained in:
Anthony Sottile 2025-11-19 14:29:50 -05:00
parent 1b32c50bc7
commit 66278a9a0b
4 changed files with 100 additions and 92 deletions

View file

@ -165,3 +165,11 @@ def test_invalid_manifest_gcd(tempdir_factory, store, in_git_dir, cap_out):
assert _config_count(store) == 1
assert _repo_count(store) == 0
assert cap_out.get().splitlines()[-1] == '1 repo(s) removed.'
def test_gc_pre_1_14_roll_forward(store, cap_out):
with store.connect() as db: # simulate pre-1.14.0
db.executescript('DROP TABLE configs')
assert not gc(store)
assert cap_out.get() == '0 repo(s) removed.\n'

View file

@ -289,18 +289,9 @@ def test_mark_config_as_used_does_not_exist(store):
assert _select_all_configs(store) == []
def _simulate_pre_1_14_0(store):
with store.connect() as db:
db.executescript('DROP TABLE configs')
def test_gc_roll_forward(store):
_simulate_pre_1_14_0(store)
assert store.gc() == 0
def test_mark_config_as_used_roll_forward(store, tmpdir):
_simulate_pre_1_14_0(store)
with store.connect() as db: # simulate pre-1.14.0
db.executescript('DROP TABLE configs')
test_mark_config_as_used(store, tmpdir)