This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
POSIX.xs: Never pass NULL to ctermid()
[perl5.git] / cpan / IO-Compress / t / 111const-deflate.t
1 BEGIN {
2     if ($ENV{PERL_CORE}) {
3         chdir 't' if -d 't';
4         @INC = ("../lib", "lib/compress");
5     }
6 }
7
8 use lib qw(t t/compress);
9 use strict;
10 use warnings;
11 use bytes;
12
13 use Test::More ;
14 use CompTestUtils;
15
16
17 BEGIN {
18     # use Test::NoWarnings, if available
19     my $extra = 0 ;
20     $extra = 1
21         if eval { require Test::NoWarnings ;  import Test::NoWarnings; 1 };
22
23     plan tests => 355 + $extra ;
24 }
25
26
27 {
28     use Compress::Raw::Zlib ;
29         
30     my %all;
31     for my $symbol (@Compress::Raw::Zlib::DEFLATE_CONSTANTS)
32     {
33         eval "defined Compress::Raw::Zlib::$symbol" ;
34         $all{$symbol} = ! $@ ;
35     }   
36            
37     my $pkg = 1;
38    
39     for my $module ( qw( Adapter::Deflate RawDeflate Deflate Gzip Zip )) 
40     {
41         ++ $pkg ; 
42         eval <<EOM;
43             package P$pkg;
44             use Test::More ;
45             use CompTestUtils;
46         
47             use IO::Compress::$module () ;
48         
49             ::title "IO::Compress::$module - no import" ;       
50 EOM
51         is $@, "", "create package P$pkg";
52         for my $symbol (@Compress::Raw::Zlib::DEFLATE_CONSTANTS)
53         {
54             if ( $all{$symbol})
55             {
56                 eval "package P$pkg; defined IO::Compress::${module}::$symbol ;";            
57                 is $@, "", "  has $symbol";
58             }
59             else
60             {
61                 ok 1, "  $symbol not available";
62             }
63         }        
64     }    
65     
66     for my $module ( qw( Adapter::Deflate RawDeflate Deflate Gzip Zip )) 
67     {
68         for my $label (keys %Compress::Raw::Zlib::DEFLATE_CONSTANTS)
69         {
70             ++ $pkg ; 
71
72             eval <<EOM;
73                 package P$pkg;
74                 use Test::More ;
75                 use CompTestUtils;
76             
77                 use IO::Compress::$module qw(:$label) ;
78             
79                 ::title "IO::Compress::$module - import :$label" ; 
80           
81 EOM
82             is $@, "", "create package P$pkg";
83             
84             for my $symbol (@{ $Compress::Raw::Zlib::DEFLATE_CONSTANTS{$label} } )
85             {
86                 if ( $all{$symbol})
87                 {
88                     eval "package P$pkg; defined $symbol ;";            
89                     is $@, "", "  has $symbol";
90                 }
91                 else
92                 {
93                     ok 1, "  $symbol not available";
94                 }                               
95             }   
96         }     
97     }       
98     
99 }
100