view tests/test-sparse-clear.t @ 51522:5f9350956c03

branchcache: add more test for the logic around obsolescence and branch heads While working on branch-cache-v3, we noticed some ambiguity in the filtered+obsolete hash. However this was only caught by a rebase test by chance. It seems important to explicitly tests these cases.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Wed, 28 Feb 2024 12:56:08 +0100
parents a6efb9180764
children
line wrap: on
line source

test sparse

  $ hg init myrepo
  $ cd myrepo
  $ cat >> $HGRCPATH <<EOF
  > [extensions]
  > sparse=
  > purge=
  > strip=
  > rebase=
  > EOF

  $ echo a > index.html
  $ echo x > data.py
  $ echo z > readme.txt
  $ cat > base.sparse <<EOF
  > [include]
  > *.sparse
  > EOF
  $ hg ci -Aqm 'initial'
  $ cat > webpage.sparse <<EOF
  > %include base.sparse
  > [include]
  > *.html
  > EOF
  $ hg ci -Aqm 'initial'

Clear rules when there are includes

  $ hg debugsparse --include *.py
  $ ls -A
  .hg
  data.py
  $ hg debugsparse --clear-rules
  $ ls -A
  .hg
  base.sparse
  data.py
  index.html
  readme.txt
  webpage.sparse

Clear rules when there are excludes

  $ hg debugsparse -X base.sparse -X webpage.sparse
  $ ls -A
  .hg
  data.py
  index.html
  readme.txt
  $ hg debugsparse --clear-rules
  $ ls -A
  .hg
  base.sparse
  data.py
  index.html
  readme.txt
  webpage.sparse

Clearing rules should not alter profiles

  $ hg debugsparse --enable-profile webpage.sparse
  $ ls -A
  .hg
  base.sparse
  index.html
  webpage.sparse
  $ hg debugsparse --include *.py
  $ ls -A
  .hg
  base.sparse
  data.py
  index.html
  webpage.sparse
  $ hg debugsparse --clear-rules
  $ ls -A
  .hg
  base.sparse
  index.html
  webpage.sparse