Skip to content

Commit 0e5ca87

Browse files
committed
Test for return type of signatures in type documentation
1 parent 63d182a commit 0e5ca87

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

xt/return-type.t

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
use v6;
2+
use Test;
3+
use lib 'lib';
4+
5+
my @files;
6+
7+
# Every .pod6 file in the Type directory.
8+
@files = qx<git ls-files>.lines.grep(* ~~ /'.pod6'/).grep(* ~~ /Type/);
9+
10+
plan +@files;
11+
12+
for @files -> $file {
13+
my @lines;
14+
my Int $line-no = 1;
15+
for $file.IO.lines -> $line {
16+
if so $line ~~ /(multi|method|sub) .+? ')' \s+? 'returns' \s+? (<alnum>|':')+? $/ {
17+
@lines.push($line-no);
18+
}
19+
$line-no++;
20+
}
21+
if @lines {
22+
flunk "$file has bad return type at lines: {@lines}";
23+
} else {
24+
pass "$file return types are ok";
25+
}
26+
}

0 commit comments

Comments
 (0)