• commit-queue@webkit.org's avatar
    WebKitTestRunner needs testRunner.queueLoad · 76b6b778
    commit-queue@webkit.org authored
    https://bugs.webkit.org/show_bug.cgi?id=42674
    
    Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-10-17
    Reviewed by Kenneth Rohde Christiansen.
    
    Tools:
    
    Added testRunner.queueLoad() and testRunner.queueBackNavigation() implementation to WTR including
    Work Queue implementation. Work Queue is managed by WorkQueueManager which belongs to UI process
    (as the needed functionality, like loading initiation, has to be invoked from UI process) and
    exchanges messages with Injected bundle.
    
    * WebKitTestRunner/CMakeLists.txt:
    * WebKitTestRunner/GNUmakefile.am:
    * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
    * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
    (WTR::InjectedBundle::InjectedBundle):
    (WTR::InjectedBundle::didReceiveMessage):
    (WTR::InjectedBundle::done):
    (WTR::InjectedBundle::shouldProcessWorkQueue):
    (WTR):
    (WTR::InjectedBundle::processWorkQueue):
    (WTR::InjectedBundle::queueBackNavigation):
    (WTR::InjectedBundle::queueLoad):
    * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
    (InjectedBundle):
    * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
    (WTR::InjectedBundlePage::didFailProvisionalLoadWithErrorForFrame):
    (WTR::InjectedBundlePage::didFinishLoadForFrame):
    (WTR::InjectedBundlePage::didFailLoadWithErrorForFrame):
    (WTR::InjectedBundlePage::locationChangeForFrame):
    (WTR):
    * WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
    (InjectedBundlePage):
    * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
    (WTR::TestRunner::queueBackNavigation):
    (WTR):
    (WTR::TestRunner::queueLoad):
    * WebKitTestRunner/InjectedBundle/TestRunner.h:
    (TestRunner):
    * WebKitTestRunner/Target.pri:
    * WebKitTestRunner/TestController.cpp:
    (WTR::TestController::resetStateToConsistentValues):
    * WebKitTestRunner/TestController.h:
    (WTR::TestController::workQueueManager):
    (TestController):
    * WebKitTestRunner/TestInvocation.cpp:
    (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
    (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
    * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
    * WebKitTestRunner/WorkQueueManager.cpp: Added.
    (WTR):
    (WTR::mainPage):
    (WTR::goToItemAtIndex):
    (WTR::WorkQueueManager::WorkQueueManager):
    (WTR::WorkQueueManager::clearWorkQueue):
    (WTR::WorkQueueManager::processWorkQueue):
    (WTR::WorkQueueManager::queueLoad):
    (WTR::WorkQueueManager::queueBackNavigation):
    (WTR::WorkQueueManager::enqueue):
    * WebKitTestRunner/WorkQueueManager.h: Added.
    (WTR):
    (WorkQueueManager):
    (WTR::WorkQueueManager::isWorkQueueEmpty):
    (WorkQueueItem):
    (WTR::WorkQueueManager::WorkQueueItem::~WorkQueueItem):
    * WebKitTestRunner/win/WebKitTestRunner.vcproj:
    
    LayoutTests:
    
    Unskipped corresponding tests for WK2 and WK2 EFL, put those which still failing to appropriate groups.
    
    * platform/efl-wk2/TestExpectations:
    * platform/wk2/TestExpectations:
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131560 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    76b6b778
project.pbxproj 56.4 KB