sapling/eden/scm/tests/test-basic.t
Jun Wu 0562c1220f tests: enable template-new-builtin
Summary: This makes tests depend less on revision numbers.

Reviewed By: DurhamG

Differential Revision: D22468669

fbshipit-source-id: 74a06930faa3e6ee9d246ecc718c2a3740f57a54
2020-07-20 17:27:53 -07:00

116 lines
2.3 KiB
Raku

#chg-compatible
$ disable treemanifest
Create a repository:
$ hg config
devel.all-warnings=true
devel.default-date=0 0
experimental.metalog=true
extensions.fsmonitor= (fsmonitor !)
extensions.treemanifest=!
format.use-zstore-commit-data=true
fsmonitor.detectrace=1 (fsmonitor !)
mutation.record=False
remotefilelog.reponame=reponame-default
remotefilelog.cachepath=$TESTTMP/default-hgcache
treemanifest.flatcompat=True
treemanifest.sendtrees=False
treemanifest.treeonly=False
treemanifest.rustmanifest=True
ui.slash=True
ui.interactive=False
ui.mergemarkers=detailed
ui.promptecho=True
web.address=localhost
web\.ipv6=(?:True|False) (re)
workingcopy.enablerustwalker=True
$ hg init t
$ cd t
Prepare a changeset:
$ echo a > a
$ hg add a
$ hg status
A a
Writes to stdio succeed and fail appropriately
#if devfull
$ hg status 2>/dev/full
A a
$ hg status >/dev/full
abort: No space left on device
Exception ignored in: <_io.TextIOWrapper name='<stdout>' mode='w' encoding='*'> (glob) (no-py2 !)
OSError: [Errno 28] No space left on device (no-py2 !)
[255]
#endif
#if devfull no-chg
$ hg status >/dev/full 2>&1
[1]
$ hg status ENOENT 2>/dev/full
[1]
#endif
#if devfull chg
$ hg status >/dev/full 2>&1
[255]
$ hg status ENOENT 2>/dev/full
[255]
#endif
$ hg commit -m test
This command is ancient:
$ hg history
commit: acb14030fe0a
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: test
Verify that updating to revision 0 via commands.update() works properly
$ cat <<EOF > update_to_rev0.py
> from edenscm.mercurial import ui, hg, commands
> myui = ui.ui.load()
> repo = hg.repository(myui, path='.')
> commands.update(myui, repo, rev=0)
> EOF
$ hg up null
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg debugpython -- ./update_to_rev0.py
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg identify -n
0
Poke around at hashes:
$ hg manifest --debug
b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 a
$ hg cat a
a
Verify should succeed:
$ hg verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
1 files, 1 changesets, 1 total revisions
At the end...
$ cd ..