@@ -350,6 +350,68 @@ public void colSpanLineBreaks() throws Exception {
350350 loadPageVerifyTitle2 (html );
351351 }
352352
353+ /**
354+ * @throws Exception if an error occurs
355+ */
356+ @ Test
357+ @ Alerts ({"1" , "1" , "3" , "3" , "3" })
358+ public void colSpanInvalid () throws Exception {
359+ final String html
360+ = "<html><body><table>\n "
361+ + " <tr>\n "
362+ + " <td id='td1' colspan='-1'>b</td>\n "
363+ + " <td id='td2' colspan='0'>b</td>\n "
364+ + " <td id='td3' colspan='3.14'>b</td>\n "
365+ + " <td id='td4' colspan='3.5'>b</td>\n "
366+ + " <td id='td5' colspan='3.7'>b</td>\n "
367+ + " </tr>\n "
368+ + "</table>\n "
369+ + "<script>\n "
370+ + LOG_TITLE_FUNCTION_NORMALIZE
371+ + " var td1 = document.getElementById('td1');\n "
372+ + " var td2 = document.getElementById('td2');\n "
373+ + " var td3 = document.getElementById('td3');\n "
374+ + " var td4 = document.getElementById('td4');\n "
375+ + " var td5 = document.getElementById('td5');\n "
376+ + " log(td1.colSpan);\n "
377+ + " log(td2.colSpan);\n "
378+ + " log(td3.colSpan);\n "
379+ + " log(td4.colSpan);\n "
380+ + " log(td5.colSpan);\n "
381+ + "</script>\n "
382+ + "</body></html>" ;
383+
384+ loadPageVerifyTitle2 (html );
385+ }
386+
387+ /**
388+ * @throws Exception if an error occurs
389+ */
390+ @ Test
391+ @ Alerts ({"999" , "1000" , "1000" })
392+ public void colSpanLarge () throws Exception {
393+ final String html
394+ = "<html><body><table>\n "
395+ + " <tr>\n "
396+ + " <td id='td1' colspan='999'>b</td>\n "
397+ + " <td id='td2' colspan='1000'>b</td>\n "
398+ + " <td id='td3' colspan='1001'>b</td>\n "
399+ + " </tr>\n "
400+ + "</table>\n "
401+ + "<script>\n "
402+ + LOG_TITLE_FUNCTION_NORMALIZE
403+ + " var td1 = document.getElementById('td1');\n "
404+ + " var td2 = document.getElementById('td2');\n "
405+ + " var td3 = document.getElementById('td3');\n "
406+ + " log(td1.colSpan);\n "
407+ + " log(td2.colSpan);\n "
408+ + " log(td3.colSpan);\n "
409+ + "</script>\n "
410+ + "</body></html>" ;
411+
412+ loadPageVerifyTitle2 (html );
413+ }
414+
353415 /**
354416 * @throws Exception if an error occurs
355417 */
@@ -426,6 +488,73 @@ public void rowSpanLineBreaks() throws Exception {
426488 loadPageVerifyTitle2 (html );
427489 }
428490
491+ /**
492+ * @throws Exception if an error occurs
493+ */
494+ @ Test
495+ @ Alerts (DEFAULT = {"1" , "0" , "3" , "3" , "3" },
496+ FF = {"1" , "1" , "3" , "3" , "3" },
497+ FF_ESR = {"1" , "1" , "3" , "3" , "3" })
498+ public void rowSpanInvalid () throws Exception {
499+ final String html
500+ = "<html><body><table>\n "
501+ + " <tr>\n "
502+ + " <td id='td1' rowspan='-1'>b</td>\n "
503+ + " <td id='td2' rowspan='0'>b</td>\n "
504+ + " <td id='td3' rowspan='3.14'>b</td>\n "
505+ + " <td id='td4' rowspan='3.5'>b</td>\n "
506+ + " <td id='td5' rowspan='3.7'>b</td>\n "
507+ + " </tr>\n "
508+ + "</table>\n "
509+ + "<script>\n "
510+ + LOG_TITLE_FUNCTION_NORMALIZE
511+ + " var td1 = document.getElementById('td1');\n "
512+ + " var td2 = document.getElementById('td2');\n "
513+ + " var td3 = document.getElementById('td3');\n "
514+ + " var td4 = document.getElementById('td4');\n "
515+ + " var td5 = document.getElementById('td5');\n "
516+ + " log(td1.rowSpan);\n "
517+ + " log(td2.rowSpan);\n "
518+ + " log(td3.rowSpan);\n "
519+ + " log(td4.rowSpan);\n "
520+ + " log(td5.rowSpan);\n "
521+ + "</script>\n "
522+ + "</body></html>" ;
523+
524+ loadPageVerifyTitle2 (html );
525+ }
526+
527+ /**
528+ * @throws Exception if an error occurs
529+ */
530+ @ Test
531+ @ Alerts ({"999" , "1001" , "65534" , "65534" })
532+ public void rowSpanLarge () throws Exception {
533+ final String html
534+ = "<html><body><table>\n "
535+ + " <tr>\n "
536+ + " <td id='td1' rowspan='999'>b</td>\n "
537+ + " <td id='td2' rowspan='1001'>b</td>\n "
538+ + " <td id='td3' rowspan='65534'>b</td>\n "
539+ + " <td id='td4' rowspan='65535'>b</td>\n "
540+ + " </tr>\n "
541+ + "</table>\n "
542+ + "<script>\n "
543+ + LOG_TITLE_FUNCTION_NORMALIZE
544+ + " var td1 = document.getElementById('td1');\n "
545+ + " var td2 = document.getElementById('td2');\n "
546+ + " var td3 = document.getElementById('td3');\n "
547+ + " var td4 = document.getElementById('td4');\n "
548+ + " log(td1.rowSpan);\n "
549+ + " log(td2.rowSpan);\n "
550+ + " log(td3.rowSpan);\n "
551+ + " log(td4.rowSpan);\n "
552+ + "</script>\n "
553+ + "</body></html>" ;
554+
555+ loadPageVerifyTitle2 (html );
556+ }
557+
429558 /**
430559 * @throws Exception if an error occurs
431560 */
0 commit comments