This test case checks that months greater than 11 are handled correctly when passed to the Date constructor and the Date.UTC function. The ECMA 262 specification says that months > 11 should be treated as month % 12 and the year as year + floor(month / 12). On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". PASS d.getFullYear() + "-" + d.getMonth(); is "2005-0" PASS d.getFullYear() + "-" + d.getMonth(); is "2005-1" PASS d.getFullYear() + "-" + d.getMonth(); is "2005-2" PASS d.getFullYear() + "-" + d.getMonth(); is "2005-3" PASS d.getFullYear() + "-" + d.getMonth(); is "2005-4" PASS d.getFullYear() + "-" + d.getMonth(); is "2005-5" PASS d.getFullYear() + "-" + d.getMonth(); is "2005-6" PASS d.getFullYear() + "-" + d.getMonth(); is "2005-7" PASS d.getFullYear() + "-" + d.getMonth(); is "2005-8" PASS d.getFullYear() + "-" + d.getMonth(); is "2005-9" PASS d.getFullYear() + "-" + d.getMonth(); is "2005-10" PASS d.getFullYear() + "-" + d.getMonth(); is "2005-11" PASS d.getFullYear() + "-" + d.getMonth(); is "2006-0" PASS d.getFullYear() + "-" + d.getMonth(); is "2006-1" PASS d.getFullYear() + "-" + d.getMonth(); is "2006-2" PASS d.getFullYear() + "-" + d.getMonth(); is "2006-3" PASS d.getFullYear() + "-" + d.getMonth(); is "2006-4" PASS d.getFullYear() + "-" + d.getMonth(); is "2006-5" PASS d.getFullYear() + "-" + d.getMonth(); is "2006-6" PASS d.getFullYear() + "-" + d.getMonth(); is "2006-7" PASS d.getFullYear() + "-" + d.getMonth(); is "2006-8" PASS d.getFullYear() + "-" + d.getMonth(); is "2006-9" PASS d.getFullYear() + "-" + d.getMonth(); is "2006-10" PASS d.getFullYear() + "-" + d.getMonth(); is "2006-11" PASS d.getFullYear() + "-" + d.getMonth(); is "2007-0" PASS d.getFullYear() + "-" + d.getMonth(); is "2007-1" PASS d.getFullYear() + "-" + d.getMonth(); is "2007-2" PASS d.getFullYear() + "-" + d.getMonth(); is "2007-3" PASS d.getFullYear() + "-" + d.getMonth(); is "2007-4" PASS d.getFullYear() + "-" + d.getMonth(); is "2007-5" PASS d.getFullYear() + "-" + d.getMonth(); is "2007-6" PASS d.getFullYear() + "-" + d.getMonth(); is "2007-7" PASS d.getFullYear() + "-" + d.getMonth(); is "2007-8" PASS d.getFullYear() + "-" + d.getMonth(); is "2007-9" PASS d.getFullYear() + "-" + d.getMonth(); is "2007-10" PASS d.getFullYear() + "-" + d.getMonth(); is "2007-11" PASS Date.UTC(2005, 0, 1) is 1104537600000 PASS Date.UTC(2005, 1, 1) is 1107216000000 PASS Date.UTC(2005, 2, 1) is 1109635200000 PASS Date.UTC(2005, 3, 1) is 1112313600000 PASS Date.UTC(2005, 4, 1) is 1114905600000 PASS Date.UTC(2005, 5, 1) is 1117584000000 PASS Date.UTC(2005, 6, 1) is 1120176000000 PASS Date.UTC(2005, 7, 1) is 1122854400000 PASS Date.UTC(2005, 8, 1) is 1125532800000 PASS Date.UTC(2005, 9, 1) is 1128124800000 PASS Date.UTC(2005, 10, 1) is 1130803200000 PASS Date.UTC(2005, 11, 1) is 1133395200000 PASS Date.UTC(2005, 12, 1) is 1136073600000 PASS Date.UTC(2005, 13, 1) is 1138752000000 PASS Date.UTC(2005, 14, 1) is 1141171200000 PASS Date.UTC(2005, 15, 1) is 1143849600000 PASS Date.UTC(2005, 16, 1) is 1146441600000 PASS Date.UTC(2005, 17, 1) is 1149120000000 PASS Date.UTC(2005, 18, 1) is 1151712000000 PASS Date.UTC(2005, 19, 1) is 1154390400000 PASS Date.UTC(2005, 20, 1) is 1157068800000 PASS Date.UTC(2005, 21, 1) is 1159660800000 PASS Date.UTC(2005, 22, 1) is 1162339200000 PASS Date.UTC(2005, 23, 1) is 1164931200000 PASS Date.UTC(2005, 24, 1) is 1167609600000 PASS Date.UTC(2005, 25, 1) is 1170288000000 PASS Date.UTC(2005, 26, 1) is 1172707200000 PASS Date.UTC(2005, 27, 1) is 1175385600000 PASS Date.UTC(2005, 28, 1) is 1177977600000 PASS Date.UTC(2005, 29, 1) is 1180656000000 PASS Date.UTC(2005, 30, 1) is 1183248000000 PASS Date.UTC(2005, 31, 1) is 1185926400000 PASS Date.UTC(2005, 32, 1) is 1188604800000 PASS Date.UTC(2005, 33, 1) is 1191196800000 PASS Date.UTC(2005, 34, 1) is 1193875200000 PASS Date.UTC(2005, 35, 1) is 1196467200000 PASS successfullyParsed is true TEST COMPLETE