File: undef_handling.t

package info (click to toggle)
libpdf-fdf-simple-perl 0.21-3.1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid, trixie
  • size: 1,012 kB
  • sloc: perl: 15,109; makefile: 7
file content (53 lines) | stat: -r--r--r-- 1,434 bytes parent folder | download | duplicates (4)
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
### -*- mode: perl; -*-

use Test::More;

use PDF::FDF::Simple;
use File::Temp qw( tempfile );

use Data::Dumper;
use Parse::RecDescent;
use strict;
use warnings;

plan tests => 2;

################## tests ##################


my ($fdf_fh, $fdf_fname) = tempfile (
                                     "/tmp/XXXXXX",
                                     SUFFIX => '.fdf',
                                     UNLINK => 1
                                    );

my $fdf = new PDF::FDF::Simple ({
                                 filename => $fdf_fname,
                                });
$fdf->content ({
                'name'                 => 'Blubberman',
                'organisation'         => 'Misc Stuff Ltd.',
                'dotted.field.name'    => 'Hello world.',
                'language.radio.value' => 'French',
                'my.checkbox.value'    => 'On',
                'empty_stuff'          => undef,
               });

# save undefined fields
$fdf->skip_undefined_fields (0); # is default
$fdf->save;
my $fdf2 = new PDF::FDF::Simple ({ filename => $fdf_fname });
my $erg = $fdf2->load;

ok ((defined $erg->{empty_stuff} and $erg->{empty_stuff} eq ''),
    "undef becomes empty");


# don't save undefined fields
$fdf->skip_undefined_fields (1);
$fdf->save;
$fdf2 = new PDF::FDF::Simple ({ filename => $fdf_fname });
$erg = $fdf2->load;

ok ((not defined $erg->{empty_stuff}), "skip undefined values");