Index: ios/web/web_state/ui/web_view_js_utils_unittest.mm |
diff --git a/ios/web/web_state/ui/web_view_js_utils_unittest.mm b/ios/web/web_state/ui/web_view_js_utils_unittest.mm |
index b0f699e61621d33e54edefe3f613843353fb2f75..8a0bde324d4f9148b2cd87a9020e8d6ce49b0603 100644 |
--- a/ios/web/web_state/ui/web_view_js_utils_unittest.mm |
+++ b/ios/web/web_state/ui/web_view_js_utils_unittest.mm |
@@ -9,85 +9,68 @@ |
#include "base/test/ios/wait_util.h" |
#include "ios/web/public/test/test_browser_state.h" |
#import "ios/web/public/test/test_web_client.h" |
-#include "ios/web/public/test/web_test_util.h" |
#import "ios/web/public/web_view_creation_util.h" |
#import "ios/web/web_state/web_view_internal_creation_util.h" |
#import "ios/web/test/web_test.h" |
#include "testing/gtest_mac.h" |
#include "testing/platform_test.h" |
-namespace { |
+namespace web { |
-// Synchronously returns result of web::EvaluateJavaScript call. |
-template <typename WebView> |
-NSString* EvaluateJavaScript(WebView web_view, NSString* js) { |
- __block bool evaluation_completed = false; |
- __block base::scoped_nsobject<NSString> evaluation_result; |
- web::EvaluateJavaScript(web_view, js, ^(NSString* result, NSError* error) { |
+// Test fixture for web::EvaluateJavaScript testing. |
+class WebViewJsUtilsTest : public web::WebTest { |
+ protected: |
+ void SetUp() override { |
+ web::WebTest::SetUp(); |
+ web_view_.reset(web::CreateWKWebView(CGRectZero, GetBrowserState())); |
+ } |
+ // Synchronously returns result of web::EvaluateJavaScript call. |
+ NSString* EvaluateJavaScript(NSString* js) { |
+ __block bool evaluation_completed = false; |
+ __block base::scoped_nsobject<NSString> evaluation_result; |
+ web::EvaluateJavaScript(web_view_, js, ^(NSString* result, NSError* error) { |
DCHECK(!error); |
evaluation_result.reset([result copy]); |
evaluation_completed = true; |
- }); |
- base::test::ios::WaitUntilCondition(^bool() { |
- return evaluation_completed; |
- }); |
- return [[evaluation_result copy] autorelease]; |
-} |
- |
-// Base test fixture for web::EvaluateJavaScript testing. |
-typedef web::WebTest WebViewJSUtilsTest; |
- |
-// Test fixture for web::EvaluateJavaScript(UIWebView*..) testing. |
-class UIWebViewJSUtilsTest : public WebViewJSUtilsTest { |
- protected: |
- void SetUp() override { |
- WebViewJSUtilsTest::SetUp(); |
- web_view_.reset(web::CreateWebView(CGRectZero)); |
+ }); |
+ base::test::ios::WaitUntilCondition(^{ |
+ return evaluation_completed; |
+ }); |
+ return [[evaluation_result copy] autorelease]; |
} |
- // UIWebView created for testing. |
- base::scoped_nsobject<UIWebView> web_view_; |
-}; |
-// Test fixture for web::EvaluateJavaScript(WKWebView*..) testing. |
-class WKWebViewJSUtilsTest : public WebViewJSUtilsTest { |
- protected: |
- void SetUp() override { |
- // SetUp crashes on iOS 7. |
- CR_TEST_REQUIRES_WK_WEB_VIEW(); |
- WebViewJSUtilsTest::SetUp(); |
- web_view_.reset(web::CreateWKWebView(CGRectZero, GetBrowserState())); |
- } |
+ private: |
// WKWebView created for testing. |
base::scoped_nsobject<WKWebView> web_view_; |
}; |
// Tests that a script with undefined result correctly evaluates to string. |
-WEB_TEST_F(UIWebViewJSUtilsTest, WKWebViewJSUtilsTest, UndefinedEvaluation) { |
- EXPECT_NSEQ(@"", EvaluateJavaScript(this->web_view_, @"{}")); |
+TEST_F(WebViewJsUtilsTest, UndefinedEvaluation) { |
+ EXPECT_NSEQ(@"", EvaluateJavaScript(@"{}")); |
} |
// Tests that a script with string result correctly evaluates to string. |
-WEB_TEST_F(UIWebViewJSUtilsTest, WKWebViewJSUtilsTest, StringEvaluation) { |
- EXPECT_NSEQ(@"test", EvaluateJavaScript(this->web_view_, @"'test'")); |
+TEST_F(WebViewJsUtilsTest, StringEvaluation) { |
+ EXPECT_NSEQ(@"test", EvaluateJavaScript(@"'test'")); |
} |
// Tests that a script with number result correctly evaluates to string. |
-WEB_TEST_F(UIWebViewJSUtilsTest, WKWebViewJSUtilsTest, NumberEvaluation) { |
- EXPECT_NSEQ(@"-1", EvaluateJavaScript(this->web_view_, @"-1")); |
- EXPECT_NSEQ(@"0", EvaluateJavaScript(this->web_view_, @"0")); |
- EXPECT_NSEQ(@"1", EvaluateJavaScript(this->web_view_, @"1")); |
- EXPECT_NSEQ(@"3.14", EvaluateJavaScript(this->web_view_, @"3.14")); |
+TEST_F(WebViewJsUtilsTest, NumberEvaluation) { |
+ EXPECT_NSEQ(@"-1", EvaluateJavaScript(@"-1")); |
+ EXPECT_NSEQ(@"0", EvaluateJavaScript(@"0")); |
+ EXPECT_NSEQ(@"1", EvaluateJavaScript(@"1")); |
+ EXPECT_NSEQ(@"3.14", EvaluateJavaScript(@"3.14")); |
} |
// Tests that a script with bool result correctly evaluates to string. |
-WEB_TEST_F(UIWebViewJSUtilsTest, WKWebViewJSUtilsTest, BoolEvaluation) { |
- EXPECT_NSEQ(@"true", EvaluateJavaScript(this->web_view_, @"true")); |
- EXPECT_NSEQ(@"false", EvaluateJavaScript(this->web_view_, @"false")); |
+TEST_F(WebViewJsUtilsTest, BoolEvaluation) { |
+ EXPECT_NSEQ(@"true", EvaluateJavaScript(@"true")); |
+ EXPECT_NSEQ(@"false", EvaluateJavaScript(@"false")); |
} |
// Tests that a script with null result correctly evaluates to empty string. |
-WEB_TEST_F(UIWebViewJSUtilsTest, WKWebViewJSUtilsTest, NullEvaluation) { |
- EXPECT_NSEQ(@"", EvaluateJavaScript(this->web_view_, @"null")); |
+TEST_F(WebViewJsUtilsTest, NullEvaluation) { |
+ EXPECT_NSEQ(@"", EvaluateJavaScript(@"null")); |
} |
-} // namespace |
+} // namespace web |