4 <p
>Tests
for user agent
string template
</p
>
7 if (window
.testRunner
) {
8 testRunner
.dumpAsText();
11 var userAgent
= navigator
.userAgent
;
13 // Validate the user agent string using the following template:
14 var userAgentTemplate
= "Mozilla/5.0 (%Platform%%Subplatform%) AppleWebKit/%WebKitVersion% (KHTML, like Gecko)"
15 var userAgentTemplateRegExp
= /^Mozilla\
/5\
.0 \
(([^
;]+
; )*[^
;]+\
) AppleWebKit\
/[0-9\
.]+
(\+
)? \
(KHTML
, like Gecko\
).*$
/;
16 document
.write("UserAgent should match the " + userAgentTemplate +
" template: " +
!!userAgent
.match(userAgentTemplateRegExp
) +
"<br>");
18 // Validate navigator.appVersion and navigator.appCodeName
19 document
.write("UserAgent should be the same as the appVersion with appCodeName prefix: " +
(userAgent
== navigator
.appCodeName +
"/" + navigator
.appVersion
) +
"<br>");
21 // Validate HTTP User-Agent header
22 var userAgentHeader
= '<?php echo $_SERVER['HTTP_USER_AGENT
']; ?>';
23 document
.write("HTTP User-Agent header should be the same as userAgent: " +
(userAgentHeader
== userAgent
) +
"<br>");
25 // Make sure language tag is not present
26 var languageTagRegExp
= new RegExp("[ ;\(]" + navigator
.language +
"[ ;\)]");
27 document
.write("Language tag should not be present in the userAgent: " +
!userAgent
.match(languageTagRegExp
) +
"<br>");