Add unit test for String.prototype.toUpperCase()

This change adds a test for ensuring that String.prototype.toUpperCase()
is both defined and works.

Bug: 110114134
Test: m -j48 proxy_resolver_v8_unittest && adb sync && adb shell \
/data/nativetest64/proxy_resolver_v8_unittest/proxy_resolver_v8_unittest

Change-Id: I913553e409eaa55743d2cd66720137464bf413ed
(cherry picked from commit 516b1ef7eaa83ce0a33a219a28d887f2e5588f6c)
(cherry picked from commit fa127cd529071bed0086000f1cec120a5c1f82e3)
diff --git a/test/js-unittest/string_functions.js b/test/js-unittest/string_functions.js
new file mode 100644
index 0000000..a7c430f
--- /dev/null
+++ b/test/js-unittest/string_functions.js
@@ -0,0 +1,3 @@
+function FindProxyForURL(url, host) {
+  return "direct".toUpperCase();
+}
diff --git a/test/proxy_resolver_v8_unittest.cc b/test/proxy_resolver_v8_unittest.cc
index be7ecee..c8dcb7b 100644
--- a/test/proxy_resolver_v8_unittest.cc
+++ b/test/proxy_resolver_v8_unittest.cc
@@ -558,5 +558,21 @@
   EXPECT_EQ("DIRECT", proxies[0]);
 }
 
+TEST(ProxyResolverV8Test, StringPrototype) {
+  ProxyResolverV8WithMockBindings resolver(new MockJSBindings());
+  int result = resolver.SetPacScript(SCRIPT(STRING_FUNCTIONS_JS));
+  EXPECT_EQ(OK, result);
+
+  result = resolver.GetProxyForURL(kQueryUrl, kQueryHost, &kResults);
+
+  EXPECT_EQ(OK, result);
+  std::vector<std::string> proxies = string16ToProxyList(kResults);
+  EXPECT_EQ(1U, proxies.size());
+  EXPECT_EQ("DIRECT",proxies[0]);
+
+  EXPECT_EQ(0U, resolver.mock_js_bindings()->alerts.size());
+  EXPECT_EQ(0U, resolver.mock_js_bindings()->errors.size());
+}
+
 }  // namespace
 }  // namespace net
diff --git a/test/proxy_test_script.h b/test/proxy_test_script.h
index 80c96c7..bfd953a 100644
--- a/test/proxy_test_script.h
+++ b/test/proxy_test_script.h
@@ -667,6 +667,12 @@
   "  return \"DIRECT\";\n" \
   "}\n" \
 
+#define STRING_FUNCTIONS_JS \
+  "function FindProxyForURL(url, host) {\n" \
+  "  return \"direct\".toUpperCase();\n" \
+  "}\n" \
+  "\n" \
+
 #define UNHANDLED_EXCEPTION_JS \
   "function FindProxyForURL(url, host) {\n" \
   "  // This will throw a runtime exception.\n" \