File: 01basic.t

package info (click to toggle)
sepia 0.992-8
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 652 kB
  • sloc: perl: 2,811; lisp: 2,655; sh: 46; makefile: 14
file content (52 lines) | stat: -rw-r--r-- 1,319 bytes parent folder | download | duplicates (5)
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
41
42
43
44
45
46
47
48
49
50
51
52
#!/usr/bin/env perl
use Test::Simple tests => 15;

require Data::Dumper;
require Sepia;
require Sepia::Xref;
require Sepia::Debug;
ok(1, 'loaded');

# XXX: this segfaults, so skip it.
# Sepia::Xref::rebuild();
ok(1, 'rebuild');

sub all
{
    my $ok = 1;
    $ok &&= $_ for @_;
    $ok;
}

my @loc1 = Sepia::location('Sepia::location');
ok($loc1[0][0] =~ /Sepia\.pm$/, 'location');
ok((grep { $_ eq 'Sepia::location' } Sepia::apropos('location')), 'apropos');
# 4 to here
sub apply_to_loc                # 3 tests per call.
{
    my $f = shift;
    my $loc1 = $f->('location');
    ok($loc1, 'location 1');
    my $loc2 = $f->('Sepia::location');
    ok($loc2, 'fullname location');
    my $ok = 1;
    ok(all(map { $loc1->[$_] eq $loc2->[$_] } 0..$#{$loc1}), 'sameness');
    $loc1;
}

apply_to_loc(\&Sepia::Xref::callers);
apply_to_loc(\&Sepia::Xref::callees);
# 10 tests to here.

my @subs = Sepia::mod_subs('Sepia');
ok(all(map { defined &{"Sepia::$_"} } @subs), 'mod_subs');
if (eval 'use Module::Info; 1') {
    ok(Sepia::module_info('Sepia', 'name') eq 'Sepia');
    ok(Sepia::module_info('Sepia', 'version') eq $Sepia::VERSION);
    ok(Sepia::module_info('Sepia', 'file') =~ /Sepia\.pm$/);
    ok(Sepia::module_info('Sepia', 'is_core') == 0);
} else {
    ok(1, 'skipped -- no Module::Info') for 1..4;
}

exit;