File: function_parameters.t

package info (click to toggle)
libperl-prereqscanner-notquitelite-perl 0.9917-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 944 kB
  • sloc: perl: 5,239; makefile: 2
file content (69 lines) | stat: -rw-r--r-- 1,805 bytes parent folder | download | duplicates (3)
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
use strict;
use warnings;
use FindBin;
use lib "$FindBin::Bin/../../";
use Test::More;
use t::scan::Util;

test(<<'TEST'); # MHOWARD/Class-Type-Enum-0.009/lib/Class/Type/Enum.pm
use Function::Parameters;

method coerce_any ($class: $value) {
  return $value if eval { $value->isa($class) };

  for my $method (qw( inflate_ordinal inflate_symbol )) {
    my $enum = eval { $class->$method($value) };
    return $enum if $enum;
  }
  croak "Could not coerce invalid value [$value] into $class";
}
TEST

test(<<'TEST'); # MHOWARD/Class-Type-Enum-0.009/lib/Class/Type/Enum.pm
use Function::Parameters;

method stringify ($, $) {
  $self->ord_to_sym->{$self->{ord}};
}
TEST

test(<<'TEST'); # TJC/Test-PostgreSQL-1.23/lib/Test/PostgreSQL.pm
use Moo;
use Function::Parameters qw(:strict);

has base_dir => (
  is => "rw",
  default => sub {
    File::Temp->newdir(
        'pgtest.XXXXX',
        CLEANUP => $ENV{TEST_POSTGRESQL_PRESERVE} ? undef : 1,
        EXLOCK  => 0,
        TMPDIR  => 1
    );
  },
  coerce => fun ($newval) {
    # Ensure base_dir is absolute; usually only the case if the user set it.
    # Avoid munging objects such as File::Temp
    ref $newval ? $newval : File::Spec->rel2abs($newval);
  },
);
TEST

test(<<'TEST'); # ZMUGHAL/Renard-Curie-0.001/lib/Renard/Curie/Component/LogWindow.pm
use Function::Parameters;

method log( (Str) :$category, (Str) :$level, (Str) :$message ) {
        $self->add_log( {
                category => $category,
                level => $level,
                message => $message } );

        my $buffer = $self->builder->get_object('log-text')->get_buffer;
        $buffer->insert( $buffer->get_end_iter,
                sprintf("[%s] {%s} %s\n", $level, $category, $message ) );

        $self->_scroll_log_textview_to_end;
}
TEST

done_testing;