tests/test-debugbackupbundle.t
author Mads Kiilerich <mads@kiilerich.com>
Wed, 28 Jun 2023 01:31:10 +0200
branchstable
changeset 50725 80c8dcfb73c6
parent 44556 20d74eebe56c
permissions -rw-r--r--
demandimport: don't delay _distutils_hack import test-demandimport.py would fail on 'import distutils.msvc9compiler' because warnings: /usr/lib/python3.11/site-packages/_distutils_hack/__init__.py:18: UserWarning: Distutils was imported before Setuptools, but importing Setuptools also replaces the `distutils` module in `sys.modules`. This may lead to undesirable behaviors or errors. To avoid these issues, avoid using distutils directly, ensure that setuptools is installed in the traditional way (e.g. not an editable install), and/or make sure that setuptools is always imported before distutils. warnings.warn( /usr/lib/python3.11/site-packages/_distutils_hack/__init__.py:33: UserWarning: Setuptools is replacing distutils. warnings.warn("Setuptools is replacing distutils.") Telling demandimport to ignore this module will allow the hack to work as intended. Note: The test for distutils.msvc9compiler comes from 2205d00b6d2b. But since then, distutils is going away, and setuptools has moved forward and is replacing it. It is unclear exactly what is being tested here and how setuptools should depended on msvc9compiler. The test might no longer be relevant.

  $ cat >> $HGRCPATH << EOF
  > [extensions]
  > strip=
  > EOF

Setup repo

  $ hg init repo
  $ cd repo

Test backups list and recover

  $ hg debugbackupbundle
  no backup changesets found

  $ mkcommit() {
  >    echo "$1" > "$1"
  >    hg add "$1"
  >    hg ci -l $1
  > }
  $ mkcommit a
  $ mkcommit b
  $ hg strip .
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
  saved backup bundle to $TESTTMP/repo/.hg/strip-backup/d2ae7f538514-2953539b-backup.hg
  $ hg debugbackupbundle
  Recover changesets using: hg debugbackupbundle --recover <changeset hash>
  
  Available backup changesets:
  * (glob)
  d2ae7f538514 b

  $ hg debugbackupbundle --recover d2ae7f538514
  Unbundling d2ae7f538514
  adding changesets
  adding manifests
  adding file changes
  added 1 changesets with 1 changes to 1 files
  new changesets d2ae7f538514 (1 drafts)