view tests/test-sparse-requirement.t @ 40722:0800d9e6e216

tests: disable remotefilelog on Windows I've spent a non trivial amount of time trying to eliminate the test errors, but it's looking like this is pretty dependent on Unix support. For example, there are attempts to delete open files, and uses of threads that report I/O attempts on closed files. (Maybe this is a race condition? Don't we usually use processes as workers on Windows?) In any event, I don't want real new errors elsewhere to be masked by these known problems. For some reason $CACHEDIR is reported as missing in test-remotefilelog-repack.t, but it actually exists in the hgcloneshallow call inside shallowutil.mkstickygroupdir(). By the time the process exits, it's gone. I don't see it being removed by code that calls 'rmdir' or 'remove' in the extension itself.
author Matt Harbison <matt_harbison@yahoo.com>
date Sat, 24 Nov 2018 14:11:02 -0500
parents c2c8962a9465
children 74a519c86625
line wrap: on
line source

  $ hg init repo
  $ cd repo

  $ touch a.html b.html c.py d.py

  $ cat > frontend.sparse << EOF
  > [include]
  > *.html
  > EOF

  $ hg -q commit -A -m initial

  $ echo 1 > a.html
  $ echo 1 > c.py
  $ hg commit -m 'commit 1'

Enable sparse profile

  $ cat .hg/requires
  dotencode
  fncache
  generaldelta
  revlogv1
  store
  testonly-simplestore (reposimplestore !)

  $ hg debugsparse --config extensions.sparse= --enable-profile frontend.sparse
  $ ls
  a.html
  b.html

Requirement for sparse added when sparse is enabled

  $ cat .hg/requires
  dotencode
  exp-sparse
  fncache
  generaldelta
  revlogv1
  store
  testonly-simplestore (reposimplestore !)

Client without sparse enabled reacts properly

  $ hg files
  abort: repository is using sparse feature but sparse is not enabled; enable the "sparse" extensions to access!
  [255]

Requirement for sparse is removed when sparse is disabled

  $ hg debugsparse --reset --config extensions.sparse=

  $ cat .hg/requires
  dotencode
  fncache
  generaldelta
  revlogv1
  store
  testonly-simplestore (reposimplestore !)

And client without sparse can access

  $ hg files
  a.html
  b.html
  c.py
  d.py
  frontend.sparse