1#!/usr/bin/perl 2 3use utf8; 4use warnings; 5use strict; 6use Test::Inter; 7$::ti = new Test::Inter $0; 8require "tests.pl"; 9 10our $obj = new Date::Manip::Date; 11$obj->config("forcedate","1997-03-08-12:30:00,America/New_York"); 12$obj->config("language","Russian","dateformat","nonUS"); 13 14sub test { 15 my(@test)=@_; 16 if ($test[0] eq "config") { 17 shift(@test); 18 $obj->config(@test); 19 return (); 20 } 21 22 my $err = $obj->parse(@test); 23 if ($err) { 24 return $obj->err(); 25 } else { 26 my $d1 = $obj->value(); 27 return $d1; 28 } 29} 30 31my($currS,$currMN,$currH,$currD,$currM,$currY)=("00","30","12","08","03","1997"); 32 33my $now = "${currY}${currM}${currD}${currH}:${currMN}:${currS}"; 34my $today = "${currY}${currM}${currD}00:00:00"; 35my $yesterdaydate = "${currY}${currM}". ${currD}-1; 36my $tomorrowdate = "${currY}${currM}". ${currD}+1; 37my $yesterday = "${yesterdaydate}00:00:00"; 38my $tomorrow = "${tomorrowdate}00:00:00"; 39 40my $tests=" 41 42'СЕГОДНЯ' => $today 43 44'сегодня' => $today 45 46'сейчас' => $now 47 48'завтра' => $tomorrow 49 50'вчера' => $yesterday 51 52'двадцать седьмого июня 1977 16:00:00' => 1977062716:00:00 53 5404.12.1999 => 1999120400:00:00 55 56'2 мая 2012' => 2012050200:00:00 57 58'2 май 2012' => 2012050200:00:00 59 6031/12/2000 => 2000123100:00:00 61 62'3 сен 1975' => 1975090300:00:00 63 64'27 окт 2001' => 2001102700:00:00 65 66'первое сентября 1980' => 1980090100:00:00 67 68'декабрь 20, 1999' => 1999122000:00:00 69 70'20 июля 1987 12:32:20' => 1987072012:32:20 71 72'23:37:20 первое июня 1987' => 1987060123:37:20 73 74'20/12/01 17:27:08' => 2001122017:27:08 75 76'20/12/01 в 17:27:08' => 2001122017:27:08 77 78'20/12/01 в 17ч27м08с00' => 2001122017:27:08 79 80'17:27:08 20/12/01' => 2001122017:27:08 81 82'4 октября 1975 4ч00 дня' => 1975100416:00:00 83 84#'4 октября 1975 4 часа дня' => 1975100416:00:00 85 86#'4 октября 1975 в 4 часа дня' => 1975100416:00:00 87"; 88 89$::ti->tests(func => \&test, 90 tests => $tests); 91$::ti->done_testing(); 92 93# Local Variables: 94# mode: cperl 95# indent-tabs-mode: nil 96# cperl-indent-level: 3 97# cperl-continued-statement-offset: 2 98# cperl-continued-brace-offset: 0 99# cperl-brace-offset: 0 100# cperl-brace-imaginary-offset: 0 101# cperl-label-offset: 0 102# End: 103