tests/test-status-eacces.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Tue, 09 Apr 2024 14:36:01 +0200
changeset 51573 4a9d0898bf16
parent 50323 86d2a28c018e
permissions -rw-r--r--
bundlespec: fix the "streamv2" and "streamv3-exp" variant In c4aab3661f25, we broken this feature by adding unicode instead of bytes to the dictionary. On the other hand, this feature was never tested, so augment the tests to tests this.

#testcases dirstate-v1 dirstate-v2

#if dirstate-v2
  $ cat >> $HGRCPATH << EOF
  > [format]
  > use-dirstate-v2=1
  > [storage]
  > dirstate-v2.slow-path=allow
  > EOF
#endif


The proliferation of status implementations can be confusing:
- The pure python implementation:
(no-rhg pure !)
- The C implementation:
(no-rhg no-rust no-pure !)
- The two rust implementations:
(rhg !)
(no-rhg rust !)

  $ hg init repo1
  $ cd repo1
  $ mkdir d1
  $ touch d1/x
  $ hg commit -Am.
  adding d1/x
  $ touch d1/y
  $ chmod -r d1
  $ hg status
  d1: $EACCES$
  ! d1/x (rhg !)
  ! d1/x (no-rhg rust !)
  $ hg status
  d1: $EACCES$
  ! d1/x (rust !)
  ! d1/x (no-rust rhg !)
  $ chmod +r d1
  $ hg status
  ? d1/y

  $ touch d1/z
  $ hg status
  ? d1/y
  ? d1/z