File Coverage

blib/lib/Dpkg/Vars.pm
Criterion Covered Total %
statement 25 25 100.0
branch 6 6 100.0
condition n/a
subroutine 8 8 100.0
pod 0 2 0.0
total 39 41 95.1


line stmt bran cond sub pod time code
1             # Copyright © 2007-2009,2012-2013 Guillem Jover
2             # Copyright © 2007 Raphaël Hertzog
3             #
4             # This program is free software; you can redistribute it and/or modify
5             # it under the terms of the GNU General Public License as published by
6             # the Free Software Foundation; either version 2 of the License, or
7             # (at your option) any later version.
8             #
9             # This program is distributed in the hope that it will be useful,
10             # but WITHOUT ANY WARRANTY; without even the implied warranty of
11             # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12             # GNU General Public License for more details.
13             #
14             # You should have received a copy of the GNU General Public License
15             # along with this program. If not, see .
16              
17             package Dpkg::Vars;
18              
19 1     1   70024 use strict;
  1         10  
  1         29  
20 1     1   5 use warnings;
  1         2  
  1         62  
21              
22             our $VERSION = '0.03';
23             our @EXPORT = qw(
24             get_source_package
25             set_source_package
26             );
27              
28 1     1   7 use Exporter qw(import);
  1         2  
  1         37  
29              
30 1     1   439 use Dpkg::ErrorHandling;
  1         3  
  1         81  
31 1     1   8 use Dpkg::Gettext;
  1         2  
  1         50  
32 1     1   438 use Dpkg::Package;
  1         2  
  1         157  
33              
34             my $sourcepackage;
35              
36             sub get_source_package {
37 3     3 0 552 return $sourcepackage;
38             }
39              
40             sub set_source_package {
41 4     4 0 102 my $v = shift;
42 4         11 my $err = pkg_name_is_illegal($v);
43 4 100       14 error(g_("source package name '%s' is illegal: %s"), $v, $err) if $err;
44              
45 3 100       14 if (not defined($sourcepackage)) {
    100          
46 1         4 $sourcepackage = $v;
47             } elsif ($v ne $sourcepackage) {
48 1         4 error(g_('source package has two conflicting values - %s and %s'),
49             $sourcepackage, $v);
50             }
51             }
52              
53             1;