File: ss_dup.t

package info (click to toggle)
perl 5.20.2-3%2Bdeb8u11
  • links: PTS, VCS
  • area: main
  • in suites: jessie
  • size: 102,964 kB
  • sloc: perl: 555,553; ansic: 214,041; sh: 38,121; pascal: 8,783; cpp: 3,895; makefile: 2,393; xml: 2,325; yacc: 1,741
file content (40 lines) | stat: -rw-r--r-- 863 bytes parent folder | download | duplicates (2)
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
30
31
32
33
34
35
36
37
38
39
40
#!perl

@TODO = qw [ SAVEt_SAVESWITCHSTACK ];
@TODO{@TODO} = ();

BEGIN { chdir 't'; unshift @INC, "../lib"; require './test.pl' }
use Config;

if ( $Config{usecrosscompile} ) {
  skip_all( "Not all files are available during cross-compilation" );
}

sub read_cases {
  my ($file, $func) = @_;

  open my $fh, $file or die "$0 cannot open $file: $!";

  while (readline $fh) {
    last if /^Perl_$func/;
  }
  my %found;
  while (readline $fh) {
    last if /^}/;
    $found{$1}++ if /case (SAVEt_\w*):/;
  }
  close $fh or die "$0 cannot close $file: $!";
  \%found;
}

my $leave_scope = read_cases "../scope.c", "leave_scope";
my $ss_dup      = read_cases "../sv.c",    "ss_dup";

ok scalar %$leave_scope, 'we got some';

for (sort keys %$leave_scope) {
  local $::TODO = ' ' if exists $TODO{$_};
  ok exists $$ss_dup{$_}, "ss_dup handles $_";
}

done_testing;