Changeset 62


Ignore:
Timestamp:
11/28/05 08:30:12 (19 years ago)
Author:
thauvin
Message:
  • allow to use strftime format for destination
  • fix test
Location:
trunk/soft/ObsData
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/soft/ObsData/ObsData.pm

    • Property cvs2svn:cvs-rev changed from 1.18 to 1.19
    r55 r62  
    285285        my @matcharg = split(/\s+/, $self->getvalue($datatype, 'matcharg')); 
    286286        my @destarg = split(/\s+/, $self->getvalue($datatype, 'destarg')); 
    287         my %val; 
     287        my @gmtime = gmtime; 
     288        my %val = map { '%' . $_ => strftime('%' . $_, @gmtime) }  
     289            qw(a A b B c C d D e F G g h H I j k l m M n p P r R s S T t T U V W w x X y Y z Z); 
    288290        foreach (@matcharg) { 
    289291            $val{$_} = shift(@data); 
  • trunk/soft/ObsData/t/O-02.t

    • Property cvs2svn:cvs-rev changed from 1.10 to 1.11
    r55 r62  
    11# $Id$ 
    22 
    3 use Test::More tests => 28; 
     3use Test::More tests => 29; 
    44use File::Temp qw(tempdir); 
     5use POSIX qw(strftime); 
    56 
    67use_ok('ObsData'); 
     
    4445 
    4546# Testing match rules 
    46 ok($o->match_data_type('ozone', 'ozone12.gz'), "String matching setting"); 
    47 ok(!$o->match_data_type('ozone', 'foo12.gz'), "String no matching setting"); 
     47ok($o->match_data_type('ozone', 'ozone12'), "String matching setting"); 
     48ok(!$o->match_data_type('ozone', 'foo12'), "String no matching setting"); 
    4849 
    49 ok($o->find_match_data_type('ozone12.gz'), "is able to find good datatype"); 
    50 ok(!$o->find_match_data_type('foo12.gz'), "is able to find good datatype"); 
     50ok($o->find_match_data_type('ozone12'), "is able to find good datatype"); 
     51ok(!$o->find_match_data_type('foo12'), "is able to find good datatype"); 
    5152 
    5253ok( 
    5354    eq_array(  
    54         [ $o->build_dest_filename('ozone12.gz') ],  
    55         [ 'ozone', 'dest12' ] 
     55        [ $o->build_dest_filename('ozone12') ],  
     56        [ 'ozone', '12/dest12' ] 
    5657    ),  
    5758    "Can build dest string" 
     
    5960ok( 
    6061    eq_array( 
    61         [ $o->build_dest_filename('ozone12.gz', 'ozone') ], 
    62         [ 'ozone', 'dest12' ] 
     62        [ $o->build_dest_filename('ozone12', 'ozone') ], 
     63        [ 'ozone', '12/dest12' ] 
    6364    ), 
    6465    "Can build dest string with datatype" 
    6566); 
    66 ok(!defined($o->build_dest_filename('foo12.gz')), "Return undef if no match"); 
    67 ok(!defined($o->build_dest_filename('ozone12.gz', 'oxygene')), "Return undef if no match"); 
     67ok( 
     68    eq_array( 
     69        [ $o->build_dest_filename('oxygene12', 'oxygene') ], 
     70        [ 'oxygene', strftime("%Y/dest12", gmtime) ] 
     71    ), 
     72    "Can build dest string with datatype" 
     73); 
     74ok(!defined($o->build_dest_filename('foo12')), "Return undef if no match"); 
     75ok(!defined($o->build_dest_filename('ozone12', 'oxygene')), "Return undef if no match"); 
    6876 
    6977$o = undef; # Explicit destroy 
  • trunk/soft/ObsData/testdata/obsdata-conftest

    • Property cvs2svn:cvs-rev changed from 1.6 to 1.7
    r61 r62  
    1919 
    2020[oxygene] 
     21match= ^oxygene(\d\d)$ 
     22matcharg=num 
     23destarg=%Y num 
     24dest=%s/dest%s 
Note: See TracChangeset for help on using the changeset viewer.