os/ossrv/genericservices/httputils/Test/t_tinternetdate/t_internetdatetestcases.h
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/os/ossrv/genericservices/httputils/Test/t_tinternetdate/t_internetdatetestcases.h Fri Jun 15 03:10:57 2012 +0200
1.3 @@ -0,0 +1,620 @@
1.4 +// Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
1.5 +// All rights reserved.
1.6 +// This component and the accompanying materials are made available
1.7 +// under the terms of "Eclipse Public License v1.0"
1.8 +// which accompanies this distribution, and is available
1.9 +// at the URL "http://www.eclipse.org/legal/epl-v10.html".
1.10 +//
1.11 +// Initial Contributors:
1.12 +// Nokia Corporation - initial contribution.
1.13 +//
1.14 +// Contributors:
1.15 +//
1.16 +// Description:
1.17 +// Test cases for t_internetdate test harness
1.18 +//
1.19 +//
1.20 +
1.21 +
1.22 +#ifndef __T_INTERNETDATETESTCASES_H__
1.23 +#define __T_INTERNETDATETESTCASES_H__
1.24 +
1.25 +enum TInternetDateTestPanic
1.26 + {
1.27 + EInternetDateTestFailPanic =0,
1.28 + EInternetDateCorruptTestFailPanic =1
1.29 + };
1.30 +
1.31 +struct TInternetDateTestCase
1.32 + {
1.33 + const TText8* iTextFormat;
1.34 + TInt iYear;
1.35 + TMonth iMonth;
1.36 + TInt iDay; // specify the day with a -1 offset as they start from 0
1.37 + TInt iHour;
1.38 + TInt iMin;
1.39 + TInt iSecond;
1.40 + };
1.41 +
1.42 +
1.43 +#ifdef __PARSEINTERNETFORMTEST__
1.44 +
1.45 +const TInt KNumberCorruptTestCases=15;
1.46 +static const TText8* KCorruptTestCases[]=
1.47 + {
1.48 + _S8("Sun, 06 Nov 19940 08:49:37 GMT"),
1.49 + _S8("Sun, 06 Nov 01994 08:49:37 GMT"),
1.50 + _S8("Sun, 06 Nov 1994 008:49:37 GMT"),
1.51 + _S8("Sun, 06 Nov 1994 080:49:37 GMT"),
1.52 + _S8("Sun, 06 Nov 1994 010:49:37 GMT"),
1.53 + _S8("Sun, 06 Nov 1994 08:049:37 GMT"),
1.54 + _S8("Sun, 06 Nov 1994 08:010:37 GMT"),
1.55 + _S8("Sun, 06 Nov 1994 08:490:37 GMT"),
1.56 + _S8("Sun, 06 Nov 1994 08:090:37 GMT"),
1.57 + _S8("Sun, 06 Nov 1994 08:49:037 GMT"),
1.58 + _S8("Sun, 06 Nov 1994 08:49:370 GMT"),
1.59 + _S8("Sun, 06 Nov 1994 08:49:030 GMT"),
1.60 +
1.61 + _S8("Sun, 0612343 Nov 1994 08:49:37 GMT"),
1.62 + _S8("Sun, 06 November 1994 08:49:37 GMT"),
1.63 + _S8("Sun, 0006 Nov 1994 08:49:37 GMT")
1.64 + };
1.65 +#endif
1.66 +
1.67 +const TInt KNumberRfc1123GMTTzTestCases = 22;
1.68 +const struct TInternetDateTestCase KRfc1123GMTTzTestCases[] =
1.69 + {
1.70 +
1.71 + {_S8("Sun, 06 Nov 1994 08:49:37 GMT"), 1994,ENovember,5,8,49,37},
1.72 + {_S8("Mon, 21 Jan 2002 12:00:00 GMT"), 2002,EJanuary, 20,12,0,0},
1.73 + {_S8("Tue, 22 Jan 2002 12:00:00 GMT"), 2002,EJanuary, 21,12,0,0},
1.74 + {_S8("Wed, 23 Jan 2002 12:00:00 GMT"), 2002,EJanuary, 22,12,0,0},
1.75 + {_S8("Thu, 24 Jan 2002 12:00:00 GMT"), 2002,EJanuary, 23,12,0,0},
1.76 + {_S8("Fri, 25 Jan 2002 12:00:00 GMT"), 2002,EJanuary, 24,12,0,0},
1.77 + {_S8("Sat, 26 Jan 2002 12:00:00 GMT"), 2002,EJanuary, 25,12,0,0},
1.78 + {_S8("Sun, 27 Jan 2002 12:00:00 GMT"), 2002,EJanuary, 26,12,0,0},
1.79 + {_S8("Mon, 04 Feb 2002 12:00:00 GMT"), 2002,EFebruary, 3,12,0,0},
1.80 + {_S8("Mon, 04 Mar 2002 12:00:00 GMT"), 2002,EMarch, 3,12,0,0},
1.81 + {_S8("Tue, 02 Apr 2002 12:00:00 GMT"), 2002,EApril, 1,12,0,0},
1.82 + {_S8("Tue, 07 May 2002 12:00:00 GMT"), 2002,EMay, 6,12,0,0},
1.83 + {_S8("Wed, 05 Jun 2002 12:00:00 GMT"), 2002,EJune, 4,12,0,0},
1.84 + {_S8("Wed, 10 Jul 2002 12:00:00 GMT"), 2002,EJuly, 9,12,0,0},
1.85 + {_S8("Thu, 15 Aug 2002 12:00:00 GMT"), 2002,EAugust, 14,12,0,0},
1.86 + {_S8("Thu, 12 Sep 2002 12:00:00 GMT"), 2002,ESeptember, 11,12,0,0},
1.87 + {_S8("Fri, 11 Oct 2002 12:00:00 GMT"), 2002,EOctober, 10,12,0,0},
1.88 + {_S8("Fri, 18 Oct 2002 12:00:00 GMT"), 2002,EOctober, 17,12,0,0},
1.89 + {_S8("Sat, 23 Nov 2002 12:00:00 GMT"), 2002,ENovember, 22,12,0,0},
1.90 + {_S8("Sat, 30 Nov 2002 12:00:00 GMT"), 2002,ENovember, 29,12,0,0},
1.91 + {_S8("Sun, 01 Dec 2002 12:00:00 GMT"), 2002,EDecember, 0,12,0,0},
1.92 + {_S8("Sun, 29 Dec 2002 12:00:00 GMT"), 2002,EDecember, 28,12,0,0},
1.93 + };
1.94 +
1.95 +
1.96 +const TInt KNumberINC090613TestCases = 2;
1.97 +static const TBuf8<50> KINC090613TestCases[]=
1.98 + {
1.99 + _L8("Sun, 6 Nov 1994 08:49:37 GMT"),
1.100 + _L8("Sun, 06 Nov 1994 08:49:37 GMT")
1.101 + };
1.102 +
1.103 +const TInt KNumberINC107382TestCases = 9;
1.104 +static const TBuf8<50> KINC107382TestCases[]=
1.105 + {
1.106 + _L8(" Sun, 6 Nov 1994 08:49:37 GMT"),
1.107 + _L8("Sun, 06 Nov 1994 08:49:37 GMT "),
1.108 + _L8(" Sun, 06 Nov 1994 08:49:37 GMT "),
1.109 + _L8(" Sunday, 06-Nov-94 08:49:37 GMT"),
1.110 + _L8("Sunday, 06-Nov-94 08:49:37 GMT "),
1.111 + _L8(" Sunday, 06-Nov-94 08:49:37 GMT "),
1.112 + _L8(" Sun Nov 6 08:49:37 1994"),
1.113 + _L8("Sun Nov 6 08:49:37 1994 "),
1.114 + _L8(" Sun Nov 6 08:49:37 1994 "),
1.115 + };
1.116 +
1.117 +const TInt KNumberRfc850GMTTzTestCases = 22;
1.118 +const struct TInternetDateTestCase KRfc850GMTTzTestCases[] =
1.119 + {
1.120 +
1.121 + {_S8("Sun, 06-Nov-94 08:49:37 GMT"), 1994,ENovember,5,8,49,37},
1.122 + {_S8("Mon, 21-Jan-02 12:00:00 GMT"), 2002,EJanuary, 20,12,0,0},
1.123 + {_S8("Tue, 22-Jan-02 12:00:00 GMT"), 2002,EJanuary, 21,12,0,0},
1.124 + {_S8("Wed, 23-Jan-02 12:00:00 GMT"), 2002,EJanuary, 22,12,0,0},
1.125 + {_S8("Thu, 24-Jan-02 12:00:00 GMT"), 2002,EJanuary, 23,12,0,0},
1.126 + {_S8("Fri, 25-Jan-02 12:00:00 GMT"), 2002,EJanuary, 24,12,0,0},
1.127 + {_S8("Sat, 26-Jan-02 12:00:00 GMT"), 2002,EJanuary, 25,12,0,0},
1.128 + {_S8("Sun, 27-Jan-02 12:00:00 GMT"), 2002,EJanuary, 26,12,0,0},
1.129 + {_S8("Mon, 04-Feb-02 12:00:00 GMT"), 2002,EFebruary, 3,12,0,0},
1.130 + {_S8("Mon, 04-Mar-02 12:00:00 GMT"), 2002,EMarch, 3,12,0,0},
1.131 + {_S8("Tue, 02-Apr-02 12:00:00 GMT"), 2002,EApril, 1,12,0,0},
1.132 + {_S8("Tue, 07-May-02 12:00:00 GMT"), 2002,EMay, 6,12,0,0},
1.133 + {_S8("Wed, 05-Jun-02 12:00:00 GMT"), 2002,EJune, 4,12,0,0},
1.134 + {_S8("Wed, 10-Jul-02 12:00:00 GMT"), 2002,EJuly, 9,12,0,0},
1.135 + {_S8("Thu, 15-Aug-02 12:00:00 GMT"), 2002,EAugust, 14,12,0,0},
1.136 + {_S8("Thu, 12-Sep-02 12:00:00 GMT"), 2002,ESeptember, 11,12,0,0},
1.137 + {_S8("Fri, 11-Oct-02 12:00:00 GMT"), 2002,EOctober, 10,12,0,0},
1.138 + {_S8("Fri, 18-Oct-02 12:00:00 GMT"), 2002,EOctober, 17,12,0,0},
1.139 + {_S8("Sat, 23-Nov-02 12:00:00 GMT"), 2002,ENovember, 22,12,0,0},
1.140 + {_S8("Sat, 30-Nov-02 12:00:00 GMT"), 2002,ENovember, 29,12,0,0},
1.141 + {_S8("Sun, 01-Dec-02 12:00:00 GMT"), 2002,EDecember, 0,12,0,0},
1.142 + {_S8("Sun, 29-Dec-02 12:00:00 GMT"), 2002,EDecember, 28,12,0,0},
1.143 + };
1.144 +
1.145 +
1.146 +const TInt KNumberAscTimeTestCases = 22;
1.147 +const struct TInternetDateTestCase KAscTimeTestCases[] =
1.148 + {
1.149 + {_S8("Sun Nov 6 08:49:37 1994"), 1994,ENovember,5,8,49,37},
1.150 + {_S8("Mon Jan 21 12:00:00 2002"), 2002,EJanuary, 20,12,0,0},
1.151 + {_S8("Tue Jan 22 12:00:00 2002"), 2002,EJanuary, 21,12,0,0},
1.152 + {_S8("Wed Jan 23 12:00:00 2002"), 2002,EJanuary, 22,12,0,0},
1.153 + {_S8("Thu Jan 24 12:00:00 2002"), 2002,EJanuary, 23,12,0,0},
1.154 + {_S8("Fri Jan 25 12:00:00 2002"), 2002,EJanuary, 24,12,0,0},
1.155 + {_S8("Sat Jan 26 12:00:00 2002"), 2002,EJanuary, 25,12,0,0},
1.156 + {_S8("Sun Jan 27 12:00:00 2002"), 2002,EJanuary, 26,12,0,0},
1.157 + {_S8("Mon Feb 4 12:00:00 2002"), 2002,EFebruary, 3,12,0,0},
1.158 + {_S8("Mon Mar 4 12:00:00 2002"), 2002,EMarch, 3,12,0,0},
1.159 + {_S8("Tue Apr 2 12:00:00 2002"), 2002,EApril, 1,12,0,0},
1.160 + {_S8("Tue May 7 12:00:00 2002"), 2002,EMay, 6,12,0,0},
1.161 + {_S8("Wed Jun 5 12:00:00 2002"), 2002,EJune, 4,12,0,0},
1.162 + {_S8("Wed Jul 10 12:00:00 2002"), 2002,EJuly, 9,12,0,0},
1.163 + {_S8("Thu Aug 15 12:00:00 2002"), 2002,EAugust, 14,12,0,0},
1.164 + {_S8("Thu Sep 12 12:00:00 2002"), 2002,ESeptember, 11,12,0,0},
1.165 + {_S8("Fri Oct 11 12:00:00 2002"), 2002,EOctober, 10,12,0,0},
1.166 + {_S8("Fri Oct 18 12:00:00 2002"), 2002,EOctober, 17,12,0,0},
1.167 + {_S8("Sat Nov 23 12:00:00 2002"), 2002,ENovember, 22,12,0,0},
1.168 + {_S8("Sat Nov 30 12:00:00 2002"), 2002,ENovember, 29,12,0,0},
1.169 + {_S8("Sun Dec 1 12:00:00 2002"), 2002,EDecember, 0,12,0,0},
1.170 + {_S8("Sun Dec 29 12:00:00 2002"), 2002,EDecember, 28,12,0,0},
1.171 + };
1.172 +
1.173 +
1.174 +const TInt KNumberRfc1123NonGMTTzTestCases = 45;
1.175 +const struct TInternetDateTestCase KRfc1123NonGMTTzTestCases[] =
1.176 + {
1.177 + {_S8("Mon, 21 Jan 2002 00:00:00 EST"), 2002,EJanuary, 19,19,0,0}, // EST -5
1.178 + {_S8("Mon, 21 Jan 2002 23:00:00 EST"), 2002,EJanuary, 20,18,0,0}, // EST -5
1.179 + {_S8("Mon, 21 Jan 2002 00:00:00 EDT"), 2002,EJanuary, 19,20,0,0}, // EDT -4
1.180 + {_S8("Mon, 21 Jan 2002 23:00:00 EDT"), 2002,EJanuary, 20,19,0,0}, // EDT -4
1.181 +
1.182 + {_S8("Mon, 21 Jan 2002 00:00:00 CST"), 2002,EJanuary, 19,18,0,0}, // CST -6
1.183 + {_S8("Mon, 21 Jan 2002 23:00:00 CST"), 2002,EJanuary, 20,17,0,0}, // CST -6
1.184 + {_S8("Mon, 21 Jan 2002 00:00:00 CDT"), 2002,EJanuary, 19,19,0,0}, // CDT -5
1.185 + {_S8("Mon, 21 Jan 2002 23:00:00 CDT"), 2002,EJanuary, 20,18,0,0}, // CDT -5
1.186 +
1.187 + {_S8("Mon, 21 Jan 2002 00:00:00 MST"), 2002,EJanuary, 19,17,0,0}, // MST -7
1.188 + {_S8("Mon, 21 Jan 2002 23:00:00 MST"), 2002,EJanuary, 20,16,0,0}, // MST -7
1.189 + {_S8("Mon, 21 Jan 2002 00:00:00 MDT"), 2002,EJanuary, 19,18,0,0}, // MDT -6
1.190 + {_S8("Mon, 21 Jan 2002 23:00:00 MDT"), 2002,EJanuary, 20,17,0,0}, // MDT -6
1.191 +
1.192 + {_S8("Mon, 21 Jan 2002 00:00:00 PST"), 2002,EJanuary, 19,16,0,0}, // PST -8
1.193 + {_S8("Mon, 21 Jan 2002 23:00:00 PST"), 2002,EJanuary, 20,15,0,0}, // PST -8
1.194 + {_S8("Mon, 21 Jan 2002 00:00:00 PDT"), 2002,EJanuary, 19,17,0,0}, // PDT -7
1.195 + {_S8("Mon, 21 Jan 2002 23:00:00 PDT"), 2002,EJanuary, 20,16,0,0}, // PDT -7
1.196 +
1.197 + {_S8("Mon, 21 Jan 2002 00:00:00 UT"), 2002,EJanuary, 20,0,0,0}, // UT = GMT
1.198 + {_S8("Mon, 21 Jan 2002 23:00:00 UT"), 2002,EJanuary, 20,23,0,0}, // UT = GMT
1.199 + {_S8("Mon, 21 Jan 2002 00:00:00 GMT"), 2002,EJanuary, 20,0,0,0}, // GMT
1.200 + {_S8("Mon, 21 Jan 2002 23:00:00 GMT"), 2002,EJanuary, 20,23,0,0}, // GMT
1.201 +
1.202 + // Military Time Zones (All these should be considered equivalent to GMT)
1.203 + {_S8("Mon, 21 Jan 2002 00:00:00 A"), 2002,EJanuary, 20,0,0,0}, // A
1.204 + {_S8("Mon, 21 Jan 2002 00:00:00 B"), 2002,EJanuary, 20,0,0,0}, // B
1.205 + {_S8("Mon, 21 Jan 2002 00:00:00 C"), 2002,EJanuary, 20,0,0,0}, // C
1.206 + {_S8("Mon, 21 Jan 2002 00:00:00 D"), 2002,EJanuary, 20,0,0,0}, // D
1.207 + {_S8("Mon, 21 Jan 2002 00:00:00 E"), 2002,EJanuary, 20,0,0,0}, // E
1.208 + {_S8("Mon, 21 Jan 2002 00:00:00 F"), 2002,EJanuary, 20,0,0,0}, // F
1.209 + {_S8("Mon, 21 Jan 2002 00:00:00 G"), 2002,EJanuary, 20,0,0,0}, // G
1.210 + {_S8("Mon, 21 Jan 2002 00:00:00 H"), 2002,EJanuary, 20,0,0,0}, // H
1.211 + {_S8("Mon, 21 Jan 2002 00:00:00 I"), 2002,EJanuary, 20,0,0,0}, // I
1.212 + {_S8("Mon, 21 Jan 2002 00:00:00 K"), 2002,EJanuary, 20,0,0,0}, // K
1.213 + {_S8("Mon, 21 Jan 2002 00:00:00 L"), 2002,EJanuary, 20,0,0,0}, // L
1.214 + {_S8("Mon, 21 Jan 2002 00:00:00 M"), 2002,EJanuary, 20,0,0,0}, // M
1.215 + {_S8("Mon, 21 Jan 2002 00:00:00 Z"), 2002,EJanuary, 20,0,0,0}, // Z
1.216 + {_S8("Mon, 21 Jan 2002 00:00:00 N"), 2002,EJanuary, 20,0,0,0}, // N
1.217 + {_S8("Mon, 21 Jan 2002 00:00:00 O"), 2002,EJanuary, 20,0,0,0}, // O
1.218 + {_S8("Mon, 21 Jan 2002 00:00:00 P"), 2002,EJanuary, 20,0,0,0}, // P
1.219 + {_S8("Mon, 21 Jan 2002 00:00:00 Q"), 2002,EJanuary, 20,0,0,0}, // Q
1.220 + {_S8("Mon, 21 Jan 2002 00:00:00 R"), 2002,EJanuary, 20,0,0,0}, // R
1.221 + {_S8("Mon, 21 Jan 2002 00:00:00 S"), 2002,EJanuary, 20,0,0,0}, // S
1.222 + {_S8("Mon, 21 Jan 2002 00:00:00 T"), 2002,EJanuary, 20,0,0,0}, // T
1.223 + {_S8("Mon, 21 Jan 2002 00:00:00 U"), 2002,EJanuary, 20,0,0,0}, // U
1.224 + {_S8("Mon, 21 Jan 2002 00:00:00 V"), 2002,EJanuary, 20,0,0,0}, // V
1.225 + {_S8("Mon, 21 Jan 2002 00:00:00 W"), 2002,EJanuary, 20,0,0,0}, // W
1.226 + {_S8("Mon, 21 Jan 2002 00:00:00 X"), 2002,EJanuary, 20,0,0,0}, // X
1.227 + {_S8("Mon, 21 Jan 2002 00:00:00 Y"), 2002,EJanuary, 20,0,0,0} // Z
1.228 + };
1.229 +
1.230 +const TInt KNumberRfc850NonGMTTzTestCases = 45;
1.231 +const struct TInternetDateTestCase KRfc850NonGMTTzTestCases[] =
1.232 + {
1.233 + {_S8("Mon, 21-Jan-02 00:00:00 EST"), 2002,EJanuary, 19,19,0,0}, // EST -5
1.234 + {_S8("Mon, 21-Jan-02 23:00:00 EST"), 2002,EJanuary, 20,18,0,0}, // EST -5
1.235 + {_S8("Mon, 21-Jan-02 00:00:00 EDT"), 2002,EJanuary, 19,20,0,0}, // EDT -4
1.236 + {_S8("Mon, 21-Jan-02 23:00:00 EDT"), 2002,EJanuary, 20,19,0,0}, // EDT -4
1.237 +
1.238 + {_S8("Mon, 21-Jan-02 00:00:00 CST"), 2002,EJanuary, 19,18,0,0}, // CST -6
1.239 + {_S8("Mon, 21-Jan-02 23:00:00 CST"), 2002,EJanuary, 20,17,0,0}, // CST -6
1.240 + {_S8("Mon, 21-Jan-02 00:00:00 CDT"), 2002,EJanuary, 19,19,0,0}, // CDT -5
1.241 + {_S8("Mon, 21-Jan-02 23:00:00 CDT"), 2002,EJanuary, 20,18,0,0}, // CDT -5
1.242 +
1.243 + {_S8("Mon, 21-Jan-02 00:00:00 MST"), 2002,EJanuary, 19,17,0,0}, // MST -7
1.244 + {_S8("Mon, 21-Jan-02 23:00:00 MST"), 2002,EJanuary, 20,16,0,0}, // MST -7
1.245 + {_S8("Mon, 21-Jan-02 00:00:00 MDT"), 2002,EJanuary, 19,18,0,0}, // MDT -6
1.246 + {_S8("Mon, 21-Jan-02 23:00:00 MDT"), 2002,EJanuary, 20,17,0,0}, // MDT -6
1.247 +
1.248 + {_S8("Mon, 21-Jan-02 00:00:00 PST"), 2002,EJanuary, 19,16,0,0}, // PST -8
1.249 + {_S8("Mon, 21-Jan-02 23:00:00 PST"), 2002,EJanuary, 20,15,0,0}, // PST -8
1.250 + {_S8("Mon, 21-Jan-02 00:00:00 PDT"), 2002,EJanuary, 19,17,0,0}, // PDT -7
1.251 + {_S8("Mon, 21-Jan-02 23:00:00 PDT"), 2002,EJanuary, 20,16,0,0}, // PDT -7
1.252 +
1.253 + {_S8("Mon, 21-Jan-02 00:00:00 UT"), 2002,EJanuary, 20,0,0,0}, // UT = GMT
1.254 + {_S8("Mon, 21-Jan-02 23:00:00 UT"), 2002,EJanuary, 20,23,0,0}, // UT = GMT
1.255 + {_S8("Mon, 21-Jan-02 00:00:00 GMT"), 2002,EJanuary, 20,0,0,0}, // GMT
1.256 + {_S8("Mon, 21-Jan-02 23:00:00 GMT"), 2002,EJanuary, 20,23,0,0}, // GMT
1.257 +
1.258 + // Military Time Zones (All these should be considered equivalent to GMT)
1.259 + {_S8("Mon, 21-Jan-02 00:00:00 A"), 2002,EJanuary, 20,0,0,0}, // A
1.260 + {_S8("Mon, 21-Jan-02 00:00:00 B"), 2002,EJanuary, 20,0,0,0}, // B
1.261 + {_S8("Mon, 21-Jan-02 00:00:00 C"), 2002,EJanuary, 20,0,0,0}, // C
1.262 + {_S8("Mon, 21-Jan-02 00:00:00 D"), 2002,EJanuary, 20,0,0,0}, // D
1.263 + {_S8("Mon, 21-Jan-02 00:00:00 E"), 2002,EJanuary, 20,0,0,0}, // E
1.264 + {_S8("Mon, 21-Jan-02 00:00:00 F"), 2002,EJanuary, 20,0,0,0}, // F
1.265 + {_S8("Mon, 21-Jan-02 00:00:00 G"), 2002,EJanuary, 20,0,0,0}, // G
1.266 + {_S8("Mon, 21-Jan-02 00:00:00 H"), 2002,EJanuary, 20,0,0,0}, // H
1.267 + {_S8("Mon, 21-Jan-02 00:00:00 I"), 2002,EJanuary, 20,0,0,0}, // I
1.268 + {_S8("Mon, 21-Jan-02 00:00:00 K"), 2002,EJanuary, 20,0,0,0}, // K
1.269 + {_S8("Mon, 21-Jan-02 00:00:00 L"), 2002,EJanuary, 20,0,0,0}, // L
1.270 + {_S8("Mon, 21-Jan-02 00:00:00 M"), 2002,EJanuary, 20,0,0,0}, // M
1.271 + {_S8("Mon, 21-Jan-02 00:00:00 Z"), 2002,EJanuary, 20,0,0,0}, // Z
1.272 + {_S8("Mon, 21-Jan-02 00:00:00 N"), 2002,EJanuary, 20,0,0,0}, // N
1.273 + {_S8("Mon, 21-Jan-02 00:00:00 O"), 2002,EJanuary, 20,0,0,0}, // O
1.274 + {_S8("Mon, 21-Jan-02 00:00:00 P"), 2002,EJanuary, 20,0,0,0}, // P
1.275 + {_S8("Mon, 21-Jan-02 00:00:00 Q"), 2002,EJanuary, 20,0,0,0}, // Q
1.276 + {_S8("Mon, 21-Jan-02 00:00:00 R"), 2002,EJanuary, 20,0,0,0}, // R
1.277 + {_S8("Mon, 21-Jan-02 00:00:00 S"), 2002,EJanuary, 20,0,0,0}, // S
1.278 + {_S8("Mon, 21-Jan-02 00:00:00 T"), 2002,EJanuary, 20,0,0,0}, // T
1.279 + {_S8("Mon, 21-Jan-02 00:00:00 U"), 2002,EJanuary, 20,0,0,0}, // U
1.280 + {_S8("Mon, 21-Jan-02 00:00:00 V"), 2002,EJanuary, 20,0,0,0}, // V
1.281 + {_S8("Mon, 21-Jan-02 00:00:00 W"), 2002,EJanuary, 20,0,0,0}, // W
1.282 + {_S8("Mon, 21-Jan-02 00:00:00 X"), 2002,EJanuary, 20,0,0,0}, // X
1.283 + {_S8("Mon, 21-Jan-02 00:00:00 Y"), 2002,EJanuary, 20,0,0,0} // Z
1.284 + };
1.285 +
1.286 +const TInt KNumberRfc1123MisformedTestCases = 8;
1.287 +const struct TInternetDateTestCase KRfc1123MisformedTestCases[] =
1.288 + {
1.289 + // Test whitespace parsing first, even though these should be in a predefined format
1.290 + // Whitespace between 21 Jan 2002 MUST be 1 space or -
1.291 + {_S8("Mon, 21 Jan 2002 00:00:00 ZDT"), 2002,EJanuary, 20,0,0,0}, // Invalid Tz Should be 0 offset
1.292 + {_S8(" Mon, 21 Jan 2002 00:00:00 GMT"), 2002,EJanuary, 20,0,0,0},
1.293 + {_S8("Mon, 21 Jan 2002 00:00:00 GMT"), 2002,EJanuary, 20,0,0,0},
1.294 + {_S8("Mon, 21 Jan 2002 00:00:00 GMT"), 2002,EJanuary, 20,0,0,0},
1.295 + {_S8("Mon, 21 Jan 2002 00:00:00 GMT"), 2002,EJanuary, 20,0,0,0},
1.296 + {_S8("Mon, 21 Jan 2002 00:00:00 GMT "), 2002,EJanuary, 20,0,0,0},
1.297 +
1.298 + {_S8("Mon, 21 Jan 2002 00:00:00 J"), 2002,EJanuary, 20,0,0,0}, // Should ignore military time zone anyway
1.299 + {_S8("Mon, 21 Jan 2002 00:00:00 ZST"), 2002,EJanuary, 20,0,0,0} // Invalid Tz Should be 0 offset
1.300 + };
1.301 +
1.302 +
1.303 +const TInt KNumberRfc850MisformedTestCases = 8;
1.304 +const struct TInternetDateTestCase KRfc850MisformedTestCases[] =
1.305 + {
1.306 + // Test whitespace parsing first, even though these should be in a predefined format
1.307 + // Whitespace between 21 Jan 2002 MUST be 1 space or -
1.308 + {_S8(" Mon, 21-Jan-02 00:00:00 GMT"), 2002,EJanuary, 20,0,0,0},
1.309 + {_S8("Mon, 21-Jan-02 00:00:00 GMT"), 2002,EJanuary, 20,0,0,0},
1.310 + {_S8("Mon, 21-Jan-02 00:00:00 GMT"), 2002,EJanuary, 20,0,0,0},
1.311 + {_S8("Mon, 21-Jan-02 00:00:00 GMT"), 2002,EJanuary, 20,0,0,0},
1.312 + {_S8("Mon, 21-Jan-02 00:00:00 GMT "), 2002,EJanuary, 20,0,0,0},
1.313 +
1.314 + {_S8("Mon, 21-Jan-02 00:00:00 J"), 2002,EJanuary, 20,0,0,0}, // Should ignore military time zone anyway
1.315 + {_S8("Mon, 21-Jan-02 00:00:00 ZST"), 2002,EJanuary, 20,0,0,0}, // Invalid Tz Should be 0 offset
1.316 + {_S8("Mon, 21-Jan-02 00:00:00 ZDT"), 2002,EJanuary, 20,0,0,0} // Invalid Tz Should be 0 offset
1.317 + };
1.318 +
1.319 +const TInt KNumberRfc1123TimeOffsetTzTestCases = 64;
1.320 +const struct TInternetDateTestCase KRfc1123TimeOffsetTzTestCases[] =
1.321 + {
1.322 + {_S8("Mon, 21 Jan 2002 00:00:00 +2359"), 2002,EJanuary, 20,23,59,0}, // +2359
1.323 + {_S8("Mon, 21 Jan 2002 23:00:00 +2359"), 2002,EJanuary, 21,22,59,0}, // +2359
1.324 + {_S8("Mon, 21 Jan 2002 00:00:00 +2400"), 2002,EJanuary, 20,0,0,0}, // +2400 Max offset should be +2359
1.325 + {_S8("Mon, 21 Jan 2002 23:00:00 +2400"), 2002,EJanuary, 20,23,0,0}, // +2400 Max offset should be +2359
1.326 + {_S8("Mon, 21 Jan 2002 00:00:00 +0060"), 2002,EJanuary, 20,0,0,0}, // +0060 Max min offset is 59
1.327 + {_S8("Mon, 21 Jan 2002 23:00:00 +0060"), 2002,EJanuary, 20,23,0,0}, // +0060 Max min offset is 59
1.328 + {_S8("Mon, 21 Jan 2002 00:00:00 +0000"), 2002,EJanuary, 20,0,0,0}, // +0000
1.329 + {_S8("Mon, 21 Jan 2002 23:00:00 -0000"), 2002,EJanuary, 20,23,0,0}, // -0000
1.330 + {_S8("Mon, 21 Jan 2002 00:00:00 +0100"), 2002,EJanuary, 20,1,0,0}, // +0100
1.331 + {_S8("Mon, 21 Jan 2002 23:00:00 +0105"), 2002,EJanuary, 21,0,5,0}, // +0105
1.332 +
1.333 + {_S8("Mon, 21 Jan 2002 00:00:00 +0200"), 2002,EJanuary, 20,2,0,0}, // +0200
1.334 + {_S8("Mon, 21 Jan 2002 23:00:00 +0210"), 2002,EJanuary, 21,1,10,0}, // +0210
1.335 + {_S8("Mon, 21 Jan 2002 00:00:00 +0300"), 2002,EJanuary, 20,3,0,0}, // +0300
1.336 + {_S8("Mon, 21 Jan 2002 23:00:00 +0359"), 2002,EJanuary, 21,2,59,0}, // +0359
1.337 +
1.338 + {_S8("Mon, 21 Jan 2002 00:00:00 +0400"), 2002,EJanuary, 20,4,0,0}, // +0400
1.339 + {_S8("Mon, 21 Jan 2002 23:00:00 +0400"), 2002,EJanuary, 21,3,0,0}, // +0400
1.340 + {_S8("Mon, 21 Jan 2002 00:00:00 +0500"), 2002,EJanuary, 20,5,0,0}, // +0500
1.341 + {_S8("Mon, 21 Jan 2002 23:00:00 +0500"), 2002,EJanuary, 21,4,0,0}, // +0500
1.342 + {_S8("Mon, 21 Jan 2002 00:00:00 +0600"), 2002,EJanuary, 20,6,0,0}, // +0600
1.343 + {_S8("Mon, 21 Jan 2002 23:00:00 +0600"), 2002,EJanuary, 21,5,0,0}, // +0600
1.344 + {_S8("Mon, 21 Jan 2002 00:00:00 +0700"), 2002,EJanuary, 20,7,0,0}, // +0700
1.345 + {_S8("Mon, 21 Jan 2002 23:00:00 +0700"), 2002,EJanuary, 21,6,0,0}, // +0700
1.346 + {_S8("Mon, 21 Jan 2002 00:00:00 +0800"), 2002,EJanuary, 20,8,0,0}, // +0800
1.347 + {_S8("Mon, 21 Jan 2002 23:00:00 +0800"), 2002,EJanuary, 21,7,0,0}, // +0800
1.348 +
1.349 + {_S8("Mon, 21 Jan 2002 00:00:00 +0900"), 2002,EJanuary, 20,9,0,0}, // +0900
1.350 + {_S8("Mon, 21 Jan 2002 23:00:00 +0900"), 2002,EJanuary, 21,8,0,0}, // +0900
1.351 + {_S8("Mon, 21 Jan 2002 00:00:00 +1000"), 2002,EJanuary, 20,10,0,0}, // +1000
1.352 + {_S8("Mon, 21 Jan 2002 23:00:00 +1000"), 2002,EJanuary, 21,9,0,0}, // +1000
1.353 + {_S8("Mon, 21 Jan 2002 00:00:00 +1100"), 2002,EJanuary, 20,11,0,0}, // +1100
1.354 + {_S8("Mon, 21 Jan 2002 23:00:00 +1100"), 2002,EJanuary, 21,10,0,0}, // +1100
1.355 + {_S8("Mon, 21 Jan 2002 00:00:00 +1200"), 2002,EJanuary, 20,12,0,0}, // +1200
1.356 + {_S8("Mon, 21 Jan 2002 23:00:00 +1200"), 2002,EJanuary, 21,11,0,0}, // +1200
1.357 + // Now same tests but with negative offsets
1.358 + {_S8("Mon, 21 Jan 2002 00:00:00 -2359"), 2002,EJanuary, 19,00,01,0}, // -2359
1.359 + {_S8("Mon, 21 Jan 2002 23:00:00 -2359"), 2002,EJanuary, 19,23,01,0}, // -2359
1.360 +
1.361 + {_S8("Mon, 21 Jan 2002 00:00:00 -2400"), 2002,EJanuary, 20,0,0,0}, // -2400 Min offset should be -2359
1.362 + {_S8("Mon, 21 Jan 2002 23:00:00 -2400"), 2002,EJanuary, 20,23,0,0}, // -2400 Min offset should be -2359
1.363 + {_S8("Mon, 21 Jan 2002 00:00:00 -0060"), 2002,EJanuary, 20,0,0,0}, // -0060 Min min offset is -59
1.364 + {_S8("Mon, 21 Jan 2002 23:00:00 -0060"), 2002,EJanuary, 20,23,0,0}, // -0060 Min min offset is -59
1.365 + {_S8("Mon, 21 Jan 2002 00:00:00 -0000"), 2002,EJanuary, 20,0,0,0}, // -0000
1.366 + {_S8("Mon, 21 Jan 2002 23:00:00 -0000"), 2002,EJanuary, 20,23,0,0}, // -0000
1.367 + {_S8("Mon, 21 Jan 2002 00:00:00 -0100"), 2002,EJanuary, 19,23,0,0}, // -0100
1.368 + {_S8("Mon, 21 Jan 2002 23:00:00 -0105"), 2002,EJanuary, 20,21,55,0}, // -0105
1.369 + {_S8("Mon, 21 Jan 2002 00:00:00 -0200"), 2002,EJanuary, 19,22,0,0}, // -0200
1.370 + {_S8("Mon, 21 Jan 2002 23:00:00 -0210"), 2002,EJanuary, 20,20,50,0}, // -0210
1.371 +
1.372 + {_S8("Mon, 21 Jan 2002 00:00:00 -0300"), 2002,EJanuary, 19,21,0,0}, // -0300
1.373 + {_S8("Mon, 21 Jan 2002 23:00:00 -0359"), 2002,EJanuary, 20,19,01,0}, // -0359
1.374 + {_S8("Mon, 21 Jan 2002 00:00:00 -0400"), 2002,EJanuary, 19,20,0,0}, // -0400
1.375 + {_S8("Mon, 21 Jan 2002 23:00:00 -0400"), 2002,EJanuary, 20,19,0,0}, // -0400
1.376 + {_S8("Mon, 21 Jan 2002 00:00:00 -0500"), 2002,EJanuary, 19,19,0,0}, // -0500
1.377 + {_S8("Mon, 21 Jan 2002 23:00:00 -0500"), 2002,EJanuary, 20,18,0,0}, // -0500
1.378 + {_S8("Mon, 21 Jan 2002 00:00:00 -0600"), 2002,EJanuary, 19,18,0,0}, // -0600
1.379 + {_S8("Mon, 21 Jan 2002 23:00:00 -0600"), 2002,EJanuary, 20,17,0,0}, // -0600
1.380 + {_S8("Mon, 21 Jan 2002 00:00:00 -0700"), 2002,EJanuary, 19,17,0,0}, // -0700
1.381 + {_S8("Mon, 21 Jan 2002 23:00:00 -0700"), 2002,EJanuary, 20,16,0,0}, // -0700
1.382 +
1.383 + {_S8("Mon, 21 Jan 2002 00:00:00 -0800"), 2002,EJanuary, 19,16,0,0}, // -0800
1.384 + {_S8("Mon, 21 Jan 2002 23:00:00 -0800"), 2002,EJanuary, 20,15,0,0}, // -0800
1.385 + {_S8("Mon, 21 Jan 2002 00:00:00 -0900"), 2002,EJanuary, 19,15,0,0}, // -0900
1.386 + {_S8("Mon, 21 Jan 2002 23:00:00 -0900"), 2002,EJanuary, 20,14,0,0}, // -0900
1.387 + {_S8("Mon, 21 Jan 2002 00:00:00 -1000"), 2002,EJanuary, 19,14,0,0}, // -1000
1.388 + {_S8("Mon, 21 Jan 2002 23:00:00 -1000"), 2002,EJanuary, 20,13,0,0}, // -1000
1.389 + {_S8("Mon, 21 Jan 2002 00:00:00 -1100"), 2002,EJanuary, 19,13,0,0}, // -1100
1.390 + {_S8("Mon, 21 Jan 2002 23:00:00 -1100"), 2002,EJanuary, 20,12,0,0}, // -1100
1.391 + {_S8("Mon, 21 Jan 2002 00:00:00 -1200"), 2002,EJanuary, 19,12,0,0}, // -1200
1.392 + {_S8("Mon, 21 Jan 2002 23:00:00 -1200"), 2002,EJanuary, 20,11,0,0} // -1200
1.393 + };
1.394 +
1.395 +const TInt KNumberRfc850TimeOffsetTzTestCases = 64;
1.396 +const struct TInternetDateTestCase KRfc850TimeOffsetTzTestCases[] =
1.397 + {
1.398 + {_S8("Mon, 21-Jan-02 00:00:00 +2359"), 2002,EJanuary, 20,23,59,0}, // +2359
1.399 + {_S8("Mon, 21-Jan-02 23:00:00 +2359"), 2002,EJanuary, 21,22,59,0}, // +2359
1.400 + {_S8("Mon, 21-Jan-02 00:00:00 +2400"), 2002,EJanuary, 20,0,0,0}, // +2400 Max offset should be +2359
1.401 + {_S8("Mon, 21-Jan-02 23:00:00 +2400"), 2002,EJanuary, 20,23,0,0}, // +2400 Max offset should be +2359
1.402 + {_S8("Mon, 21-Jan-02 00:00:00 +0060"), 2002,EJanuary, 20,0,0,0}, // +0060 Max min offset is 59
1.403 + {_S8("Mon, 21-Jan-02 23:00:00 +0060"), 2002,EJanuary, 20,23,0,0}, // +0060 Max min offset is 59
1.404 +
1.405 + {_S8("Mon, 21-Jan-02 00:00:00 +0000"), 2002,EJanuary, 20,0,0,0}, // +0000
1.406 + {_S8("Mon, 21-Jan-02 23:00:00 -0000"), 2002,EJanuary, 20,23,0,0}, // -0000
1.407 + {_S8("Mon, 21-Jan-02 00:00:00 +0100"), 2002,EJanuary, 20,1,0,0}, // +0100
1.408 + {_S8("Mon, 21-Jan-02 23:00:00 +0105"), 2002,EJanuary, 21,0,5,0}, // +0105
1.409 + {_S8("Mon, 21-Jan-02 00:00:00 +0200"), 2002,EJanuary, 20,2,0,0}, // +0200
1.410 + {_S8("Mon, 21-Jan-02 23:00:00 +0210"), 2002,EJanuary, 21,1,10,0}, // +0210
1.411 + {_S8("Mon, 21-Jan-02 00:00:00 +0300"), 2002,EJanuary, 20,3,0,0}, // +0300
1.412 + {_S8("Mon, 21-Jan-02 23:00:00 +0359"), 2002,EJanuary, 21,2,59,0}, // +0359
1.413 + {_S8("Mon, 21-Jan-02 00:00:00 +0400"), 2002,EJanuary, 20,4,0,0}, // +0400
1.414 + {_S8("Mon, 21-Jan-02 23:00:00 +0400"), 2002,EJanuary, 21,3,0,0}, // +0400
1.415 + {_S8("Mon, 21-Jan-02 00:00:00 +0500"), 2002,EJanuary, 20,5,0,0}, // +0500
1.416 + {_S8("Mon, 21-Jan-02 23:00:00 +0500"), 2002,EJanuary, 21,4,0,0}, // +0500
1.417 + {_S8("Mon, 21-Jan-02 00:00:00 +0600"), 2002,EJanuary, 20,6,0,0}, // +0600
1.418 + {_S8("Mon, 21-Jan-02 23:00:00 +0600"), 2002,EJanuary, 21,5,0,0}, // +0600
1.419 + {_S8("Mon, 21-Jan-02 00:00:00 +0700"), 2002,EJanuary, 20,7,0,0}, // +0700
1.420 + {_S8("Mon, 21-Jan-02 23:00:00 +0700"), 2002,EJanuary, 21,6,0,0}, // +0700
1.421 + {_S8("Mon, 21-Jan-02 00:00:00 +0800"), 2002,EJanuary, 20,8,0,0}, // +0800
1.422 + {_S8("Mon, 21-Jan-02 23:00:00 +0800"), 2002,EJanuary, 21,7,0,0}, // +0800
1.423 + {_S8("Mon, 21-Jan-02 00:00:00 +0900"), 2002,EJanuary, 20,9,0,0}, // +0900
1.424 + {_S8("Mon, 21-Jan-02 23:00:00 +0900"), 2002,EJanuary, 21,8,0,0}, // +0900
1.425 + {_S8("Mon, 21-Jan-02 00:00:00 +1000"), 2002,EJanuary, 20,10,0,0}, // +1000
1.426 + {_S8("Mon, 21-Jan-02 23:00:00 +1000"), 2002,EJanuary, 21,9,0,0}, // +1000
1.427 + {_S8("Mon, 21-Jan-02 00:00:00 +1100"), 2002,EJanuary, 20,11,0,0}, // +1100
1.428 + {_S8("Mon, 21-Jan-02 23:00:00 +1100"), 2002,EJanuary, 21,10,0,0}, // +1100
1.429 + {_S8("Mon, 21-Jan-02 00:00:00 +1200"), 2002,EJanuary, 20,12,0,0}, // +1200
1.430 + {_S8("Mon, 21-Jan-02 23:00:00 +1200"), 2002,EJanuary, 21,11,0,0}, // +1200
1.431 +
1.432 + // Now same tests but with negative offsets
1.433 + {_S8("Mon, 21-Jan-02 00:00:00 -2359"), 2002,EJanuary, 19,00,01,0}, // -2359
1.434 + {_S8("Mon, 21-Jan-02 23:00:00 -2359"), 2002,EJanuary, 19,23,01,0}, // -2359
1.435 + {_S8("Mon, 21-Jan-02 00:00:00 -2400"), 2002,EJanuary, 20,0,0,0}, // -2400 Min offset should be -2359
1.436 + {_S8("Mon, 21-Jan-02 23:00:00 -2400"), 2002,EJanuary, 20,23,0,0}, // -2400 Min offset should be -2359
1.437 + {_S8("Mon, 21-Jan-02 00:00:00 -0060"), 2002,EJanuary, 20,0,0,0}, // -0060 Min min offset is -59
1.438 + {_S8("Mon, 21-Jan-02 23:00:00 -0060"), 2002,EJanuary, 20,23,0,0}, // -0060 Min min offset is -59
1.439 +
1.440 + {_S8("Mon, 21-Jan-02 00:00:00 -0000"), 2002,EJanuary, 20,0,0,0}, // -0000
1.441 + {_S8("Mon, 21-Jan-02 23:00:00 -0000"), 2002,EJanuary, 20,23,0,0}, // -0000
1.442 + {_S8("Mon, 21-Jan-02 00:00:00 -0100"), 2002,EJanuary, 19,23,0,0}, // -0100
1.443 + {_S8("Mon, 21-Jan-02 23:00:00 -0105"), 2002,EJanuary, 20,21,55,0}, // -0105
1.444 + {_S8("Mon, 21-Jan-02 00:00:00 -0200"), 2002,EJanuary, 19,22,0,0}, // -0200
1.445 + {_S8("Mon, 21-Jan-02 23:00:00 -0210"), 2002,EJanuary, 20,20,50,0}, // -0210
1.446 + {_S8("Mon, 21-Jan-02 00:00:00 -0300"), 2002,EJanuary, 19,21,0,0}, // -0300
1.447 + {_S8("Mon, 21-Jan-02 23:00:00 -0359"), 2002,EJanuary, 20,19,01,0}, // -0359
1.448 + {_S8("Mon, 21-Jan-02 00:00:00 -0400"), 2002,EJanuary, 19,20,0,0}, // -0400
1.449 + {_S8("Mon, 21-Jan-02 23:00:00 -0400"), 2002,EJanuary, 20,19,0,0}, // -0400
1.450 + {_S8("Mon, 21-Jan-02 00:00:00 -0500"), 2002,EJanuary, 19,19,0,0}, // -0500
1.451 + {_S8("Mon, 21-Jan-02 23:00:00 -0500"), 2002,EJanuary, 20,18,0,0}, // -0500
1.452 + {_S8("Mon, 21-Jan-02 00:00:00 -0600"), 2002,EJanuary, 19,18,0,0}, // -0600
1.453 + {_S8("Mon, 21-Jan-02 23:00:00 -0600"), 2002,EJanuary, 20,17,0,0}, // -0600
1.454 + {_S8("Mon, 21-Jan-02 00:00:00 -0700"), 2002,EJanuary, 19,17,0,0}, // -0700
1.455 + {_S8("Mon, 21-Jan-02 23:00:00 -0700"), 2002,EJanuary, 20,16,0,0}, // -0700
1.456 + {_S8("Mon, 21-Jan-02 00:00:00 -0800"), 2002,EJanuary, 19,16,0,0}, // -0800
1.457 + {_S8("Mon, 21-Jan-02 23:00:00 -0800"), 2002,EJanuary, 20,15,0,0}, // -0800
1.458 + {_S8("Mon, 21-Jan-02 00:00:00 -0900"), 2002,EJanuary, 19,15,0,0}, // -0900
1.459 + {_S8("Mon, 21-Jan-02 23:00:00 -0900"), 2002,EJanuary, 20,14,0,0}, // -0900
1.460 + {_S8("Mon, 21-Jan-02 00:00:00 -1000"), 2002,EJanuary, 19,14,0,0}, // -1000
1.461 + {_S8("Mon, 21-Jan-02 23:00:00 -1000"), 2002,EJanuary, 20,13,0,0}, // -1000
1.462 + {_S8("Mon, 21-Jan-02 00:00:00 -1100"), 2002,EJanuary, 19,13,0,0}, // -1100
1.463 + {_S8("Mon, 21-Jan-02 23:00:00 -1100"), 2002,EJanuary, 20,12,0,0}, // -1100
1.464 + {_S8("Mon, 21-Jan-02 00:00:00 -1200"), 2002,EJanuary, 19,12,0,0}, // -1200
1.465 + {_S8("Mon, 21-Jan-02 23:00:00 -1200"), 2002,EJanuary, 20,11,0,0} // -1200
1.466 + };
1.467 +
1.468 +
1.469 +const TInt KInvalidTimeNumTests=46;
1.470 +static const TBuf8<50> KInvalidTimeTestCases[]=
1.471 + {
1.472 + _L8("Mon,"),
1.473 + _L8("Mon, "),
1.474 + _L8("Mon, 14"),
1.475 + _L8("Mon, 14 "),
1.476 + _L8("Mon, Oct "),
1.477 + _L8("Mon, 14 Oct"),
1.478 + _L8("Mon, 14 Oct 2002"),
1.479 + _L8("Mon, 14 Oct 2002 12"),
1.480 + _L8("Mon, 14 Oct 2002 12:00:00"),
1.481 + _L8("Mon, 14 Oct 2002 12:00:00 GMT"),
1.482 + _L8("Mon, 32 Oct 2002 12:00:00 GMT"),
1.483 + _L8("Mon, 14 Aaa 2002 12:00:00 GMT"),
1.484 + _L8("Mon, 14 Oct 1969 12:00:00 GMT"),
1.485 + _L8("Mon, 14 Oct 2002 25:00:00 GMT"),
1.486 + _L8("Mon, 14 Oct 2002 12:99:00 GMT"),
1.487 + _L8("Mon, 14 Oct 2002 12:00:99 GMT"),
1.488 + _L8("Mon, 14 Oct 2002 12:00:00 GMT"),
1.489 + _L8("Mon, 14 Oct 2002 12:00:00 \" ( 32 x \"a\")"),
1.490 + _L8("Mon, 14 Oct 2002 12:00:00 \" ( 128 x \"a\")"),
1.491 + _L8("Mon, 14 Oct 2002 12:00:00 \" ( 255 x \"a\")"),
1.492 + _L8("Mon, 14 Oct 2002 12:00:00 \" ( 256 x \"a\")"),
1.493 + _L8("Mon, 14 Oct 2002 12:00:00 \" ( 1024 x \"a\")"),
1.494 + _L8("Mon, 14 Oct 2002 12:00:00 \" ( 4096 x \"a\")"),
1.495 + _L8("Mon, 14 Oct 2002 12:00:00 \" ( 66000 x \"a\")"),
1.496 + _L8("Mon, 14 Oct 2002 12:00:00 %s%s%s%s%s%s%s%s"),
1.497 + _L8("Monday,"),
1.498 + _L8("Monday, "),
1.499 + _L8("Monday, 14"),
1.500 + _L8("Monday, 14-"),
1.501 + _L8("Monday, 14-Oct"),
1.502 + _L8("Monday, 14-Oct-"),
1.503 + _L8("Monday, 14-Oct-02"),
1.504 + _L8("Monday, 14-Oct-02 12:00:00 "),
1.505 + _L8("Monday, 14-Oct-02 12:00:00 GMT"),
1.506 + _L8("Aaaaaa, 14--02 12:00:00 GMT"),
1.507 + _L8("Monday, 32-Oct-02 12:00:00 GMT"),
1.508 + _L8("Monday, 14-Aaa-02 12:00:00 GMT"),
1.509 + _L8("Monday, 14-Oct-50 12:00:00 GMT"),
1.510 + _L8("Monday, 14-Oct-02 30:00:00 GMT"),
1.511 + _L8("Monday, 14-Oct-02 12:99:00 GMT"),
1.512 + _L8("Monday, 14-Oct-02 12:00:99 GMT"),
1.513 + _L8("Monday, 14-Oct-02 12:00:00 \" ( 32 x \"a\")"),
1.514 + _L8("Monday, 14-Oct-02 12:00:00 \" ( 255 x \"a\")"),
1.515 + _L8("Monday, 14-Oct-02 12:00:00 \" ( 256 x \"a\")"),
1.516 + _L8("Monday, 14-Oct-02 12:00:00 \" ( 66000 x \"a\")"),
1.517 + _L8("Monday, 14-Oct-02 12:00:00 %s%s%s%s"),
1.518 + };
1.519 +
1.520 +struct TInternetDateOffsetTestCase
1.521 + {
1.522 + const TBuf8<50> iTextInput;
1.523 + const TBuf8<50> iExpectedOutput;
1.524 + };
1.525 +
1.526 +const TInt KNumberDEF126191TestCases = 80;
1.527 +
1.528 +//{ _L8("Input Date time "), _L8("Expected DateTime") },
1.529 +static struct TInternetDateOffsetTestCase KDEF126191TestCases[]=
1.530 + {
1.531 + { _L8("Thu, 17 Jul 2008 08:04:31 EDT"), _L8("Thu, 17 Jul 2008 12:04:31 GMT") },
1.532 + { _L8("Fri, 18 Nov 2005 09:01:17 -0600"), _L8("Fri, 18 Nov 2005 15:01:17 GMT") },
1.533 + { _L8("Mon, 21 Nov 2005 09:05:01 EST"), _L8("Mon, 21 Nov 2005 14:05:01 GMT") },
1.534 + { _L8("Mon, 21 Jan 2002 00:00:00 +1100"), _L8("Sun, 20 Jan 2002 13:00:00 GMT") },
1.535 + { _L8("Mon, 21 Jan 2002 00:00:00 +2359"), _L8("Sun, 20 Jan 2002 00:01:00 GMT") },
1.536 + { _L8("Mon, 21 Jan 2002 00:00:00 +0059"), _L8("Sun, 20 Jan 2002 23:01:00 GMT") },
1.537 + { _L8("Mon, 21 Jan 2002 00:00:00 +0000"), _L8("Mon, 21 Jan 2002 00:00:00 GMT") },
1.538 + { _L8("Mon, 21 Jan 2002 23:00:00 -0000"), _L8("Mon, 21 Jan 2002 23:00:00 GMT") },
1.539 + { _L8("Mon, 21 Jan 2002 00:00:00 +0100"), _L8("Sun, 20 Jan 2002 23:00:00 GMT") },
1.540 + { _L8("Mon, 21 Jan 2002 23:00:00 +0105"), _L8("Mon, 21 Jan 2002 21:55:00 GMT") },
1.541 + { _L8("Mon, 21 Jan 2002 00:00:00 +0200"), _L8("Sun, 20 Jan 2002 22:00:00 GMT") },
1.542 + { _L8("Mon, 21 Jan 2002 23:00:00 +0210"), _L8("Mon, 21 Jan 2002 20:50:00 GMT") },
1.543 + { _L8("Mon, 21 Jan 2002 00:00:00 +0300"), _L8("Sun, 20 Jan 2002 21:00:00 GMT") },
1.544 + { _L8("Mon, 21 Jan 2002 23:00:00 +0359"), _L8("Mon, 21 Jan 2002 19:01:00 GMT") },
1.545 + { _L8("Mon, 21 Jan 2002 00:00:00 +0400"), _L8("Sun, 20 Jan 2002 20:00:00 GMT") },
1.546 + { _L8("Mon, 21 Jan 2002 23:00:00 +0400"), _L8("Mon, 21 Jan 2002 19:00:00 GMT") },
1.547 + { _L8("Mon, 21 Jan 2002 00:00:00 +0500"), _L8("Sun, 20 Jan 2002 19:00:00 GMT") },
1.548 + { _L8("Mon, 21 Jan 2002 23:00:00 +0500"), _L8("Mon, 21 Jan 2002 18:00:00 GMT") },
1.549 + { _L8("Mon, 21 Jan 2002 00:00:00 +0600"), _L8("Sun, 20 Jan 2002 18:00:00 GMT") },
1.550 + { _L8("Mon, 21 Jan 2002 23:00:00 +0600"), _L8("Mon, 21 Jan 2002 17:00:00 GMT") },
1.551 + { _L8("Mon, 21 Jan 2002 00:00:00 +0700"), _L8("Sun, 20 Jan 2002 17:00:00 GMT") },
1.552 + { _L8("Mon, 21 Jan 2002 23:00:00 +0700"), _L8("Mon, 21 Jan 2002 16:00:00 GMT") },
1.553 + { _L8("Mon, 21 Jan 2002 00:00:00 +0800"), _L8("Sun, 20 Jan 2002 16:00:00 GMT") },
1.554 + { _L8("Mon, 21 Jan 2002 23:00:00 +0800"), _L8("Mon, 21 Jan 2002 15:00:00 GMT") },
1.555 + { _L8("Mon, 21 Jan 2002 00:00:00 +0900"), _L8("Sun, 20 Jan 2002 15:00:00 GMT") },
1.556 + { _L8("Mon, 21 Jan 2002 23:00:00 +0900"), _L8("Mon, 21 Jan 2002 14:00:00 GMT") },
1.557 + { _L8("Mon, 21 Jan 2002 00:00:00 +1000"), _L8("Sun, 20 Jan 2002 14:00:00 GMT") },
1.558 + { _L8("Mon, 21 Jan 2002 23:00:00 +1000"), _L8("Mon, 21 Jan 2002 13:00:00 GMT") },
1.559 + { _L8("Mon, 21 Jan 2002 00:00:00 +1200"), _L8("Sun, 20 Jan 2002 12:00:00 GMT") },
1.560 + { _L8("Mon, 21 Jan 2002 23:00:00 +1200"), _L8("Mon, 21 Jan 2002 11:00:00 GMT") },
1.561 + { _L8("Mon, 21 Jan 2002 00:00:00 -2359"), _L8("Mon, 21 Jan 2002 23:59:00 GMT") },
1.562 + { _L8("Mon, 21 Jan 2002 23:00:00 -2359"), _L8("Tue, 22 Jan 2002 22:59:00 GMT") },
1.563 + { _L8("Mon, 21 Jan 2002 00:00:00 -0059"), _L8("Mon, 21 Jan 2002 00:59:00 GMT") },
1.564 + { _L8("Mon, 21 Jan 2002 23:00:00 -0059"), _L8("Mon, 21 Jan 2002 23:59:00 GMT") },
1.565 + { _L8("Mon, 21 Jan 2002 00:00:00 -0000"), _L8("Mon, 21 Jan 2002 00:00:00 GMT") },
1.566 + { _L8("Mon, 21 Jan 2002 23:00:00 -0000"), _L8("Mon, 21 Jan 2002 23:00:00 GMT") },
1.567 + { _L8("Mon, 21 Jan 2002 00:00:00 -0100"), _L8("Mon, 21 Jan 2002 01:00:00 GMT") },
1.568 + { _L8("Mon, 21 Jan 2002 23:00:00 -0105"), _L8("Tue, 22 Jan 2002 00:05:00 GMT") },
1.569 + { _L8("Mon, 21 Jan 2002 00:00:00 -0200"), _L8("Mon, 21 Jan 2002 02:00:00 GMT") },
1.570 + { _L8("Mon, 21 Jan 2002 23:00:00 -0210"), _L8("Tue, 22 Jan 2002 01:10:00 GMT") },
1.571 + { _L8("Mon, 21 Jan 2002 00:00:00 -0300"), _L8("Mon, 21 Jan 2002 03:00:00 GMT") },
1.572 + { _L8("Mon, 21 Jan 2002 23:00:00 -0359"), _L8("Tue, 22 Jan 2002 02:59:00 GMT") },
1.573 + { _L8("Mon, 21 Jan 2002 00:00:00 -0400"), _L8("Mon, 21 Jan 2002 04:00:00 GMT") },
1.574 + { _L8("Mon, 21 Jan 2002 23:00:00 -0400"), _L8("Tue, 22 Jan 2002 03:00:00 GMT") },
1.575 + { _L8("Mon, 21 Jan 2002 00:00:00 -0500"), _L8("Mon, 21 Jan 2002 05:00:00 GMT") },
1.576 + { _L8("Mon, 21 Jan 2002 23:00:00 -0500"), _L8("Tue, 22 Jan 2002 04:00:00 GMT") },
1.577 + { _L8("Mon, 21 Jan 2002 00:00:00 -0600"), _L8("Mon, 21 Jan 2002 06:00:00 GMT") },
1.578 + { _L8("Mon, 21 Jan 2002 23:00:00 -0600"), _L8("Tue, 22 Jan 2002 05:00:00 GMT") },
1.579 + { _L8("Mon, 21 Jan 2002 00:00:00 -0700"), _L8("Mon, 21 Jan 2002 07:00:00 GMT") },
1.580 + { _L8("Mon, 21 Jan 2002 23:00:00 -0700"), _L8("Tue, 22 Jan 2002 06:00:00 GMT") },
1.581 + { _L8("Mon, 21 Jan 2002 00:00:00 -0800"), _L8("Mon, 21 Jan 2002 08:00:00 GMT") },
1.582 + { _L8("Mon, 21 Jan 2002 23:00:00 -0800"), _L8("Tue, 22 Jan 2002 07:00:00 GMT") },
1.583 + { _L8("Mon, 21 Jan 2002 00:00:00 -0900"), _L8("Mon, 21 Jan 2002 09:00:00 GMT") },
1.584 + { _L8("Mon, 21 Jan 2002 23:00:00 -0900"), _L8("Tue, 22 Jan 2002 08:00:00 GMT") },
1.585 + { _L8("Mon, 21 Jan 2002 00:00:00 -1000"), _L8("Mon, 21 Jan 2002 10:00:00 GMT") },
1.586 + { _L8("Mon, 21 Jan 2002 23:00:00 -1000"), _L8("Tue, 22 Jan 2002 09:00:00 GMT") },
1.587 + { _L8("Mon, 21 Jan 2002 00:00:00 -1100"), _L8("Mon, 21 Jan 2002 11:00:00 GMT") },
1.588 + { _L8("Mon, 21 Jan 2002 23:00:00 -1100"), _L8("Tue, 22 Jan 2002 10:00:00 GMT") },
1.589 + { _L8("Mon, 21 Jan 2002 00:00:00 -1200"), _L8("Mon, 21 Jan 2002 12:00:00 GMT") },
1.590 + { _L8("Mon, 21 Jan 2002 23:00:00 -1200"), _L8("Tue, 22 Jan 2002 11:00:00 GMT") },
1.591 + { _L8("Mon, 21 Jan 2002 00:00:00 EST"), _L8("Mon, 21 Jan 2002 05:00:00 GMT") },
1.592 + { _L8("Mon, 21 Jan 2002 23:00:00 EST"), _L8("Tue, 22 Jan 2002 04:00:00 GMT") },
1.593 + { _L8("Mon, 21 Jan 2002 00:00:00 EDT"), _L8("Mon, 21 Jan 2002 04:00:00 GMT") },
1.594 + { _L8("Mon, 21 Jan 2002 23:00:00 EDT"), _L8("Tue, 22 Jan 2002 03:00:00 GMT") },
1.595 + { _L8("Mon, 21 Jan 2002 00:00:00 CST"), _L8("Mon, 21 Jan 2002 06:00:00 GMT") },
1.596 + { _L8("Mon, 21 Jan 2002 23:00:00 CST"), _L8("Tue, 22 Jan 2002 05:00:00 GMT") },
1.597 + { _L8("Mon, 21 Jan 2002 00:00:00 CDT"), _L8("Mon, 21 Jan 2002 05:00:00 GMT") },
1.598 + { _L8("Mon, 21 Jan 2002 23:00:00 CDT"), _L8("Tue, 22 Jan 2002 04:00:00 GMT") },
1.599 + { _L8("Mon, 21 Jan 2002 00:00:00 MST"), _L8("Mon, 21 Jan 2002 07:00:00 GMT") },
1.600 + { _L8("Mon, 21 Jan 2002 23:00:00 MST"), _L8("Tue, 22 Jan 2002 06:00:00 GMT") },
1.601 + { _L8("Mon, 21 Jan 2002 00:00:00 MDT"), _L8("Mon, 21 Jan 2002 06:00:00 GMT") },
1.602 + { _L8("Mon, 21 Jan 2002 23:00:00 MDT"), _L8("Tue, 22 Jan 2002 05:00:00 GMT") },
1.603 + { _L8("Mon, 21 Jan 2002 00:00:00 PST"), _L8("Mon, 21 Jan 2002 08:00:00 GMT") },
1.604 + { _L8("Mon, 21 Jan 2002 23:00:00 PST"), _L8("Tue, 22 Jan 2002 07:00:00 GMT") },
1.605 + { _L8("Mon, 21 Jan 2002 00:00:00 PDT"), _L8("Mon, 21 Jan 2002 07:00:00 GMT") },
1.606 + { _L8("Mon, 21 Jan 2002 23:00:00 PDT"), _L8("Tue, 22 Jan 2002 06:00:00 GMT") },
1.607 + { _L8("Mon, 21 Jan 2002 00:00:00 UT"), _L8("Mon, 21 Jan 2002 00:00:00 GMT") },
1.608 + { _L8("Mon, 21 Jan 2002 23:00:00 UT"), _L8("Mon, 21 Jan 2002 23:00:00 GMT") },
1.609 + { _L8("Mon, 21 Jan 2002 00:00:00 GMT"), _L8("Mon, 21 Jan 2002 00:00:00 GMT") },
1.610 + { _L8("Mon, 21 Jan 2002 23:00:00 GMT"), _L8("Mon, 21 Jan 2002 23:00:00 GMT") }
1.611 + };
1.612 +
1.613 +const TInt KInvalidDescriptorToIntTests=5;
1.614 +static const TBuf8<50> KInvalidDesToIntTestCases[]=
1.615 + {
1.616 + _L8("-"),
1.617 + _L8("+"),
1.618 + _L8("--"),
1.619 + _L8("++"),
1.620 + _L8("InvalidString")
1.621 + };
1.622 +
1.623 +#endif // __T_INTERNETDATETESTCASES_H__