Changeset 139821 in webkit
- Timestamp:
- Jan 15, 2013 6:39:17 PM (11 years ago)
- Location:
- trunk
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/ChangeLog
r139812 r139821 1 2013-01-15 Levi Weintraub <leviw@chromium.org> 2 3 Unreviewed, rolling out r139792. 4 http://trac.webkit.org/changeset/139792 5 https://bugs.webkit.org/show_bug.cgi?id=106970 6 7 Broke the windows build. 8 9 * bytecode/GlobalResolveInfo.h: Removed property svn:mergeinfo. 10 1 11 2013-01-15 Pratik Solanki <psolanki@apple.com> 2 12 -
trunk/Tools/ChangeLog
r139818 r139821 1 2013-01-15 Levi Weintraub <leviw@chromium.org> 2 3 Unreviewed, rolling out r139792. 4 http://trac.webkit.org/changeset/139792 5 https://bugs.webkit.org/show_bug.cgi?id=106970 6 7 Broke the windows build. 8 9 * DumpRenderTree/chromium/DRTTestRunner.cpp: 10 (DRTTestRunner::DRTTestRunner): 11 (DRTTestRunner::notifyDone): 12 (DRTTestRunner::reset): 13 (DRTTestRunner::setAlwaysAcceptCookies): 14 (DRTTestRunner::setWindowIsKey): 15 (DRTTestRunner::pathToLocalResource): 16 (DRTTestRunner::setPOSIXLocale): 17 (InvokeCallbackTask): 18 (InvokeCallbackTask::InvokeCallbackTask): 19 (InvokeCallbackTask::runIfValid): 20 (DRTTestRunner::setBackingScaleFactor): 21 * DumpRenderTree/chromium/DRTTestRunner.h: 22 (DRTTestRunner): 23 (DRTTestRunner::taskList): 24 * DumpRenderTree/chromium/TestRunner/public/WebTestDelegate.h: 25 (WebTestRunner::WebTestDelegate::setDatabaseQuota): 26 * DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp: 27 (WebTestRunner::TestRunner::TestRunner): 28 (WebTestRunner::TestRunner::reset): 29 (WebTestRunner::TestRunner::setDatabaseQuota): 30 * DumpRenderTree/chromium/TestRunner/src/TestRunner.h: 31 (TestRunner): 32 * DumpRenderTree/chromium/WebViewHost.cpp: 33 (WebViewHost::setPendingExtraData): 34 (WebViewHost::setDeviceScaleFactor): 35 * DumpRenderTree/chromium/WebViewHost.h: 36 (WebViewHost): 37 1 38 2013-01-15 Ryosuke Niwa <rniwa@webkit.org> 2 39 -
trunk/Tools/DumpRenderTree/chromium/DRTTestRunner.cpp
r139795 r139821 69 69 #include <algorithm> 70 70 #include <cctype> 71 #include <clocale> 71 72 #include <cstdlib> 72 73 #include <limits> … … 116 117 bindMethod("notifyDone", &DRTTestRunner::notifyDone); 117 118 bindMethod("numberOfPendingGeolocationPermissionRequests", &DRTTestRunner:: numberOfPendingGeolocationPermissionRequests); 119 bindMethod("pathToLocalResource", &DRTTestRunner::pathToLocalResource); 118 120 bindMethod("queueBackNavigation", &DRTTestRunner::queueBackNavigation); 119 121 bindMethod("queueForwardNavigation", &DRTTestRunner::queueForwardNavigation); … … 123 125 bindMethod("queueNonLoadingScript", &DRTTestRunner::queueNonLoadingScript); 124 126 bindMethod("queueReload", &DRTTestRunner::queueReload); 127 bindMethod("setAlwaysAcceptCookies", &DRTTestRunner::setAlwaysAcceptCookies); 125 128 bindMethod("setCloseRemainingWindowsWhenComplete", &DRTTestRunner::setCloseRemainingWindowsWhenComplete); 126 129 bindMethod("setCustomPolicyDelegate", &DRTTestRunner::setCustomPolicyDelegate); … … 133 136 bindMethod("setPointerLockWillFailSynchronously", &DRTTestRunner::setPointerLockWillFailSynchronously); 134 137 #endif 138 bindMethod("setPOSIXLocale", &DRTTestRunner::setPOSIXLocale); 139 bindMethod("setBackingScaleFactor", &DRTTestRunner::setBackingScaleFactor); 135 140 bindMethod("setWillSendRequestClearHeader", &DRTTestRunner::setWillSendRequestClearHeader); 136 141 bindMethod("setWillSendRequestReturnsNull", &DRTTestRunner::setWillSendRequestReturnsNull); 137 142 bindMethod("setWillSendRequestReturnsNullOnRedirect", &DRTTestRunner::setWillSendRequestReturnsNullOnRedirect); 143 bindMethod("setWindowIsKey", &DRTTestRunner::setWindowIsKey); 138 144 #if ENABLE(NOTIFICATIONS) 139 145 bindMethod("simulateLegacyWebNotificationClick", &DRTTestRunner::simulateLegacyWebNotificationClick); … … 214 220 { 215 221 // Test didn't timeout. Kill the timeout timer. 216 taskList()->revokeAll();222 m_taskList.revokeAll(); 217 223 218 224 completeNotifyDone(false); … … 385 391 { 386 392 TestRunner::reset(); 393 if (m_shell) 394 m_shell->webViewHost()->setDeviceScaleFactor(1); 387 395 m_waitUntilDone = false; 388 396 m_webHistoryItemCount.set(0); 389 397 m_titleTextDirection.set("ltr"); 390 398 m_interceptPostMessage.set(false); 399 400 webkit_support::SetAcceptAllCookies(false); 401 402 setlocale(LC_ALL, ""); 391 403 392 404 if (m_closeRemainingWindows) … … 395 407 m_closeRemainingWindows = true; 396 408 m_workQueue.reset(); 409 m_taskList.revokeAll(); 397 410 } 398 411 … … 424 437 if (arguments.size() > 0 && arguments[0].isBool()) 425 438 m_closeRemainingWindows = arguments[0].value.boolValue; 439 result->setNull(); 440 } 441 442 void DRTTestRunner::setAlwaysAcceptCookies(const CppArgumentList& arguments, CppVariant* result) 443 { 444 if (arguments.size() > 0) 445 webkit_support::SetAcceptAllCookies(cppVariantToBool(arguments[0])); 446 result->setNull(); 447 } 448 449 void DRTTestRunner::setWindowIsKey(const CppArgumentList& arguments, CppVariant* result) 450 { 451 if (arguments.size() > 0 && arguments[0].isBool()) 452 m_shell->setFocus(m_shell->webView(), arguments[0].value.boolValue); 426 453 result->setNull(); 427 454 } … … 470 497 } 471 498 499 void DRTTestRunner::pathToLocalResource(const CppArgumentList& arguments, CppVariant* result) 500 { 501 result->setNull(); 502 if (arguments.size() <= 0 || !arguments[0].isString()) 503 return; 504 505 string url = arguments[0].toString(); 506 #if OS(WINDOWS) 507 if (!url.find("/tmp/")) { 508 // We want a temp file. 509 const unsigned tempPrefixLength = 5; 510 size_t bufferSize = MAX_PATH; 511 OwnArrayPtr<WCHAR> tempPath = adoptArrayPtr(new WCHAR[bufferSize]); 512 DWORD tempLength = ::GetTempPathW(bufferSize, tempPath.get()); 513 if (tempLength + url.length() - tempPrefixLength + 1 > bufferSize) { 514 bufferSize = tempLength + url.length() - tempPrefixLength + 1; 515 tempPath = adoptArrayPtr(new WCHAR[bufferSize]); 516 tempLength = GetTempPathW(bufferSize, tempPath.get()); 517 ASSERT(tempLength < bufferSize); 518 } 519 string resultPath(WebString(tempPath.get(), tempLength).utf8()); 520 resultPath.append(url.substr(tempPrefixLength)); 521 result->set(resultPath); 522 return; 523 } 524 #endif 525 526 // Some layout tests use file://// which we resolve as a UNC path. Normalize 527 // them to just file:///. 528 string lowerUrl = url; 529 transform(lowerUrl.begin(), lowerUrl.end(), lowerUrl.begin(), ::tolower); 530 while (!lowerUrl.find("file:////")) { 531 url = url.substr(0, 8) + url.substr(9); 532 lowerUrl = lowerUrl.substr(0, 8) + lowerUrl.substr(9); 533 } 534 result->set(webkit_support::RewriteLayoutTestsURL(url).spec()); 535 } 536 472 537 473 538 #if ENABLE(NOTIFICATIONS) … … 516 581 host->displayRepaintMask(); 517 582 result->setNull(); 583 } 584 585 void DRTTestRunner::setPOSIXLocale(const CppArgumentList& arguments, CppVariant* result) 586 { 587 result->setNull(); 588 if (arguments.size() == 1 && arguments[0].isString()) 589 setlocale(LC_ALL, arguments[0].toString().c_str()); 518 590 } 519 591 … … 633 705 #endif 634 706 707 class InvokeCallbackTask : public WebMethodTask<DRTTestRunner> { 708 public: 709 InvokeCallbackTask(DRTTestRunner* object, PassOwnArrayPtr<CppVariant> callbackArguments, uint32_t numberOfArguments) 710 : WebMethodTask<DRTTestRunner>(object) 711 , m_callbackArguments(callbackArguments) 712 , m_numberOfArguments(numberOfArguments) 713 { 714 } 715 716 virtual void runIfValid() 717 { 718 CppVariant invokeResult; 719 m_callbackArguments[0].invokeDefault(m_callbackArguments.get(), m_numberOfArguments, invokeResult); 720 } 721 722 private: 723 OwnArrayPtr<CppVariant> m_callbackArguments; 724 uint32_t m_numberOfArguments; 725 }; 726 727 void DRTTestRunner::setBackingScaleFactor(const CppArgumentList& arguments, CppVariant* result) 728 { 729 if (arguments.size() < 2 || !arguments[0].isNumber() || !arguments[1].isObject()) 730 return; 731 732 float value = arguments[0].value.doubleValue; 733 m_shell->webViewHost()->setDeviceScaleFactor(value); 734 735 OwnArrayPtr<CppVariant> callbackArguments = adoptArrayPtr(new CppVariant[1]); 736 callbackArguments[0].set(arguments[1]); 737 result->setNull(); 738 postTask(new InvokeCallbackTask(this, callbackArguments.release(), 1)); 739 } 740 635 741 #if ENABLE(POINTER_LOCK) 636 742 void DRTTestRunner::didAcquirePointerLock(const CppArgumentList&, CppVariant* result) -
trunk/Tools/DumpRenderTree/chromium/DRTTestRunner.h
r139795 r139821 95 95 void queueLoadHTMLString(const CppArgumentList&, CppVariant*); 96 96 97 // Changes the cookie policy from the default to allow all cookies. 98 void setAlwaysAcceptCookies(const CppArgumentList&, CppVariant*); 99 100 // Gives focus to the window. 101 void setWindowIsKey(const CppArgumentList&, CppVariant*); 102 97 103 98 104 // Causes navigation actions just printout the intended navigation instead … … 112 118 // Causes WillSendRequest to return an empty request. 113 119 void setWillSendRequestReturnsNull(const CppArgumentList&, CppVariant*); 120 121 // Converts a URL starting with file:///tmp/ to the local mapping. 122 void pathToLocalResource(const CppArgumentList&, CppVariant*); 114 123 115 124 #if ENABLE(NOTIFICATIONS) … … 122 131 void display(const CppArgumentList&, CppVariant*); 123 132 void displayInvalidatedRegion(const CppArgumentList&, CppVariant*); 133 134 // Calls setlocale(LC_ALL, ...) for a specified locale. 135 // Resets between tests. 136 void setPOSIXLocale(const CppArgumentList&, CppVariant*); 124 137 125 138 // Gets the number of geolocation permissions requests pending. … … 153 166 #endif 154 167 168 // Used to set the device scale factor. 169 void setBackingScaleFactor(const CppArgumentList&, CppVariant*); 170 155 171 public: 156 172 // The following methods are not exposed to JavaScript. … … 187 203 virtual bool run(TestShell*) = 0; 188 204 }; 205 206 WebTaskList* taskList() { return &m_taskList; } 189 207 190 208 private: … … 229 247 }; 230 248 249 // Used for test timeouts. 250 WebTaskList m_taskList; 251 231 252 // Non-owning pointer. The DRTTestRunner is owned by the host. 232 253 TestShell* m_shell; -
trunk/Tools/DumpRenderTree/chromium/TestRunner/public/WebTestDelegate.h
r139792 r139821 88 88 virtual void clearAllDatabases() { } 89 89 virtual void setDatabaseQuota(int) { } 90 virtual void setDeviceScaleFactor(float) { }91 virtual void setFocus(bool) { }92 virtual void setAcceptAllCookies(bool) { }93 virtual std::string pathToLocalResource(const std::string& resource) { return std::string(); }94 virtual void setLocale(const std::string&) { }95 90 }; 96 91 -
trunk/Tools/DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp
r139795 r139821 48 48 #include "WebSettings.h" 49 49 #include "WebSurroundingText.h" 50 #include "WebTask.h"51 50 #include "WebTestDelegate.h" 52 51 #include "WebView.h" … … 55 54 #include "platform/WebSerializedScriptValue.h" 56 55 #include "v8/include/v8.h" 57 #include <wtf/OwnArrayPtr.h>58 56 #include <wtf/text/WTFString.h> 59 57 … … 77 75 virtual void postFailure(const WebSerializedScriptValue& data) const { } 78 76 virtual void destroy() { } 79 };80 81 class InvokeCallbackTask : public WebMethodTask<TestRunner> {82 public:83 InvokeCallbackTask(TestRunner* object, PassOwnArrayPtr<CppVariant> callbackArguments, uint32_t numberOfArguments)84 : WebMethodTask<TestRunner>(object)85 , m_callbackArguments(callbackArguments)86 , m_numberOfArguments(numberOfArguments)87 {88 }89 90 virtual void runIfValid()91 {92 CppVariant invokeResult;93 m_callbackArguments[0].invokeDefault(m_callbackArguments.get(), m_numberOfArguments, invokeResult);94 }95 96 private:97 OwnArrayPtr<CppVariant> m_callbackArguments;98 uint32_t m_numberOfArguments;99 77 }; 100 78 … … 203 181 bindMethod("clearAllDatabases", &TestRunner::clearAllDatabases); 204 182 bindMethod("setDatabaseQuota", &TestRunner::setDatabaseQuota); 205 bindMethod("setAlwaysAcceptCookies", &TestRunner::setAlwaysAcceptCookies);206 bindMethod("setWindowIsKey", &TestRunner::setWindowIsKey);207 bindMethod("pathToLocalResource", &TestRunner::pathToLocalResource);208 bindMethod("setBackingScaleFactor", &TestRunner::setBackingScaleFactor);209 bindMethod("setPOSIXLocale", &TestRunner::setPOSIXLocale);210 183 211 184 // Properties. … … 276 249 // Reset the default quota for each origin to 5MB 277 250 m_delegate->setDatabaseQuota(5 * 1024 * 1024); 278 m_delegate->setDeviceScaleFactor(1);279 m_delegate->setAcceptAllCookies(false);280 m_delegate->setLocale("");281 251 282 252 m_dumpEditingCallbacks = false; … … 311 281 312 282 m_webPermissions->reset(); 313 314 m_taskList.revokeAll();315 283 } 316 284 … … 1346 1314 } 1347 1315 1348 void TestRunner::setAlwaysAcceptCookies(const CppArgumentList& arguments, CppVariant* result)1349 {1350 if (arguments.size() > 0)1351 m_delegate->setAcceptAllCookies(cppVariantToBool(arguments[0]));1352 result->setNull();1353 }1354 1355 void TestRunner::setWindowIsKey(const CppArgumentList& arguments, CppVariant* result)1356 {1357 if (arguments.size() > 0 && arguments[0].isBool())1358 m_delegate->setFocus(arguments[0].value.boolValue);1359 result->setNull();1360 }1361 1362 void TestRunner::pathToLocalResource(const CppArgumentList& arguments, CppVariant* result)1363 {1364 result->setNull();1365 if (arguments.size() <= 0 || !arguments[0].isString())1366 return;1367 1368 result->set(m_delegate->pathToLocalResource(arguments[0].toString()));1369 }1370 1371 void TestRunner::setBackingScaleFactor(const CppArgumentList& arguments, CppVariant* result)1372 {1373 if (arguments.size() < 2 || !arguments[0].isNumber() || !arguments[1].isObject())1374 return;1375 1376 float value = arguments[0].value.doubleValue;1377 m_delegate->setDeviceScaleFactor(value);1378 1379 OwnArrayPtr<CppVariant> callbackArguments = adoptArrayPtr(new CppVariant[1]);1380 callbackArguments[0].set(arguments[1]);1381 result->setNull();1382 m_delegate->postTask(new InvokeCallbackTask(this, callbackArguments.release(), 1));1383 }1384 1385 void TestRunner::setPOSIXLocale(const CppArgumentList& arguments, CppVariant* result)1386 {1387 result->setNull();1388 if (arguments.size() == 1 && arguments[0].isString())1389 m_delegate->setLocale(arguments[0].toString());1390 }1391 1392 1316 void TestRunner::dumpEditingCallbacks(const CppArgumentList&, CppVariant* result) 1393 1317 { -
trunk/Tools/DumpRenderTree/chromium/TestRunner/src/TestRunner.h
r139795 r139821 35 35 #include "CppBoundClass.h" 36 36 #include "WebDeliveredIntentClient.h" 37 #include "WebTask.h"38 37 #include "WebTestRunner.h" 39 38 #include "platform/WebArrayBufferView.h" … … 60 59 61 60 void reset(); 62 63 WebTaskList* taskList() { return &m_taskList; }64 61 65 62 // WebTestRunner implementation. … … 340 337 void setDatabaseQuota(const CppArgumentList&, CppVariant*); 341 338 342 // Changes the cookie policy from the default to allow all cookies.343 void setAlwaysAcceptCookies(const CppArgumentList&, CppVariant*);344 345 // Gives focus to the window.346 void setWindowIsKey(const CppArgumentList&, CppVariant*);347 348 // Converts a URL starting with file:///tmp/ to the local mapping.349 void pathToLocalResource(const CppArgumentList&, CppVariant*);350 351 // Used to set the device scale factor.352 void setBackingScaleFactor(const CppArgumentList&, CppVariant*);353 354 // Calls setlocale(LC_ALL, ...) for a specified locale.355 // Resets between tests.356 void setPOSIXLocale(const CppArgumentList&, CppVariant*);357 358 339 /////////////////////////////////////////////////////////////////////////// 359 340 // Properties 360 341 void workerThreadCount(CppVariant*); 361 342 362 ////////////////////////////////////////////////////////////////////////// 343 /////////////////////////////////////////////////////////////////////////// 363 344 // Fallback and stub methods 364 345 … … 482 463 WebKit::WebArrayBufferView m_audioData; 483 464 484 // Used for test timeouts.485 WebTaskList m_taskList;486 487 465 WebTestDelegate* m_delegate; 488 466 WebKit::WebView* m_webView; -
trunk/Tools/DumpRenderTree/chromium/WebViewHost.cpp
r139795 r139821 71 71 #include "webkit/support/test_media_stream_client.h" 72 72 #include "webkit/support/webkit_support.h" 73 #include <cctype>74 #include <clocale>75 73 #include <public/WebCString.h> 76 74 #include <public/WebCompositorOutputSurface.h> … … 1080 1078 { 1081 1079 webkit_support::SetDatabaseQuota(quota); 1082 }1083 1084 void WebViewHost::setDeviceScaleFactor(float deviceScaleFactor)1085 {1086 webView()->setDeviceScaleFactor(deviceScaleFactor);1087 discardBackingStore();1088 }1089 1090 void WebViewHost::setFocus(bool focused)1091 {1092 m_shell->setFocus(m_shell->webView(), focused);1093 }1094 1095 void WebViewHost::setAcceptAllCookies(bool acceptCookies)1096 {1097 webkit_support::SetAcceptAllCookies(acceptCookies);1098 }1099 1100 string WebViewHost::pathToLocalResource(const string& url)1101 {1102 #if OS(WINDOWS)1103 if (!url.find("/tmp/")) {1104 // We want a temp file.1105 const unsigned tempPrefixLength = 5;1106 size_t bufferSize = MAX_PATH;1107 OwnArrayPtr<WCHAR> tempPath = adoptArrayPtr(new WCHAR[bufferSize]);1108 DWORD tempLength = ::GetTempPathW(bufferSize, tempPath.get());1109 if (tempLength + url.length() - tempPrefixLength + 1 > bufferSize) {1110 bufferSize = tempLength + url.length() - tempPrefixLength + 1;1111 tempPath = adoptArrayPtr(new WCHAR[bufferSize]);1112 tempLength = GetTempPathW(bufferSize, tempPath.get());1113 ASSERT(tempLength < bufferSize);1114 }1115 string resultPath(WebString(tempPath.get(), tempLength).utf8());1116 resultPath.append(url.substr(tempPrefixLength));1117 return resultPath;1118 }1119 #endif1120 1121 // Some layout tests use file://// which we resolve as a UNC path. Normalize1122 // them to just file:///.1123 string lowerUrl = url;1124 string result = url;1125 transform(lowerUrl.begin(), lowerUrl.end(), lowerUrl.begin(), ::tolower);1126 while (!lowerUrl.find("file:////")) {1127 result = result.substr(0, 8) + result.substr(9);1128 lowerUrl = lowerUrl.substr(0, 8) + lowerUrl.substr(9);1129 }1130 return webkit_support::RewriteLayoutTestsURL(result).spec();1131 }1132 1133 void WebViewHost::setLocale(const std::string& locale)1134 {1135 setlocale(LC_ALL, locale.c_str());1136 1080 } 1137 1081 … … 1459 1403 } 1460 1404 1405 void WebViewHost::setDeviceScaleFactor(float deviceScaleFactor) 1406 { 1407 webView()->setDeviceScaleFactor(deviceScaleFactor); 1408 discardBackingStore(); 1409 } 1410 1461 1411 void WebViewHost::setPageTitle(const WebString&) 1462 1412 { -
trunk/Tools/DumpRenderTree/chromium/WebViewHost.h
r139792 r139821 97 97 void setRequestReturnNull(bool returnNull) { m_requestReturnNull = returnNull; } 98 98 void setPendingExtraData(PassOwnPtr<TestShellExtraData>); 99 void setDeviceScaleFactor(float); 99 100 100 101 void paintRect(const WebKit::WebRect&); … … 156 157 virtual void clearAllDatabases() OVERRIDE; 157 158 virtual void setDatabaseQuota(int) OVERRIDE; 158 virtual void setDeviceScaleFactor(float) OVERRIDE;159 virtual void setFocus(bool) OVERRIDE;160 virtual void setAcceptAllCookies(bool) OVERRIDE;161 virtual std::string pathToLocalResource(const std::string& url) OVERRIDE;162 virtual void setLocale(const std::string&) OVERRIDE;163 159 164 160 // NavigationHost
Note: See TracChangeset
for help on using the changeset viewer.