File: chainlint-cat.pl

package info (click to toggle)
cgit 1.2.3%2Bgit20240802.70.09d24d7%2Bgit2.46.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 56,184 kB
  • sloc: ansic: 301,641; sh: 254,574; perl: 29,353; tcl: 22,151; makefile: 4,198; python: 3,594; javascript: 810; csh: 45; ruby: 43; lisp: 12
file content (29 lines) | stat: -rw-r--r-- 709 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/usr/bin/env perl

my $outdir = shift;
open(my $tests, '>', "$outdir/tests")
	or die "unable to open $outdir/tests: $!";
open(my $expect, '>', "$outdir/expect")
	or die "unable to open $outdir/expect: $!";

print $expect "# chainlint: $outdir/tests\n";

my $offset = 0;
for my $script (@ARGV) {
	print $expect "# chainlint: $script\n";

	open(my $expect_in, '<', "chainlint/$script.expect")
		or die "unable to open chainlint/$script.expect: $!";
	while (<$expect_in>) {
		s/^\d+/$& + $offset/e;
		print $expect $_;
	}

	open(my $test_in, '<', "chainlint/$script.test")
		or die "unable to open chainlint/$script.test: $!";
	while (<$test_in>) {
		/^# LINT: / and next;
		print $tests $_;
		$offset++;
	}
}