tests/test-sparse-clear.t
author Matt Harbison <matt_harbison@yahoo.com>
Tue, 02 Jan 2018 21:18:30 -0500
changeset 35529 83903433c2eb
parent 33293 c9cbf4de27ba
child 44724 5c2a4f37eace
permissions -rw-r--r--
lfs: add a local store method for opening a blob The has() and read() methods already dynamically switch between the usercache and local store. This should generally be preferred to directly accessing the vfs instances outside of the store. The file is now explicitly opened in binary mode for clarity. (It was also being opened in binary mode before, but only because vfs.__call__() appends 'b' if needed when not opening with 'text=True'.)

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
  data.py
  $ hg debugsparse --clear-rules
  $ ls
  base.sparse
  data.py
  index.html
  readme.txt
  webpage.sparse

Clear rules when there are excludes

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

Clearing rules should not alter profiles

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