resourceloader: Optimise startup by merging regexes
authorTimo Tijhof <krinklemail@gmail.com>
Fri, 28 Oct 2016 22:57:44 +0000 (23:57 +0100)
committerTimo Tijhof <krinklemail@gmail.com>
Fri, 28 Oct 2016 23:13:35 +0000 (00:13 +0100)
Merge webOS, misc and Google Glass regexes.

* Add various test cases for PlayStation.
* Add tests for unrelated user agent matching "Glass".

Change-Id: Ifb0944d190f230bb36197b22cf3099c187dad091

resources/src/startup.js
tests/qunit/suites/resources/startup.test.js

index d026cb0..61d06b6 100644 (file)
@@ -64,10 +64,8 @@ function isCompatible( str ) {
                // Hardcoded exceptions for browsers that pass the requirement but we don't want to
                // support in the modern run-time.
                && !(
-                       ua.match( /webOS\/1\.[0-4]/ ) ||
-                       ua.match( /PlayStation/i ) ||
-                       ua.match( /SymbianOS|Series60|NetFront|Opera Mini|S40OviBrowser|MeeGo/ ) ||
-                       ( ua.match( /Glass/ ) && ua.match( /Android/ ) )
+                       ua.match( /webOS\/1\.[0-4]|SymbianOS|Series60|NetFront|Opera Mini|S40OviBrowser|MeeGo|Android.+Glass/ ) ||
+                       ua.match( /PlayStation/i )
                )
        );
 }
index 2934b39..2d996ae 100644 (file)
                        'Wget/1.10.1 (Red Hat modified)',
                        // Unknown
                        'I\'m an unknown browser',
+                       'I\'m an unknown Glass browser',
                        // Empty
                        ''
                ],
                blacklisted: [
                        /* Grade C */
 
+                       // PlayStation
+                       'Mozilla/5.0 (PLAYSTATION 3; 1.10)',
+                       'Mozilla/5.0 (PLAYSTATION 3; 3.55)',
+                       'Mozilla/5.0 (PLAYSTATION 3 4.21) AppleWebKit/531.22.8 (KHTML, like Gecko)',
+                       'Mozilla/5.0 (PlayStation 4 1.70) AppleWebKit/536.26 (KHTML, like Gecko)',
                        // Open WebOS < 1.5 (Palm Pre, Palm Pixi)
                        'Mozilla/5.0 (webOS/1.0; U; en-US) AppleWebKit/525.27.1 (KHTML, like Gecko) Version/1.0 Safari/525.27.1 Pre/1.0',
                        'Mozilla/5.0 (webOS/1.4.0; U; en-US) AppleWebKit/532.2 (KHTML, like Gecko) Version/1.0 Safari/532.2 Pixi/1.1 ',