1use strict; 2use warnings; 3use Test::More tests => 6; 4use File::Spec; 5use File::BaseDir; 6use lib 't/lib'; 7use Helper qw( build_test_data ); 8 9my $conf = File::BaseDir->new; 10isa_ok $conf, 'File::BaseDir'; 11 12{ 13 my $rootdir = ($^O eq 'MSWin32') ? 'c:\\' : File::Spec->rootdir(); 14 15 $ENV{XDG_DATA_DIRS} = ''; 16 is_deeply( [$conf->xdg_data_dirs()], 17 [ File::Spec->catdir($rootdir, qw/usr local share/), 18 File::Spec->catdir($rootdir, qw/usr share/) ], 19 'xdg_data_dirs default - OO'); 20} 21 22{ 23 my $root = build_test_data; 24 25 $ENV{XDG_DATA_HOME} = File::Spec->catdir($root, 't'); 26 is($conf->data_dirs('data'), File::Spec->catdir($root, qw/t data/), 27 'data_dirs - OO'); 28 is(File::BaseDir->data_dirs('data'), File::Spec->catdir($root, qw/t data/), 29 'data_dirs - Module'); 30 31 is($conf->data_home('data', 'test'), File::Spec->catfile($root, qw/t data test/), 32 'data_home - OO'); 33 is(File::BaseDir->data_home('data', 'test'), File::Spec->catfile($root, qw/t data test/), 34 'data_home - Module'); 35} 36