##// END OF EJS Templates
revlog: subclass the new `repository.iverifyproblem` Protocol class...
revlog: subclass the new `repository.iverifyproblem` Protocol class This is the same transformation as 3a90a6fd710d did for dirstate, but the CamelCase naming was already cleaned up here. We shouldn't have to explicitly subclass, but I'm doing so to test the interplay of regular attributes and the `attrs` class. Also, PyCharm has a nifty feature that puts a jump point in the gutter to navigate back and forth between the base class and subclasses (and override functions and base class functions) when there's an explicit subclassing. Additionally, PyCharm will immediately flag signature mismatches without a 40m pytype run.

File last commit:

r50239:0cc5f74f 6.1.4 stable
r53365:4ef6dbc2 default
Show More
test-purge.t
358 lines | 6.5 KiB | text/troff | Tads3Lexer
Simon Sapin
dirstate: Remove the flat Rust DirstateMap implementation...
r48882 #testcases dirstate-v1 dirstate-v2
Simon Sapin
dirstate-tree: Add a dirstate-v1-tree variant of some tests...
r47900
Simon Sapin
dirstate-v2: Add a variant of some tests, that uses the new format...
r48056 #if dirstate-v2
dirstate-v2: add an option to prevent unintentional slow dirstate-v2...
r49049 $ cat >> $HGRCPATH << EOF
> [format]
dirstate-v2: rename the configuration to enable the format...
r49523 > use-dirstate-v2=1
dirstate-v2: add an option to prevent unintentional slow dirstate-v2...
r49049 > [storage]
> dirstate-v2.slow-path=allow
> EOF
Simon Sapin
dirstate-v2: Add a variant of some tests, that uses the new format...
r48056 #endif
Nicolas Dumazet
tests: unify test-purge
r12122 init
$ hg init t
$ cd t
setup
$ echo r1 > r1
$ hg ci -qAmr1 -d'0 0'
$ mkdir directory
$ echo r2 > directory/r2
$ hg ci -qAmr2 -d'1 0'
$ echo 'ignored' > .hgignore
$ hg ci -qAmr3 -d'2 0'
Valentin Gatien-Baron
purge: move extension into core mercurial...
r47080 purge without the extension
$ hg st
$ touch foo
$ hg purge
Raphaël Gomès
typo: s/unkown/unknown across the codebase...
r49252 permanently delete 1 unknown files? (yN) n
Valentin Gatien-Baron
purge: move extension into core mercurial...
r47080 abort: removal cancelled
[250]
$ hg st
? foo
$ hg purge --no-confirm
$ hg st
now enabling the extension
$ cat <<EOF >> $HGRCPATH
> [extensions]
> purge =
> EOF
Nicolas Dumazet
tests: unify test-purge
r12122 delete an empty directory
$ mkdir empty_dir
anuraggoel
purge: avoid duplicate output for --print (issue4092)...
r20565 $ hg purge -p -v
Nicolas Dumazet
tests: unify test-purge
r12122 empty_dir
purge: also deal with directory with --confirm...
r47079 $ hg purge --confirm
permanently delete at least 1 empty directories? (yN) n
abort: removal cancelled
[250]
Nicolas Dumazet
tests: unify test-purge
r12122 $ hg purge -v
Martin Geisler
purge: lowercase messages
r16930 removing directory empty_dir
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Nicolas Dumazet
tests: unify test-purge
r12122 directory
r1
delete an untracked directory
$ mkdir untracked_dir
$ touch untracked_dir/untracked_file1
$ touch untracked_dir/untracked_file2
$ hg purge -p
untracked_dir/untracked_file1
untracked_dir/untracked_file2
$ hg purge -v
Martin Geisler
purge: lowercase messages
r16930 removing file untracked_dir/untracked_file1
removing file untracked_dir/untracked_file2
removing directory untracked_dir
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Nicolas Dumazet
tests: unify test-purge
r12122 directory
r1
delete an untracked file
$ touch untracked_file
$ touch untracked_file_readonly
Matt Harbison
tests: quote PYTHON usage...
r39743 $ "$PYTHON" <<EOF
Matt Harbison
py3: fix module imports in tests, as flagged by test-check-module-imports.t...
r40405 > import os
> import stat
FUJIWARA Katsunori
tests: bulk changes to avoid whitespace errors of check-code.py...
r41885 > f = 'untracked_file_readonly'
Nicolas Dumazet
tests: unify test-purge
r12122 > os.chmod(f, stat.S_IMODE(os.stat(f).st_mode) & ~stat.S_IWRITE)
> EOF
$ hg purge -p
untracked_file
untracked_file_readonly
purge: add a --confirm option...
r47078 $ hg purge --confirm
Raphaël Gomès
typo: s/unkown/unknown across the codebase...
r49252 permanently delete 2 unknown files? (yN) n
purge: add a --confirm option...
r47078 abort: removal cancelled
[250]
Nicolas Dumazet
tests: unify test-purge
r12122 $ hg purge -v
Martin Geisler
purge: lowercase messages
r16930 removing file untracked_file
removing file untracked_file_readonly
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Nicolas Dumazet
tests: unify test-purge
r12122 directory
r1
delete an untracked file in a tracked directory
$ touch directory/untracked_file
$ hg purge -p
directory/untracked_file
$ hg purge -v
Martin Geisler
purge: lowercase messages
r16930 removing file directory/untracked_file
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Nicolas Dumazet
tests: unify test-purge
r12122 directory
r1
delete nested directories
$ mkdir -p untracked_directory/nested_directory
$ hg purge -p
untracked_directory/nested_directory
$ hg purge -v
Martin Geisler
purge: lowercase messages
r16930 removing directory untracked_directory/nested_directory
removing directory untracked_directory
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Nicolas Dumazet
tests: unify test-purge
r12122 directory
r1
delete nested directories from a subdir
$ mkdir -p untracked_directory/nested_directory
$ cd directory
$ hg purge -p
untracked_directory/nested_directory
$ hg purge -v
Martin Geisler
purge: lowercase messages
r16930 removing directory untracked_directory/nested_directory
removing directory untracked_directory
Nicolas Dumazet
tests: unify test-purge
r12122 $ cd ..
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Nicolas Dumazet
tests: unify test-purge
r12122 directory
r1
delete only part of the tree
$ mkdir -p untracked_directory/nested_directory
$ touch directory/untracked_file
$ cd directory
$ hg purge -p ../untracked_directory
untracked_directory/nested_directory
purge: add a --confirm option...
r47078 $ hg purge --confirm
Raphaël Gomès
typo: s/unkown/unknown across the codebase...
r49252 permanently delete 1 unknown files? (yN) n
purge: add a --confirm option...
r47078 abort: removal cancelled
[250]
Nicolas Dumazet
tests: unify test-purge
r12122 $ hg purge -v ../untracked_directory
Martin Geisler
purge: lowercase messages
r16930 removing directory untracked_directory/nested_directory
removing directory untracked_directory
Nicolas Dumazet
tests: unify test-purge
r12122 $ cd ..
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Nicolas Dumazet
tests: unify test-purge
r12122 directory
r1
$ ls directory/untracked_file
directory/untracked_file
$ rm directory/untracked_file
Valentin Gatien-Baron
purge: add -i flag to delete ignored files instead of untracked files...
r44771 skip ignored files if -i or --all not specified
Nicolas Dumazet
tests: unify test-purge
r12122
$ touch ignored
$ hg purge -p
purge: add a --confirm option...
r47078 $ hg purge --confirm
Nicolas Dumazet
tests: unify test-purge
r12122 $ hg purge -v
Valentin Gatien-Baron
purge: add -i flag to delete ignored files instead of untracked files...
r44771 $ touch untracked_file
Nicolas Dumazet
tests: unify test-purge
r12122 $ ls
directory
ignored
r1
Valentin Gatien-Baron
purge: add -i flag to delete ignored files instead of untracked files...
r44771 untracked_file
$ hg purge -p -i
ignored
purge: add a --confirm option...
r47078 $ hg purge --confirm -i
permanently delete 1 ignored files? (yN) n
abort: removal cancelled
[250]
Valentin Gatien-Baron
purge: add -i flag to delete ignored files instead of untracked files...
r44771 $ hg purge -v -i
removing file ignored
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Valentin Gatien-Baron
purge: add -i flag to delete ignored files instead of untracked files...
r44771 directory
r1
untracked_file
$ touch ignored
Nicolas Dumazet
tests: unify test-purge
r12122 $ hg purge -p --all
ignored
Valentin Gatien-Baron
purge: add -i flag to delete ignored files instead of untracked files...
r44771 untracked_file
purge: add a --confirm option...
r47078 $ hg purge --confirm --all
Raphaël Gomès
typo: s/unkown/unknown across the codebase...
r49252 permanently delete 1 unknown and 1 ignored files? (yN) n
purge: add a --confirm option...
r47078 abort: removal cancelled
[250]
Nicolas Dumazet
tests: unify test-purge
r12122 $ hg purge -v --all
Martin Geisler
purge: lowercase messages
r16930 removing file ignored
Valentin Gatien-Baron
purge: add -i flag to delete ignored files instead of untracked files...
r44771 removing file untracked_file
Nicolas Dumazet
tests: unify test-purge
r12122 $ ls
directory
r1
abort with missing files until we support name mangling filesystems
$ touch untracked_file
$ rm r1
hide error messages to avoid changing the output when the text changes
$ hg purge -p 2> /dev/null
untracked_file
$ hg st
! r1
? untracked_file
$ hg purge -p
untracked_file
$ hg purge -v 2> /dev/null
Martin Geisler
purge: lowercase messages
r16930 removing file untracked_file
Nicolas Dumazet
tests: unify test-purge
r12122 $ hg st
! r1
$ hg purge -v
$ hg revert --all --quiet
$ hg st -a
tracked file in ignored directory (issue621)
$ echo directory >> .hgignore
$ hg ci -m 'ignore directory'
$ touch untracked_file
$ hg purge -p
untracked_file
$ hg purge -v
Martin Geisler
purge: lowercase messages
r16930 removing file untracked_file
Nicolas Dumazet
tests: unify test-purge
r12122
skip excluded files
$ touch excluded_file
$ hg purge -p -X excluded_file
$ hg purge -v -X excluded_file
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Nicolas Dumazet
tests: unify test-purge
r12122 directory
excluded_file
r1
$ rm excluded_file
skip files in excluded dirs
$ mkdir excluded_dir
$ touch excluded_dir/file
$ hg purge -p -X excluded_dir
$ hg purge -v -X excluded_dir
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Nicolas Dumazet
tests: unify test-purge
r12122 directory
excluded_dir
r1
$ ls excluded_dir
file
$ rm -R excluded_dir
skip excluded empty dirs
$ mkdir excluded_dir
$ hg purge -p -X excluded_dir
$ hg purge -v -X excluded_dir
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Nicolas Dumazet
tests: unify test-purge
r12122 directory
excluded_dir
r1
$ rmdir excluded_dir
skip patterns
$ mkdir .svn
$ touch .svn/foo
$ mkdir directory/.svn
$ touch directory/.svn/foo
$ hg purge -p -X .svn -X '*/.svn'
$ hg purge -p -X re:.*.svn
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
Ben Kehoe
purge: add options for deleting only files or only directories
r21853 $ rm -R .svn directory r1
only remove files
$ mkdir -p empty_dir dir
$ touch untracked_file dir/untracked_file
$ hg purge -p --files
dir/untracked_file
untracked_file
$ hg purge -v --files
removing file dir/untracked_file
removing file untracked_file
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Ben Kehoe
purge: add options for deleting only files or only directories
r21853 dir
empty_dir
$ ls dir
only remove dirs
$ mkdir -p empty_dir dir
$ touch untracked_file dir/untracked_file
$ hg purge -p --dirs
empty_dir
$ hg purge -v --dirs
removing directory empty_dir
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Ben Kehoe
purge: add options for deleting only files or only directories
r21853 dir
untracked_file
$ ls dir
untracked_file
remove both files and dirs
$ mkdir -p empty_dir dir
$ touch untracked_file dir/untracked_file
$ hg purge -p --files --dirs
dir/untracked_file
untracked_file
empty_dir
$ hg purge -v --files --dirs
removing file dir/untracked_file
removing file untracked_file
removing directory empty_dir
removing directory dir
Joerg Sonnenberger
tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems...
r45218 $ ls -A
.hg
.hgignore
Ben Kehoe
purge: add options for deleting only files or only directories
r21853
purge: prevent a silly crash with --confirm --files...
r50239 Test some --confirm case that ended crashing
$ hg purge --confirm
$ hg purge --confirm --all --files
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913 $ cd ..