##// 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:

r50516:55c6ebd1 stable
r53365:4ef6dbc2 default
Show More
test-diff-indent-heuristic.t
340 lines | 4.4 KiB | text/troff | Tads3Lexer
/ tests / test-diff-indent-heuristic.t
#testcases bdiff xdiff
#if xdiff
#require xdiff
$ cat >> $HGRCPATH <<EOF
> [experimental]
> xdiff = true
> EOF
#endif
$ hg init repo
$ cd repo
$ cat > a.c <<'EOF'
> /*
> * This function returns 1.
> */
> int f() {
> return 1;
> }
> /*
> * This function returns 2.
> */
> int g() {
> return 2;
> }
> /*
> * This function returns 3.
> */
> int h() {
> return 3;
> }
> EOF
$ cat > b.c <<'EOF'
> if (x) {
> do_something();
> }
>
> if (y) {
> do_something_else();
> }
> EOF
$ cat > c.rb <<'EOF'
> #!ruby
> ["foo", "bar", "baz"].map do |i|
> i.upcase
> end
> EOF
$ cat > d.py <<'EOF'
> try:
> import foo
> except ImportError:
> pass
> try:
> import bar
> except ImportError:
> pass
> EOF
The below two files are taken from git: t/t4061-diff-indent.sh
$ cat > spaces.txt <<'EOF'
> 1
> 2
> a
>
> b
> 3
> 4
> EOF
$ cat > functions.c <<'EOF'
> 1
> 2
> /* function */
> foo() {
> foo
> }
>
> 3
> 4
> EOF
$ hg commit -m 1 -A . -q
$ cat > a.c <<'EOF'
> /*
> * This function returns 1.
> */
> int f() {
> return 1;
> }
> /*
> * This function returns 3.
> */
> int h() {
> return 3;
> }
> EOF
$ cat > b.c <<'EOF'
> if (x) {
> do_something();
> }
>
> if (y) {
> do_another_thing();
> }
>
> if (y) {
> do_something_else();
> }
> EOF
$ cat > c.rb <<'EOF'
> #!ruby
> ["foo", "bar", "baz"].map do |i|
> i
> end
> ["foo", "bar", "baz"].map do |i|
> i.upcase
> end
> EOF
$ cat > d.py <<'EOF'
> try:
> import foo
> except ImportError:
> pass
> try:
> import baz
> except ImportError:
> pass
> try:
> import bar
> except ImportError:
> pass
> EOF
$ cat > spaces.txt <<'EOF'
> 1
> 2
> a
>
> b
> a
>
> b
> 3
> 4
> EOF
$ cat > functions.c <<'EOF'
> 1
> 2
> /* function */
> bar() {
> foo
> }
>
> /* function */
> foo() {
> foo
> }
>
> 3
> 4
> EOF
#if xdiff
$ hg diff --git
diff --git a/a.c b/a.c
--- a/a.c
+++ b/a.c
@@ -4,12 +4,6 @@
int f() {
return 1;
}
-/*
- * This function returns 2.
- */
-int g() {
- return 2;
-}
/*
* This function returns 3.
*/
diff --git a/b.c b/b.c
--- a/b.c
+++ b/b.c
@@ -2,6 +2,10 @@
do_something();
}
+if (y) {
+ do_another_thing();
+}
+
if (y) {
do_something_else();
}
diff --git a/c.rb b/c.rb
--- a/c.rb
+++ b/c.rb
@@ -1,4 +1,7 @@
#!ruby
+["foo", "bar", "baz"].map do |i|
+ i
+end
["foo", "bar", "baz"].map do |i|
i.upcase
end
diff --git a/d.py b/d.py
--- a/d.py
+++ b/d.py
@@ -2,6 +2,10 @@
import foo
except ImportError:
pass
+try:
+ import baz
+except ImportError:
+ pass
try:
import bar
except ImportError:
diff --git a/functions.c b/functions.c
--- a/functions.c
+++ b/functions.c
@@ -1,5 +1,10 @@
1
2
+/* function */
+bar() {
+ foo
+}
+
/* function */
foo() {
foo
diff --git a/spaces.txt b/spaces.txt
--- a/spaces.txt
+++ b/spaces.txt
@@ -2,6 +2,9 @@
2
a
+b
+a
+
b
3
4
#else
$ hg diff --git
diff --git a/a.c b/a.c
--- a/a.c
+++ b/a.c
@@ -5,12 +5,6 @@
return 1;
}
/*
- * This function returns 2.
- */
-int g() {
- return 2;
-}
-/*
* This function returns 3.
*/
int h() {
diff --git a/b.c b/b.c
--- a/b.c
+++ b/b.c
@@ -3,5 +3,9 @@
}
if (y) {
+ do_another_thing();
+}
+
+if (y) {
do_something_else();
}
diff --git a/c.rb b/c.rb
--- a/c.rb
+++ b/c.rb
@@ -1,4 +1,7 @@
#!ruby
["foo", "bar", "baz"].map do |i|
+ i
+end
+["foo", "bar", "baz"].map do |i|
i.upcase
end
diff --git a/d.py b/d.py
--- a/d.py
+++ b/d.py
@@ -3,6 +3,10 @@
except ImportError:
pass
try:
+ import baz
+except ImportError:
+ pass
+try:
import bar
except ImportError:
pass
diff --git a/functions.c b/functions.c
--- a/functions.c
+++ b/functions.c
@@ -1,6 +1,11 @@
1
2
/* function */
+bar() {
+ foo
+}
+
+/* function */
foo() {
foo
}
diff --git a/spaces.txt b/spaces.txt
--- a/spaces.txt
+++ b/spaces.txt
@@ -3,5 +3,8 @@
a
b
+a
+
+b
3
4
#endif