@@ -504,7 +504,7 @@ public static function data_unallowed_modifiable_text_updates() {
504504 * @param string $update Update containing possibly-compromising text.
505505 * @param string $expected Expected result.
506506 */
507- public function test_safely_updates_dangerous_javascript_script_tag_contents ( string $ html , string $ update , string $ expected ) {
507+ public function test_safely_updates_dangerous_JavaScript_script_tag_contents ( string $ html , string $ update , string $ expected ) {
508508 $ processor = new WP_HTML_Tag_Processor ( $ html );
509509 $ this ->assertTrue ( $ processor ->next_tag ( 'SCRIPT ' ) );
510510 $ this ->assertTrue ( $ processor ->set_modifiable_text ( $ update ) );
@@ -519,12 +519,16 @@ public function test_safely_updates_dangerous_javascript_script_tag_contents( st
519519 public static function data_script_tag_text_updates (): array {
520520 return array (
521521 'Simple update ' => array ( '<script></script> ' , '{} ' , '<script>{}</script> ' ),
522+ 'Needs no replacement ' => array ( '<script></script> ' , '<!--<scriptish> ' , '<script><!--<scriptish></script> ' ),
522523 'var script;1<script>0 ' => array ( '<script></script> ' , 'var script;1<script>0 ' , '<script>var script;1<\u0073cript>0</script> ' ),
523524 '1</script>/ ' => array ( '<script></script> ' , '1</script>/ ' , '<script>1</\u0073cript>/</script> ' ),
524525 'var SCRIPT;1<SCRIPT>0 ' => array ( '<script></script> ' , 'var SCRIPT;1<SCRIPT>0 ' , '<script>var SCRIPT;1<\u0053CRIPT>0</script> ' ),
525526 '1</SCRIPT>/ ' => array ( '<script></script> ' , '1</SCRIPT>/ ' , '<script>1</\u0053CRIPT>/</script> ' ),
526527 '"</script>" ' => array ( '<script></script> ' , '"</script>" ' , '<script>"</\u0073cript>"</script> ' ),
527528 '"</ScRiPt>" ' => array ( '<script></script> ' , '"</ScRiPt>" ' , '<script>"</\u0053cRiPt>"</script> ' ),
529+ 'Module tag ' => array ( '<script type="module"></script> ' , '"<script>" ' , '<script type="module">"<\u0073cript>"</script> ' ),
530+ 'Tag with type ' => array ( '<script type="text/javascript"></script> ' , '"<script>" ' , '<script type="text/javascript">"<\u0073cript>"</script> ' ),
531+ 'Tag with language ' => array ( '<script language="javascript"></script> ' , '"<script>" ' , '<script language="javascript">"<\u0073cript>"</script> ' ),
528532 );
529533 }
530534}
0 commit comments