chiark / gitweb /
lib/dpkg/tarfn.c: Kludge `tar_header_decode' to handle spurious `errno'.
[dpkg] / scripts / t / Dpkg_Build_Env.t
1 #!/usr/bin/perl
2 #
3 # This program is free software; you can redistribute it and/or modify
4 # it under the terms of the GNU General Public License as published by
5 # the Free Software Foundation; either version 2 of the License, or
6 # (at your option) any later version.
7 #
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 # GNU General Public License for more details.
12 #
13 # You should have received a copy of the GNU General Public License
14 # along with this program.  If not, see <https://www.gnu.org/licenses/>.
15
16 use strict;
17 use warnings;
18
19 use Test::More tests => 14;
20
21 BEGIN {
22     use_ok('Dpkg::Build::Env');
23 }
24
25 $ENV{DPKG_TEST_VAR_A} = 100;
26 $ENV{DPKG_TEST_VAR_B} = 200;
27 delete $ENV{DPKG_TEST_VAR_Z};
28
29 is(scalar Dpkg::Build::Env::list_accessed(), 0, 'no accessed variables');
30 is(scalar Dpkg::Build::Env::list_modified(), 0, 'no modified variables');
31
32 is(Dpkg::Build::Env::get('DPKG_TEST_VAR_A'), 100, 'get value');
33
34 is(scalar Dpkg::Build::Env::list_accessed(), 1, '1 accessed variables');
35 is(scalar Dpkg::Build::Env::list_modified(), 0, 'no modified variables');
36
37 is(Dpkg::Build::Env::get('DPKG_TEST_VAR_B'), 200, 'get value');
38 Dpkg::Build::Env::set('DPKG_TEST_VAR_B', 300);
39 is(Dpkg::Build::Env::get('DPKG_TEST_VAR_B'), 300, 'set value');
40
41 is(scalar Dpkg::Build::Env::list_accessed(), 2, '2 accessed variables');
42 is(scalar Dpkg::Build::Env::list_modified(), 1, '1 modified variable');
43
44 ok(Dpkg::Build::Env::has('DPKG_TEST_VAR_A'), 'variables is present');
45 ok(!Dpkg::Build::Env::has('DPKG_TEST_VAR_Z'), 'variables is not present');
46
47 is(scalar Dpkg::Build::Env::list_accessed(), 3, '2 accessed variables');
48 is(scalar Dpkg::Build::Env::list_modified(), 1, '1 modified variable');
49
50 1;