| InputDate Mon Apr 24 2017 08:47:31 GMT+0100 (BST) | |||||
| Number failed: 67Number passed:146File: /Servers/htdocs/test/2013/js/day/tests/scripts//InputDate.testScript | |||||
| Line | Test | Expected | Actual | Comment | |
| # CONVERTING STRINGS TO DATES | |||||
| # ----------------------------------------- | |||||
| # Format: Function (Input) Expected_result [#comment] | |||||
| # Conversions to dates See also: ImpliedYear and InputInterval | |||||
| 6 | SETCONFIG(DM_ORDER,DMY) | DM_ORDER set to DMY | British D-M order | ||
| # Special values | |||||
| 10 | DATEFROMSTRING() | Not valid(1) | |||
| 11 | DATEFROMSTRING(EoT) | End-of-Time | |||
| 12 | DATEFROMSTRING(End-of-Time) | End-of-Time | |||
| 13 | DATEFROMSTRING(E) | End-of-Time | |||
| 14 | DATEFROMSTRING(BoT) | Beg-of-Time | |||
| 15 | DATEFROMSTRING(Beg-of-Time) | Beg-of-Time | |||
| 16 | DATEFROMSTRING(B) | Beg-of-Time | |||
| 17 | DATEFROMSTRING(U) | Unknown | |||
| 18 | DATEFROMSTRING(Unknown) | Unknown | |||
| 19 | DATEFROMSTRING(NOT VALID) | Not valid(0) | Unknown/OK | ||
| 20 | DATEFROMSTRING(!) | Not valid(0) | Unknown short form | ||
| # 6 and 8 digits all together | |||||
| # --------------------------- | |||||
| 24 | DATEFROMSTRING(010203) | 1 Feb 2003 | |||
| 25 | DATEFROMSTRING(011203) | 1 Dec 2003 | |||
| 26 | DATEFROMSTRING(01122003) | 1 Dec 2003 | |||
| 27 | DATEFROMSTRING(01122013) | 1 Dec 2013 | |||
| 28 | DATEFROMSTRING(01122113) | 1 Dec 2113 | |||
| 29 | DATEFROMSTRING(01121913) | 1 Dec 1913 | |||
| 30 | DATEFROMSTRING(01121813) | 1 Dec 1813 | |||
| # forcing day-of-month that are too large to max length of month | |||||
| 32 | SETCONFIG(ALLOW_31_TO_30, 1) | ALLOW_31_TO_30 set to 1 | following should all pass | ||
| 33 | DATEFROMSTRING(31112009) | 30 Nov 2009 | |||
| 34 | DATEFROMSTRING(32112009) | Not valid(2) | |||
| 35 | DATEFROMSTRING(31022008) | 29 Feb 2008 | leap year | ||
| # Hovering around year 0 etc | |||||
| 37 | DATEFROMSTRING(010100) | 1 Jan 2000 | |||
| 38 | DATEFROMSTRING(01010000) | Not valid(2) | |||
| 39 | DATEFROMSTRING(010101) | 1 Jan 2001 | |||
| 40 | DATEFROMSTRING(01010001) | 1 Jan 0001 | |||
| 41 | DATEFROMSTRING(000000) | Not valid(2) | 00 is a bad year | ||
| 42 | DATEFROMSTRING(00000000) | Not valid(2) | 0000 is a bad year | ||
| 43 | DATEFROMSTRING(00032004) | Mar 2004 | |||
| 44 | DATEFROMSTRING(65122004) | Not valid(2) | |||
| 45 | DATEFROMSTRING(03132004) | Not valid(2) | |||
| 46 | DATEFROMSTRING(03047004) | Not valid(2) | |||
| # Three separate tokens | |||||
| 51 | DATEFROMSTRING(1 1 2000) | 1 Jan 2000 | |||
| 52 | DATEFROMSTRING(2 1 2000) | 2 Jan 2000 | |||
| 53 | DATEFROMSTRING(3 1 2000) | 3 Jan 2000 | |||
| 54 | DATEFROMSTRING(9 4 2000) | 9 Apr 2000 | |||
| 55 | DATEFROMSTRING(9 Apr 2000) | 9 Apr 2000 | |||
| 56 | DATEFROMSTRING(9 Ap 2000) | 9 Apr 2000 | |||
| 57 | DATEFROMSTRING(9 A 2000) | Not valid(2) | |||
| 58 | DATEFROMSTRING(31 Jan 07) | 31 Jan 2007 | |||
| 59 | DATEFROMSTRING(31 Feb 07) | 28 Feb 2007 | |||
| 60 | DATEFROMSTRING(Aug 12 2001) | 12 Aug 2001 | Can o/w day first if needed | ||
| 61 | DATEFROMSTRING(12 Aug 2001) | 12 Aug 2001 | |||
| 63 | DATEFROMSTRING(31 Feb 08) | 29 Feb 2008 | leap year | ||
| 64 | DATEFROMSTRING(31 Mar 00) | 31 Mar 2000 | Not valid(2) | ||
| 65 | DATEFROMSTRING(31 Apr 00) | 30 Apr 2000 | Not valid(2) | ||
| 66 | DATEFROMSTRING(31 May 00) | 31 May 2000 | Not valid(2) | ||
| 67 | DATEFROMSTRING(31 Jun 00) | 30 Jun 2000 | Not valid(2) | ||
| 68 | DATEFROMSTRING(31 Jul 00) | 31 Jly 2000 | Not valid(2) | allow Jul as input but use Jly as outputclass=tags> [FromText] Zero token is not valid | |
| 69 | DATEFROMSTRING(31 Jly 00) | 31 Jly 2000 | Not valid(2) | ||
| 70 | DATEFROMSTRING(31 Aug 00) | 31 Aug 2000 | Not valid(2) | ||
| 71 | DATEFROMSTRING(31 Sep 00) | 30 Sep 2000 | Not valid(2) | ||
| 72 | DATEFROMSTRING(31 Oct 00) | 31 Oct 2000 | Not valid(2) | ||
| 73 | DATEFROMSTRING(31 Nov 00) | 30 Nov 2000 | Not valid(2) | ||
| 74 | DATEFROMSTRING(31 Dec 00) | 31 Dec 2000 | Not valid(2) | ||
| 75 | DATEFROMSTRING(31 Jan Dec 00) | Not valid(1) | |||
| 77 | DATEFROMSTRING(31 Ja 07) | 31 Jan 2007 | |||
| 78 | DATEFROMSTRING(31 F 07) | 28 Feb 2007 | |||
| 79 | DATEFROMSTRING(31 Mr 00) | 31 Mar 2000 | Not valid(2) | ||
| 80 | DATEFROMSTRING(31 Ap 00) | 30 Apr 2000 | Not valid(2) | ||
| 81 | DATEFROMSTRING(31 My 00) | 31 May 2000 | Not valid(2) | ||
| 82 | DATEFROMSTRING(31 Jun 00) | 30 Jun 2000 | Not valid(2) | ||
| 83 | DATEFROMSTRING(31 Jul 00) | 31 Jly 2000 | Not valid(2) | ||
| 84 | DATEFROMSTRING(31 Au 00) | 31 Aug 2000 | Not valid(2) | ||
| 85 | DATEFROMSTRING(31 Se 00) | 30 Sep 2000 | Not valid(2) | ||
| 86 | DATEFROMSTRING(31 O 00) | 31 Oct 2000 | Not valid(2) | ||
| 87 | DATEFROMSTRING(30 No 00) | 30 Nov 2000 | Not valid(2) | ||
| 88 | DATEFROMSTRING(31 N 00) | Not valid(2) | |||
| 89 | DATEFROMSTRING(31 D 00) | 31 Dec 2000 | Not valid(2) | ||
| # allowing overflow dates to be coerced to last day of month (ALLOW_31_TO_30) already set | |||||
| 92 | EXPLAIN() | DM_ORDER=DMY IMPLIED_YEAR=-1 BC_INDICATOR=BC TWO_DIGIT_FIX=50 ALLOW_31_TO_30=1 ALLOW_DAY_ONLY_INT=1 error= appendix=en-gb.dax force2or4DigitYears=false Default year=2017 | |||
| 93 | DATEFROMSTRING(30 Nov 2010) | 30 Nov 2010 | Always passes | ||
| 94 | DATEFROMSTRING(31 Nov 2010) | 30 Nov 2010 | Only passes if ALLOW_31_TO_30 = 1 | ||
| 95 | DATEFROMSTRING(32 Nov 2010) | Not valid(2) | |||
| 96 | DATEFROMSTRING(29 Feb 2010) | 28 Feb 2010 | Only passes if ALLOW_31_TO_30 = 1 | ||
| 97 | DATEFROMSTRING(29 Feb 2008) | 29 Feb 2008 | Always passes | ||
| 99 | SETCONFIG(ALLOW_31_TO_30, 0) | ALLOW_31_TO_30 set to 0 | dis-allow day coercing | ||
| 100 | EXPLAIN() | DM_ORDER=DMY IMPLIED_YEAR=-1 BC_INDICATOR=BC TWO_DIGIT_FIX=50 ALLOW_31_TO_30=0 ALLOW_DAY_ONLY_INT=1 error= appendix=en-gb.dax force2or4DigitYears=false Default year=2017 | |||
| 101 | DATEFROMSTRING(31 Nov 2010) | Not valid(2) | |||
| 102 | DATEFROMSTRING(29 Feb 2010) | Not valid(2) | |||
| 103 | DATEFROMSTRING(31 Ap 00) | Not valid(2) | |||
| # Strangely formatted input | |||||
| 106 | DATEFROMSTRING(NULL) | Not valid(2) | |||
| 107 | DATEFROMSTRING(Z) | Not valid(2) | |||
| 108 | DATEFROMSTRING(ZZ) | Not valid(2) | |||
| 109 | DATEFROMSTRING(ZZZ) | Not valid(2) | |||
| 110 | DATEFROMSTRING(ZZZZ) | Not valid(2) | |||
| 111 | DATEFROMSTRING(ZZZZZ) | Not valid(2) | |||
| 112 | DATEFROMSTRING(ZZZZZZ) | Not valid(2) | |||
| 113 | DATEFROMSTRING(ZZZZZZZ) | Not valid(2) | |||
| 114 | DATEFROMSTRING(ZZZZZZZZ) | Not valid(2) | |||
| 115 | DATEFROMSTRING(ZZZZZZZZZ) | Not valid(2) | |||
| 116 | DATEFROMSTRING(ZZZZZZZZZZ) | Not valid(2) | |||
| 117 | DATEFROMSTRING(ZZZZZZZZZZZ) | Not valid(2) | |||
| 118 | DATEFROMSTRING(ZZZZZZZZZZZZ) | Not valid(2) | |||
| 119 | DATEFROMSTRING(ZZZZZZZZZZZZZ) | Not valid(2) | |||
| 120 | DATEFROMSTRING(ZZZZZZZZZZZZZZ) | Not valid(2) | |||
| 121 | DATEFROMSTRING(ZZZZZZZZZZZZZZZ) | Not valid(2) | |||
| #DATEFROMSTRING (ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ) NOT VALID(2) | |||||
| 123 | DATEFROMSTRING(@@@) | Not valid(2) | Illegal characters get lost so this is almost equiv. to () | ||
| 124 | DATEFROMSTRING(1 11 12) | 1 Nov 2012 | |||
| 125 | DATEFROMSTRING(1/11/12) | 1 Nov 2012 | |||
| 126 | DATEFROMSTRING(1\11\12) | 1 Nov 2012 | |||
| 127 | DATEFROMSTRING(1.11.12) | 1 Nov 2012 | |||
| 128 | DATEFROMSTRING(1.11/12) | 1 Nov 2012 | |||
| 129 | DATEFROMSTRING(1.11.12) | 1 Nov 2012 | |||
| 130 | DATEFROMSTRING(1'11'12) | 1 Nov 2012 | |||
| 131 | DATEFROMSTRING(1COMMA11COMMA12) | Not valid(2) | [A-Z] are 'valid' characters during parseclass=tags> [FromText] Unexpected alpha | ||
| 132 | DATEFROMSTRING(1_11_12) | 1 Nov 2012 | |||
| 133 | DATEFROMSTRING(1%%%%11&&&12) | 1 Nov 2012 | |||
| 134 | DATEFROMSTRING(99.99.99) | Not valid(2) | |||
| #SETCONFIG (ALLOW_31_TO_30, 1) # allow day coercing | |||||
| 138 | EXPLAIN() | DM_ORDER=DMY IMPLIED_YEAR=-1 BC_INDICATOR=BC TWO_DIGIT_FIX=50 ALLOW_31_TO_30=0 ALLOW_DAY_ONLY_INT=1 error= appendix=en-gb.dax force2or4DigitYears=false Default year=2017 | |||
| ### Partial year conversion ### | |||||
| ### Two_digit_fix has three possible values ### | |||||
| 143 | SETCONFIG(TWO_DIGIT_FIX,0) | TWO_DIGIT_FIX set to 0 | |||
| 144 | DATEFROMSTRING(010199) | NOT VALID(2) | EXCEPTION: TypeError: Object # Line: Object # | ||
| 145 | DATEFROMSTRING(010150) | NOT VALID(2) | EXCEPTION: TypeError: Object # Line: Object # | ||
| 146 | SETCONFIG(TWO_DIGIT_FIX,20) | TWO_DIGIT_FIX set to 20 | |||
| 147 | DATEFROMSTRING(010199) | 1 Jan 2099 | |||
| 148 | DATEFROMSTRING(010150) | 1 Jan 2050 | 20=ok 50=ok 0=fail | ||
| 149 | SETCONFIG(TWO_DIGIT_FIX,50) | TWO_DIGIT_FIX set to 50 | |||
| 150 | DATEFROMSTRING(010199) | 1 Jan 1999 | 20=fail 50=ok 0=fail | ||
| 151 | DATEFROMSTRING(010150) | 1 Jan 2050 | 20=ok 50=ok 0=fail | ||
| #### Partial dates #### | |||||
| 155 | DATEFROMSTRING(Jan 2007) | Jan 2007 | |||
| 156 | DATEFROMSTRING(2007) | 2007 | |||
| 157 | DATEFROMSTRING(07) | 2007 | |||
| 158 | DATEFROMSTRING(00) | 2000 | Not valid(2) | ||
| 160 | DATEFROMSTRING(JAN) | Jan | |||
| 161 | DATEFROMSTRING(jAN) | Jan | |||
| 162 | DATEFROMSTRING(jAnUaRy) | Jan | |||
| 163 | DATEFROMSTRING(Feb) | Feb | |||
| 164 | DATEFROMSTRING(F) | Feb | |||
| 165 | DATEFROMSTRING(Mar) | Mar | |||
| 166 | DATEFROMSTRING(Apr) | Apr | |||
| 167 | DATEFROMSTRING(May) | May | |||
| 168 | DATEFROMSTRING(Jun) | Jun | |||
| 169 | DATEFROMSTRING(Jul) | Jly | |||
| 170 | DATEFROMSTRING(July) | Jly | |||
| 171 | DATEFROMSTRING(Aug) | Aug | |||
| 172 | DATEFROMSTRING(Auguxxxx) | Aug | |||
| 173 | DATEFROMSTRING(Auguxxxx 2008) | Aug 2008 | |||
| 174 | DATEFROMSTRING(Sep) | Sep | |||
| 175 | DATEFROMSTRING(Oct) | Oct | |||
| 176 | DATEFROMSTRING(Nov) | Nov | |||
| 177 | DATEFROMSTRING(Dec) | Dec | |||
| # BC | |||||
| 183 | DATEFROMSTRING(34 BC) | 0034 BC | |||
| 184 | DATEFROMSTRING(0015 BC) | 0015 BC | |||
| 185 | DATEFROMSTRING(Nov 0004 BC) | Nov 0004 BC | 4 Nov BC | ||
| 186 | DATEFROMSTRING(31 Dec 0001 BC) | 31 Dec 0001 BC | |||
| 187 | DATEFROMSTRING(31 Dec 01 BC) | 31 Dec 0001 BC | 31 Dec 2001 BC | ||
| 188 | DATEFROMSTRING(31 Dec 1 BC) | 31 Dec 0001 BC | 31 Dec 2001 BC | ||
| 189 | DATEFROMSTRING(30 Dec 0001 BC) | 30 Dec 0001 BC | |||
| 190 | DATEFROMSTRING(5 Mar 2006 BC) | 5 Mar 2006 BC | |||
| 191 | DATEFROMSTRING(30 Dec 0001 bc) | 30 Dec 0001 BC | |||
| # Two tokens | |||||
| 195 | SETCONFIG(DM_ORDER,DMY) | DM_ORDER set to DMY | British D-M order | ||
| 196 | SETCONFIG(TWO_DIGIT_FIX,20) | TWO_DIGIT_FIX set to 20 | |||
| 197 | SETCONFIG(ALLOW_31_TO_30, 0) | ALLOW_31_TO_30 set to 0 | |||
| 198 | SETCONFIG(IMPLIED_YEAR, 0) | IMPLIED_YEAR set to 0 | no missing years allowed ... should all fail | ||
| 199 | EXPLAIN() | DM_ORDER=DMY IMPLIED_YEAR=0 BC_INDICATOR=BC TWO_DIGIT_FIX=20 ALLOW_31_TO_30=0 ALLOW_DAY_ONLY_INT=1 error= appendix=en-gb.dax force2or4DigitYears=false Default year=-9999999 | |||
| 200 | DATEFROMSTRING(7 Mar) | Not valid(2) | |||
| 201 | DATEFROMSTRING(22 Mar) | Not valid(2) | |||
| 202 | DATEFROMSTRING(Mar 7) | Not valid(2) | |||
| 203 | DATEFROMSTRING(Mar 22) | Not valid(2) | |||
| 204 | DATEFROMSTRING(Feb 28) | Not valid(2) | |||
| 205 | DATEFROMSTRING(Feb 29) | Not valid(2) | Feb 2029 | ||
| 206 | DATEFROMSTRING(Feb 30) | Not valid(2) | Feb 2030 | ||
| 207 | DATEFROMSTRING(Feb 31) | Not valid(2) | Feb 2031 | ||
| 208 | DATEFROMSTRING(Feb 32) | Not valid(2) | Feb 2032 | ||
| # Two tokens - substitute current year | |||||
| 211 | SETCONFIG(TWO_DIGIT_FIX,0) | TWO_DIGIT_FIX set to 0 | |||
| 212 | SETCONFIG(ALLOW_31_TO_30, 0) | ALLOW_31_TO_30 set to 0 | |||
| 213 | SETCONFIG(IMPLIED_YEAR, -1) | IMPLIED_YEAR set to -1 | |||
| 214 | EXPLAIN() | DM_ORDER=DMY IMPLIED_YEAR=-1 BC_INDICATOR=BC TWO_DIGIT_FIX=0 ALLOW_31_TO_30=0 ALLOW_DAY_ONLY_INT=1 error= appendix=en-gb.dax force2or4DigitYears=false Default year=2017 | |||
| 215 | DATEFROMSTRING(2 Mar) | ? | 2 Mar 2017 | ||
| 216 | DATEFROMSTRING(22 Mar) | ? | 22 Mar 2017 | ||
| 217 | DATEFROMSTRING(Mar 2) | ? | 2 Mar 2017 | ||
| 218 | DATEFROMSTRING(Mar 22) | ? | 22 Mar 2017 | ||
| 219 | DATEFROMSTRING(Feb 28) | ? | 28 Feb 2017 | ||
| 220 | DATEFROMSTRING(Feb 29) | ? | Not valid(2) | ||
| 221 | DATEFROMSTRING(Feb 30) | ? | Not valid(2) | ||
| 222 | DATEFROMSTRING(Feb 31) | ? | Not valid(2) | ||
| 223 | DATEFROMSTRING(Feb 32) | ? | Not valid(2) | ||
| # Two tokens - allow floats but not 2-digit fix | |||||
| 226 | SETCONFIG(TWO_DIGIT_FIX,0) | TWO_DIGIT_FIX set to 0 | |||
| 227 | SETCONFIG(ALLOW_31_TO_30, 0) | ALLOW_31_TO_30 set to 0 | |||
| 228 | SETCONFIG(IMPLIED_YEAR, -2) | IMPLIED_YEAR set to -2 | |||
| 229 | DATEFROMSTRING(2 Mar) | ? | 2 Mar | ||
| 230 | DATEFROMSTRING(22 Mar) | ? | 22 Mar | ||
| 231 | DATEFROMSTRING(Mar 2) | ? | 2 Mar | ||
| 232 | DATEFROMSTRING(Mar 22) | ? | 22 Mar | ||
| 233 | DATEFROMSTRING(Feb 28) | ? | 28 Feb | ||
| 234 | DATEFROMSTRING(Feb 29) | ? | Not valid(2) | ||
| 235 | DATEFROMSTRING(Feb 30) | ? | Not valid(2) | ||
| 236 | DATEFROMSTRING(Feb 31) | ? | Not valid(2) | ||
| 237 | DATEFROMSTRING(Feb 32) | ? | Not valid(2) | ||
| # Two tokens - allow floats and 2-digit fix | |||||
| 240 | SETCONFIG(TWO_DIGIT_FIX,0) | TWO_DIGIT_FIX set to 0 | |||
| 241 | SETCONFIG(ALLOW_31_TO_30, 0) | ALLOW_31_TO_30 set to 0 | |||
| 242 | SETCONFIG(IMPLIED_YEAR, -2) | IMPLIED_YEAR set to -2 | |||
| 243 | DATEFROMSTRING(2 Mar) | ? | 2 Mar | ||
| 244 | DATEFROMSTRING(22 Mar) | ? | 22 Mar | ||
| 245 | DATEFROMSTRING(Mar 2) | ? | 2 Mar | ||
| 246 | DATEFROMSTRING(Mar 22) | ? | 22 Mar | ||
| 247 | DATEFROMSTRING(Feb 28) | ? | 28 Feb | ||
| 248 | DATEFROMSTRING(Feb 29) | ? | Not valid(2) | ||
| 249 | DATEFROMSTRING(Feb 30) | ? | Not valid(2) | ||
| 250 | DATEFROMSTRING(Feb 31) | ? | Not valid(2) | ||
| 251 | DATEFROMSTRING(Feb 32) | ? | Not valid(2) | ||
| # Two tokens - substitute specific year | |||||
| 254 | SETCONFIG(TWO_DIGIT_FIX,0) | TWO_DIGIT_FIX set to 0 | |||
| 255 | SETCONFIG(ALLOW_31_TO_30, 0) | ALLOW_31_TO_30 set to 0 | |||
| 256 | SETCONFIG(IMPLIED_YEAR, 2012) | IMPLIED_YEAR set to 2012 | |||
| 257 | DATEFROMSTRING(2 Mar) | ? | 2 Mar 2012 | ||
| 258 | DATEFROMSTRING(22 Mar) | ? | 22 Mar 2012 | ||
| 259 | DATEFROMSTRING(Mar 2) | ? | 2 Mar 2012 | ||
| 260 | DATEFROMSTRING(Mar 22) | ? | 22 Mar 2012 | ||
| 261 | DATEFROMSTRING(Feb 28) | ? | 28 Feb 2012 | ||
| 262 | DATEFROMSTRING(Feb 29) | ? | Not valid(2) | ||
| 263 | DATEFROMSTRING(Feb 30) | ? | Not valid(2) | ||
| 264 | DATEFROMSTRING(Feb 31) | ? | Not valid(2) | ||
| 265 | DATEFROMSTRING(Feb 32) | ? | Not valid(2) | ||