diff mbox series

[v3,34/35] userdiff tests: add basic test for ada

Message ID 20210224195129.4004-35-avarab@gmail.com (mailing list archive)
State New
Headers show
Series userdiff: refactor + test + doc + misc improvements | expand

Commit Message

Ævar Arnfjörð Bjarmason Feb. 24, 2021, 7:51 p.m. UTC
Add test for the ada userdiff pattern added in e90d065e64 (Add
userdiff patterns for Ada, 2012-09-16).

I don't know the ada language itself, I just stole a couple of
examples of code that used tokens we're matching[1][2]. Both test
examples stress our negative and positive matching rules.

1. https://rosettacode.org/wiki/99_bottles_of_beer#Ada
2. https://en.wikibooks.org/wiki/Ada_Programming/Tasking
---
 t/t4018-diff-funcname.sh |  1 -
 t/t4018/ada.sh           | 37 +++++++++++++++++++++++++++++++++++++
 2 files changed, 37 insertions(+), 1 deletion(-)
 create mode 100755 t/t4018/ada.sh

Comments

Johannes Sixt Feb. 27, 2021, 7:26 a.m. UTC | #1
Am 24.02.21 um 20:51 schrieb Ævar Arnfjörð Bjarmason:
> Add test for the ada userdiff pattern added in e90d065e64 (Add
> userdiff patterns for Ada, 2012-09-16).
> 
> I don't know the ada language itself, I just stole a couple of
> examples of code that used tokens we're matching[1][2]. Both test
> examples stress our negative and positive matching rules.
> 
> 1. https://rosettacode.org/wiki/99_bottles_of_beer#Ada
> 2. https://en.wikibooks.org/wiki/Ada_Programming/Tasking

Missing Signed-off-by.

> ---
>  t/t4018-diff-funcname.sh |  1 -
>  t/t4018/ada.sh           | 37 +++++++++++++++++++++++++++++++++++++
>  2 files changed, 37 insertions(+), 1 deletion(-)
>  create mode 100755 t/t4018/ada.sh
> 
> diff --git a/t/t4018-diff-funcname.sh b/t/t4018-diff-funcname.sh
> index ba10d1f5313..b0c2782d067 100755
> --- a/t/t4018-diff-funcname.sh
> +++ b/t/t4018-diff-funcname.sh
> @@ -18,7 +18,6 @@ test_expect_success 'setup' '
>  	# Do not add anything to this list. New built-in drivers should have
>  	# tests
>  	cat >drivers-no-tests <<-\EOF &&
> -	ada
>  	bibtex
>  	csharp
>  	html
> diff --git a/t/t4018/ada.sh b/t/t4018/ada.sh
> new file mode 100755
> index 00000000000..45fc2c7a3b2
> --- /dev/null
> +++ b/t/t4018/ada.sh
> @@ -0,0 +1,37 @@
> +#!/bin/sh
> +#
> +# See ../t4018-diff-funcname.sh's test_diff_funcname()
> +#
> +
> +test_diff_funcname 'ada: "procedure" over "with"' \
> +	8<<\EOF_HUNK 9<<\EOF_TEST
> +procedure Bottles is
> +EOF_HUNK
> +with Ada.Text_Io; use Ada.Text_Io;
> + procedure Bottles is
> + begin
> +    for X in reverse 1..99 loop
> +       Put_Line(Integer'Image(X) & " bottles of beer on the wall");
> +       Put_Line(Integer'Image(X) & " bottles of beer"); -- ChangeMe
> +       Put_Line("Take one down, pass it around");
> +       Put_Line(Integer'Image(X - 1) & " bottles of beer on the wall");
> +       New_Line;
> +    end loop;
> + end Bottles;
> +EOF_TEST
> +
> +test_diff_funcname 'ada: "task" over "procedure"' \
> +	8<<\EOF_HUNK 9<<\EOF_TEST
> +task body Check_CPU is
> +EOF_HUNK
> +procedure Housekeeping is
> +  task Check_CPU;
> +  task Backup_Disk;
> +
> +  task body Check_CPU is
> +    -- Comment for spacing with
> +    -- the above "task" for -U1

Aren't we using -U0 by now?

> +    ChangeMe
> +  end Check_CPU;
> +end Housekeeping;
> +EOF_TEST
> 

I don't see anything special in these tests. Couldn't you just use the
simplified version of tests, which are much easier to read than this
shell script with EOF markers?

-- Hannes
diff mbox series

Patch

diff --git a/t/t4018-diff-funcname.sh b/t/t4018-diff-funcname.sh
index ba10d1f5313..b0c2782d067 100755
--- a/t/t4018-diff-funcname.sh
+++ b/t/t4018-diff-funcname.sh
@@ -18,7 +18,6 @@  test_expect_success 'setup' '
 	# Do not add anything to this list. New built-in drivers should have
 	# tests
 	cat >drivers-no-tests <<-\EOF &&
-	ada
 	bibtex
 	csharp
 	html
diff --git a/t/t4018/ada.sh b/t/t4018/ada.sh
new file mode 100755
index 00000000000..45fc2c7a3b2
--- /dev/null
+++ b/t/t4018/ada.sh
@@ -0,0 +1,37 @@ 
+#!/bin/sh
+#
+# See ../t4018-diff-funcname.sh's test_diff_funcname()
+#
+
+test_diff_funcname 'ada: "procedure" over "with"' \
+	8<<\EOF_HUNK 9<<\EOF_TEST
+procedure Bottles is
+EOF_HUNK
+with Ada.Text_Io; use Ada.Text_Io;
+ procedure Bottles is
+ begin
+    for X in reverse 1..99 loop
+       Put_Line(Integer'Image(X) & " bottles of beer on the wall");
+       Put_Line(Integer'Image(X) & " bottles of beer"); -- ChangeMe
+       Put_Line("Take one down, pass it around");
+       Put_Line(Integer'Image(X - 1) & " bottles of beer on the wall");
+       New_Line;
+    end loop;
+ end Bottles;
+EOF_TEST
+
+test_diff_funcname 'ada: "task" over "procedure"' \
+	8<<\EOF_HUNK 9<<\EOF_TEST
+task body Check_CPU is
+EOF_HUNK
+procedure Housekeeping is
+  task Check_CPU;
+  task Backup_Disk;
+
+  task body Check_CPU is
+    -- Comment for spacing with
+    -- the above "task" for -U1
+    ChangeMe
+  end Check_CPU;
+end Housekeeping;
+EOF_TEST