Changeset 266988 in webkit


Ignore:
Timestamp:
Sep 12, 2020 11:21:39 PM (4 years ago)
Author:
Darin Adler
Message:

Send TestRendered event after running a test but before dumping
https://bugs.webkit.org/show_bug.cgi?id=216428

Reviewed by Sam Weinig.

Tools:

  • DumpRenderTree/CMakeLists.txt: Added the new files and directories.
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Ditto.
  • DumpRenderTree/PlatformWin.cmake: Temporarily disable precompiled headers

on WinCairo since they were not working properly with JSBasics.cpp.

  • DumpRenderTree/mac/FrameLoadDelegate.mm:

(-[FrameLoadDelegate readyToDumpState]): Added. Calls sendTestRenderedEvent.
(-[FrameLoadDelegate processWork:]): Call readyToDumpState.
(-[FrameLoadDelegate webView:locationChangeDone:forDataSource:]): Ditto.

  • DumpRenderTree/win/FrameLoadDelegate.cpp:

(readyToDumpState): Added. Calls sendTestRenderedEvent.
(FrameLoadDelegate::processWork): Call readyToDumpState.
(FrameLoadDelegate::locationChangeDone): Ditto.

  • TestRunnerShared/Bindings/JSBasics.cpp: Added.

(WTR::JSValueMakeBooleanOrNull): Moved from JSWrappable.h.
(WTR::JSValueToNullableBoolean): Ditto.
(WTR::JSValueMakeStringOrNull): Ditto.
(WTR::createJSString): Ditto.
(WTR::makeValue): Ditto.
(WTR::objectProperty): Ditto.
(WTR::setProperty): Added. Sets a named property value to a boolean.
(WTR::call): Moved from JSWrappable.h.
(WTR::callConstructor): Added. Gets a global constructor and calls it.

  • TestRunnerShared/Bindings/JSBasics.h: Added. Declares the above functions.
  • TestRunnerShared/Bindings/JSWrappable.h:

(WTR::JSValueMakeBooleanOrNull): Deleted.
(WTR::JSValueToNullableBoolean): Deleted.
(WTR::JSValueMakeStringOrNull): Deleted.
(WTR::createJSString): Deleted.
(WTR::makeValue): Deleted.
(WTR::objectProperty): Deleted.
(WTR::call): Deleted.
(WTR::hasRefTestWaitAttribute): Deleted.

  • TestRunnerShared/Bindings/JSWrapper.h: Updated includes.
  • TestRunnerShared/ReftestFunctions.cpp: Added.

(WTR::sendTestRenderedEvent): Added. Creates and dispatches a TestRendered event.
(WTR::hasReftestWaitAttribute): Moved from JSWrappable.h and renamed to use a
lowercase T since that's how web-platform-tests names things.

  • TestRunnerShared/ReftestFunctions.h: Added. Declares the above functions.
  • WebKitTestRunner/CMakeLists.txt: Added the new files and directories.
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::frameDidChangeLocation): Call sendTestRenderedEvent
before calling dumpAfterWaitAttributeIsRemoved.

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerMac.mm: Added a

missing include of "config.h" to fix build failures I was seeing. An alternative,
since this is a Cocoa-only source file, would be to put config.h into a
precompiled prefix header.

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerRangeMac.mm: Ditto.
  • WebKitTestRunner/PlatformWin.cmake: Temporarily disable precompiled headers

on WinCairo since they were not working properly with JSBasics.cpp.

  • WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Added the new

files and directories.

LayoutTests:

  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:

Unskip two tests that no longer time out since we are sending this event.

  • platform/win/TestExpectations:

Add a failure expectation for a test that has a couple non-green pixels.

Location:
trunk
Files:
18 edited
4 copied

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r266984 r266988  
     12020-09-12  Darin Adler  <darin@apple.com>
     2
     3        Send TestRendered event after running a test but before dumping
     4        https://bugs.webkit.org/show_bug.cgi?id=216428
     5
     6        Reviewed by Sam Weinig.
     7
     8        * platform/gtk/TestExpectations:
     9        * platform/mac/TestExpectations:
     10        Unskip two tests that no longer time out since we are sending this event.
     11
     12        * platform/win/TestExpectations:
     13        Add a failure expectation for a test that has a couple non-green pixels.
     14
    1152020-09-12  Darin Adler  <darin@apple.com>
    216
  • trunk/LayoutTests/platform/gtk/TestExpectations

    r266984 r266988  
    5858webkit.org/b/186045 imported/w3c/web-platform-tests/css/css-ui/text-overflow-017.html [ Timeout ]
    5959webkit.org/b/186045 imported/w3c/web-platform-tests/css/css-values/vh_not_refreshing_on_chrome.html [ Timeout ]
    60 webkit.org/b/186045 imported/w3c/web-platform-tests/html/semantics/forms/the-option-element/dynamic-content-change-rendering.html [ Timeout ]
    61 webkit.org/b/186045 imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/reset-algorithm-rendering.html [ Timeout ]
    62 
    6360
    6461# ResourceLoading
  • trunk/LayoutTests/platform/mac/TestExpectations

    r266955 r266988  
    21982198webkit.org/b/186045 imported/w3c/web-platform-tests/css/css-values/vh_not_refreshing_on_chrome.html [ Skip ]
    21992199webkit.org/b/186045 imported/w3c/web-platform-tests/html/rendering/replaced-elements/embedded-content/cross-domain-iframe.sub.html [ Skip ]
    2200 webkit.org/b/186045 imported/w3c/web-platform-tests/html/semantics/forms/the-option-element/dynamic-content-change-rendering.html [ Skip ]
    2201 webkit.org/b/186045 imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/reset-algorithm-rendering.html [ Skip ]
    22022200
    22032201#<rdar://63026283> [ macOS iOS ] media/modern-media-controls/playback-support/playback-support-autoplay.html is a flaky failure/timeout
  • trunk/LayoutTests/platform/win/TestExpectations

    r266978 r266988  
    45364536
    45374537webkit.org/b/215636 fast/text/emoji-gender-2-3.html [ ImageOnlyFailure ]
    4538 webkit.org/b/215636  fast/text/emoji-gender-2-4.html [ ImageOnlyFailure ]
    4539 webkit.org/b/215636  fast/text/emoji-gender-2-5.html [ ImageOnlyFailure ]
    4540 webkit.org/b/215636  fast/text/emoji-gender-2-6.html [ ImageOnlyFailure ]
    4541 webkit.org/b/215636  fast/text/emoji-gender-2-7.html [ ImageOnlyFailure ]
    4542 webkit.org/b/215636  fast/text/emoji-gender-2-8.html [ ImageOnlyFailure ]
    4543 webkit.org/b/215636  fast/text/emoji-gender-2-9.html [ ImageOnlyFailure ]
    4544 
    4545 webkit.org/b/215636  fast/text/emoji-gender-fe0f-3.html [ ImageOnlyFailure ]
    4546 webkit.org/b/215636  fast/text/emoji-gender-fe0f-4.html [ ImageOnlyFailure ]
    4547 webkit.org/b/215636  fast/text/emoji-gender-fe0f-5.html [ ImageOnlyFailure ]
    4548 webkit.org/b/215636  fast/text/emoji-gender-fe0f-6.html [ ImageOnlyFailure ]
    4549 webkit.org/b/215636  fast/text/emoji-gender-fe0f-7.html [ ImageOnlyFailure ]
    4550 webkit.org/b/215636  fast/text/emoji-gender-fe0f-8.html [ ImageOnlyFailure ]
    4551 webkit.org/b/215636  fast/text/emoji-gender-fe0f-9.html [ ImageOnlyFailure ]
    4552 webkit.org/b/215636  fast/text/emoji-gender.html [ ImageOnlyFailure ]
     4538webkit.org/b/215636 fast/text/emoji-gender-2-4.html [ ImageOnlyFailure ]
     4539webkit.org/b/215636 fast/text/emoji-gender-2-5.html [ ImageOnlyFailure ]
     4540webkit.org/b/215636 fast/text/emoji-gender-2-6.html [ ImageOnlyFailure ]
     4541webkit.org/b/215636 fast/text/emoji-gender-2-7.html [ ImageOnlyFailure ]
     4542webkit.org/b/215636 fast/text/emoji-gender-2-8.html [ ImageOnlyFailure ]
     4543webkit.org/b/215636 fast/text/emoji-gender-2-9.html [ ImageOnlyFailure ]
     4544
     4545webkit.org/b/215636 fast/text/emoji-gender-fe0f-3.html [ ImageOnlyFailure ]
     4546webkit.org/b/215636 fast/text/emoji-gender-fe0f-4.html [ ImageOnlyFailure ]
     4547webkit.org/b/215636 fast/text/emoji-gender-fe0f-5.html [ ImageOnlyFailure ]
     4548webkit.org/b/215636 fast/text/emoji-gender-fe0f-6.html [ ImageOnlyFailure ]
     4549webkit.org/b/215636 fast/text/emoji-gender-fe0f-7.html [ ImageOnlyFailure ]
     4550webkit.org/b/215636 fast/text/emoji-gender-fe0f-8.html [ ImageOnlyFailure ]
     4551webkit.org/b/215636 fast/text/emoji-gender-fe0f-9.html [ ImageOnlyFailure ]
     4552webkit.org/b/215636 fast/text/emoji-gender.html [ ImageOnlyFailure ]
    45534553
    45544554webkit.org/b/215827 animations/steps-transform-rendering-updates.html [ Failure ]
     
    45674567# Emoji synthesis is only currently disabled on Cocoa platforms
    45684568fast/text/emoji-synthesis.html [ ImageOnlyFailure ]
     4569
     4570# This test is basically passing, but off by a pixel or two. Not sure this is important enough to track with a bug.
     4571webanimations/accelerated-css-animation-with-easing.html [ Pass ImageOnlyFailure ]
  • trunk/Tools/ChangeLog

    r266984 r266988  
     12020-09-12  Darin Adler  <darin@apple.com>
     2
     3        Send TestRendered event after running a test but before dumping
     4        https://bugs.webkit.org/show_bug.cgi?id=216428
     5
     6        Reviewed by Sam Weinig.
     7
     8        * DumpRenderTree/CMakeLists.txt: Added the new files and directories.
     9        * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Ditto.
     10
     11        * DumpRenderTree/PlatformWin.cmake: Temporarily disable precompiled headers
     12        on WinCairo since they were not working properly with JSBasics.cpp.
     13
     14        * DumpRenderTree/mac/FrameLoadDelegate.mm:
     15        (-[FrameLoadDelegate readyToDumpState]): Added. Calls sendTestRenderedEvent.
     16        (-[FrameLoadDelegate processWork:]): Call readyToDumpState.
     17        (-[FrameLoadDelegate webView:locationChangeDone:forDataSource:]): Ditto.
     18
     19        * DumpRenderTree/win/FrameLoadDelegate.cpp:
     20        (readyToDumpState): Added. Calls sendTestRenderedEvent.
     21        (FrameLoadDelegate::processWork): Call readyToDumpState.
     22        (FrameLoadDelegate::locationChangeDone): Ditto.
     23
     24        * TestRunnerShared/Bindings/JSBasics.cpp: Added.
     25        (WTR::JSValueMakeBooleanOrNull): Moved from JSWrappable.h.
     26        (WTR::JSValueToNullableBoolean): Ditto.
     27        (WTR::JSValueMakeStringOrNull): Ditto.
     28        (WTR::createJSString): Ditto.
     29        (WTR::makeValue): Ditto.
     30        (WTR::objectProperty): Ditto.
     31        (WTR::setProperty): Added. Sets a named property value to a boolean.
     32        (WTR::call): Moved from JSWrappable.h.
     33        (WTR::callConstructor): Added. Gets a global constructor and calls it.
     34
     35        * TestRunnerShared/Bindings/JSBasics.h: Added. Declares the above functions.
     36
     37        * TestRunnerShared/Bindings/JSWrappable.h:
     38        (WTR::JSValueMakeBooleanOrNull): Deleted.
     39        (WTR::JSValueToNullableBoolean): Deleted.
     40        (WTR::JSValueMakeStringOrNull): Deleted.
     41        (WTR::createJSString): Deleted.
     42        (WTR::makeValue): Deleted.
     43        (WTR::objectProperty): Deleted.
     44        (WTR::call): Deleted.
     45        (WTR::hasRefTestWaitAttribute): Deleted.
     46
     47        * TestRunnerShared/Bindings/JSWrapper.h: Updated includes.
     48
     49        * TestRunnerShared/ReftestFunctions.cpp: Added.
     50        (WTR::sendTestRenderedEvent): Added. Creates and dispatches a TestRendered event.
     51        (WTR::hasReftestWaitAttribute): Moved from JSWrappable.h and renamed to use a
     52        lowercase T since that's how web-platform-tests names things.
     53
     54        * TestRunnerShared/ReftestFunctions.h: Added. Declares the above functions.
     55
     56        * WebKitTestRunner/CMakeLists.txt: Added the new files and directories.
     57
     58        * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
     59        (WTR::InjectedBundlePage::frameDidChangeLocation): Call sendTestRenderedEvent
     60        before calling dumpAfterWaitAttributeIsRemoved.
     61
     62        * WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerMac.mm: Added a
     63        missing include of "config.h" to fix build failures I was seeing.  An alternative,
     64        since this is a Cocoa-only source file, would be to put config.h into a
     65        precompiled prefix header.
     66        * WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerRangeMac.mm: Ditto.
     67
     68        * WebKitTestRunner/PlatformWin.cmake: Temporarily disable precompiled headers
     69        on WinCairo since they were not working properly with JSBasics.cpp.
     70
     71        * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Added the new
     72        files and directories.
     73
    1742020-09-12  Darin Adler  <darin@apple.com>
    275
  • trunk/Tools/DumpRenderTree/CMakeLists.txt

    r263979 r266988  
    77
    88set(DumpRenderTree_SOURCES
     9    ${WebKitTestRunner_SHARED_DIR}/ReftestFunctions.cpp
     10    ${WebKitTestRunner_SHARED_DIR}/Bindings/JSBasics.cpp
    911    ${WebKitTestRunner_SHARED_DIR}/Bindings/JSWrapper.cpp
    1012
     
    3537    ${DumpRenderTree_DERIVED_SOURCES_DIR}
    3638    ${DumpRenderTree_DIR}
     39    ${WebKitTestRunner_SHARED_DIR}
    3740    ${WebKitTestRunner_SHARED_DIR}/Bindings
    3841    ${WebKitTestRunner_UISCRIPTCONTEXT_DIR}
  • trunk/Tools/DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj

    r265271 r266988  
    112112                80045AEE147718E7008290A8 /* AccessibilityNotificationHandler.mm in Sources */ = {isa = PBXBuildFile; fileRef = 80045AEC147718E7008290A8 /* AccessibilityNotificationHandler.mm */; };
    113113                8465E2C70FFA8DF2003B8342 /* PixelDumpSupport.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8465E2C60FFA8DF2003B8342 /* PixelDumpSupport.cpp */; };
     114                93C78826250C6D3A00C0AA24 /* ReftestFunctions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93C78824250C6D3900C0AA24 /* ReftestFunctions.cpp */; };
     115                93C7882E250C717200C0AA24 /* JSBasics.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93C78829250C713400C0AA24 /* JSBasics.cpp */; };
    114116                9830F31F15C81181005AB206 /* DumpRenderTreeCommon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9830F31E15C81181005AB206 /* DumpRenderTreeCommon.cpp */; };
    115117                A1158D581892740C0088C17B /* DumpRenderTreeBrowserView.mm in Sources */ = {isa = PBXBuildFile; fileRef = A1158D56189273EB0088C17B /* DumpRenderTreeBrowserView.mm */; };
     
    335337                9335435F03D75502008635CE /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = WebKit.framework; sourceTree = BUILT_PRODUCTS_DIR; };
    336338                9340995408540CAF007F3BC8 /* DumpRenderTree */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = DumpRenderTree; sourceTree = BUILT_PRODUCTS_DIR; };
     339                93C78824250C6D3900C0AA24 /* ReftestFunctions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ReftestFunctions.cpp; sourceTree = "<group>"; };
     340                93C78825250C6D3900C0AA24 /* ReftestFunctions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ReftestFunctions.h; sourceTree = "<group>"; };
     341                93C78829250C713400C0AA24 /* JSBasics.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = JSBasics.cpp; sourceTree = "<group>"; };
     342                93C7882B250C713400C0AA24 /* JSBasics.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = JSBasics.h; sourceTree = "<group>"; };
    337343                9830F31E15C81181005AB206 /* DumpRenderTreeCommon.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DumpRenderTreeCommon.cpp; sourceTree = "<group>"; };
    338344                A1103B5B1892498F00738C87 /* LayoutTestHelper.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = LayoutTestHelper.xcconfig; path = mac/Configurations/LayoutTestHelper.xcconfig; sourceTree = "<group>"; };
     
    720726                        isa = PBXGroup;
    721727                        children = (
     728                                93C78828250C713400C0AA24 /* Bindings */,
    722729                                F4B6C31820E84382008AC225 /* cocoa */,
    723730                                F4FED31623581EF3003C139C /* mac */,
     
    725732                                3148A0551E6F90F400D3B316 /* IOSLayoutTestCommunication.cpp */,
    726733                                3148A0561E6F90F400D3B316 /* IOSLayoutTestCommunication.h */,
     734                                93C78824250C6D3900C0AA24 /* ReftestFunctions.cpp */,
     735                                93C78825250C6D3900C0AA24 /* ReftestFunctions.h */,
    727736                        );
    728737                        name = TestRunnerShared;
     
    767776                        );
    768777                        name = Resources;
     778                        sourceTree = "<group>";
     779                };
     780                93C78828250C713400C0AA24 /* Bindings */ = {
     781                        isa = PBXGroup;
     782                        children = (
     783                                93C78829250C713400C0AA24 /* JSBasics.cpp */,
     784                                93C7882B250C713400C0AA24 /* JSBasics.h */,
     785                        );
     786                        path = Bindings;
    769787                        sourceTree = "<group>";
    770788                };
     
    12161234                                312943F91E71F2B4001EE2CC /* IOSLayoutTestCommunication.cpp in Sources */,
    12171235                                2CE88FA217124D8C00734FC0 /* JavaScriptThreading.cpp in Sources */,
     1236                                93C7882E250C717200C0AA24 /* JSBasics.cpp in Sources */,
    12181237                                0F18E7061D6BA0230027E547 /* JSUIScriptController.cpp in Sources */,
    12191238                                0F18E7131D6BC43A0027E547 /* JSWrapper.cpp in Sources */,
     
    12321251                                BCA18B660C9B08C200114369 /* PolicyDelegate.mm in Sources */,
    12331252                                F4010B7B24DA201F00A876E2 /* PoseAsClass.mm in Sources */,
     1253                                93C78826250C6D3A00C0AA24 /* ReftestFunctions.cpp in Sources */,
    12341254                                BCA18B680C9B08C200114369 /* ResourceLoadDelegate.mm in Sources */,
    12351255                                A30A21F82051D8C40008FF42 /* TestOptions.cpp in Sources */,
  • trunk/Tools/DumpRenderTree/PlatformWin.cmake

    r263759 r266988  
    7373endif ()
    7474
    75 WEBKIT_ADD_PRECOMPILED_HEADER("DumpRenderTreePrefix.h" "win/DumpRenderTreePrefix.cpp" DumpRenderTree_SOURCES)
     75if (NOT WTF_PLATFORM_WIN_CAIRO)
     76    WEBKIT_ADD_PRECOMPILED_HEADER("DumpRenderTreePrefix.h" "win/DumpRenderTreePrefix.cpp" DumpRenderTree_SOURCES)
     77endif ()
    7678set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${MSVC_RUNTIME_LINKER_FLAGS}")
    7779
  • trunk/Tools/DumpRenderTree/mac/FrameLoadDelegate.mm

    r266817 r266988  
    3939#import "ObjCPlugin.h"
    4040#import "ObjCPluginFunction.h"
     41#import "ReftestFunctions.h"
    4142#import "TestRunner.h"
    4243#import "TextInputController.h"
     
    142143    WebThreadLock();
    143144#endif
    144 
    145     if (WTR::hasRefTestWaitAttribute(mainFrame.globalContext))
     145    if (WTR::hasReftestWaitAttribute(mainFrame.globalContext))
    146146        [self performSelector:@selector(dumpAfterWaitAttributeIsRemoved:) withObject:nil afterDelay:0];
    147147    else
     
    149149}
    150150
    151 // Exec messages in the work queue until they're all done, or one of them starts a new load
     151- (void)readyToDumpState
     152{
     153#if PLATFORM(IOS_FAMILY)
     154    WebThreadLock();
     155#endif
     156    WTR::sendTestRenderedEvent(mainFrame.globalContext);
     157    [self dumpAfterWaitAttributeIsRemoved:nil];
     158}
     159
     160// Execute messages in the work queue until they're all done, or one of them starts a new load.
    152161- (void)processWork:(id)dummy
    153162{
     
    159168    WebThreadLock();
    160169#endif
    161 
    162     // if we finish all the commands, we're ready to dump state
     170    // If we finish all the commands, we're ready to dump state.
    163171    if (DRT::WorkQueue::singleton().processWork() && !gTestRunner->waitToDump())
    164         [self dumpAfterWaitAttributeIsRemoved:nil];
     172        [self readyToDumpState];
    165173}
    166174
     
    180188                [self performSelector:@selector(processWork:) withObject:nil afterDelay:0];
    181189            else
    182                 [self dumpAfterWaitAttributeIsRemoved:nil];
     190                [self readyToDumpState];
    183191        }
    184192    }
  • trunk/Tools/DumpRenderTree/win/FrameLoadDelegate.cpp

    r266817 r266988  
    3737#include "GCController.h"
    3838#include "JSWrapper.h"
     39#include "ReftestFunctions.h"
    3940#include "TestRunner.h"
    4041#include "TextInputController.h"
     
    192193{
    193194    static UINT_PTR timerID;
    194     if (frame && WTR::hasRefTestWaitAttribute(frame->globalContext())) {
     195    if (frame && WTR::hasReftestWaitAttribute(frame->globalContext())) {
    195196        if (!timerID)
    196197            timerID = ::SetTimer(nullptr, 0, 0, dumpAfterWaitAttributeIsRemoved);
     
    204205}
    205206
     207static void readyToDumpState()
     208{
     209    if (frame)
     210        WTR::sendTestRenderedEvent(frame->globalContext());
     211    dumpAfterWaitAttributeIsRemoved();
     212}
     213
    206214void FrameLoadDelegate::processWork()
    207215{
     
    212220    // if we finish all the commands, we're ready to dump state
    213221    if (DRT::WorkQueue::singleton().processWork() && !::gTestRunner->waitToDump())
    214         dumpAfterWaitAttributeIsRemoved();
     222        readyToDumpState();
    215223}
    216224
     
    261269    }
    262270
    263     dumpAfterWaitAttributeIsRemoved();
     271    readyToDumpState();
    264272}
    265273
  • trunk/Tools/TestRunnerShared/Bindings/JSBasics.cpp

    r266987 r266988  
    11/*
    2  * Copyright (C) 2010 Apple Inc. All rights reserved.
     2 * Copyright (C) 2020 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    2424 */
    2525
    26 #pragma once
    27 
    28 #include <JavaScriptCore/JSRetainPtr.h>
    29 #include <JavaScriptCore/JavaScript.h>
    30 #include <initializer_list>
    31 #include <wtf/Optional.h>
    32 #include <wtf/RefCounted.h>
     26#include "config.h"
     27#include "JSBasics.h"
    3328
    3429namespace WTR {
    3530
    36 class JSWrappable : public RefCounted<JSWrappable> {
    37 public:
    38     virtual ~JSWrappable() { }
    39     virtual JSClassRef wrapperClass() = 0;
    40 };
    41 
    42 inline JSValueRef JSValueMakeBooleanOrNull(JSContextRef context, Optional<bool> value)
     31JSValueRef JSValueMakeBooleanOrNull(JSContextRef context, Optional<bool> value)
    4332{
    4433    return value ? JSValueMakeBoolean(context, value.value()) : JSValueMakeNull(context);
    4534}
    4635
    47 inline Optional<bool> JSValueToNullableBoolean(JSContextRef context, JSValueRef value)
     36Optional<bool> JSValueToNullableBoolean(JSContextRef context, JSValueRef value)
    4837{
    4938    return JSValueIsUndefined(context, value) || JSValueIsNull(context, value) ? WTF::nullopt : Optional<bool>(JSValueToBoolean(context, value));
    5039}
    5140
    52 inline JSValueRef JSValueMakeStringOrNull(JSContextRef context, JSStringRef stringOrNull)
     41JSValueRef JSValueMakeStringOrNull(JSContextRef context, JSStringRef stringOrNull)
    5342{
    5443    return stringOrNull ? JSValueMakeString(context, stringOrNull) : JSValueMakeNull(context);
    5544}
    5645
    57 inline JSRetainPtr<JSStringRef> createJSString(const char* string)
     46JSRetainPtr<JSStringRef> createJSString(const char* string)
    5847{
    5948    return adopt(JSStringCreateWithUTF8CString(string));
    6049}
    6150
    62 inline JSValueRef makeValue(JSContextRef context, const char* string)
     51JSValueRef makeValue(JSContextRef context, const char* string)
    6352{
    6453    return JSValueMakeString(context, createJSString(string).get());
    6554}
    6655
    67 inline JSObjectRef objectProperty(JSContextRef context, JSObjectRef object, const char* name)
     56JSObjectRef objectProperty(JSContextRef context, JSObjectRef object, const char* name)
    6857{
    6958    if (!object)
     
    7564}
    7665
    77 inline JSObjectRef objectProperty(JSContextRef context, JSObjectRef object, std::initializer_list<const char*> names)
     66JSObjectRef objectProperty(JSContextRef context, JSObjectRef object, std::initializer_list<const char*> names)
    7867{
    7968    for (auto name : names)
     
    8271}
    8372
    84 inline JSValueRef call(JSContextRef context, JSObjectRef object, const char* name, std::initializer_list<JSValueRef> arguments)
     73void setProperty(JSContextRef context, JSObjectRef object, const char* name, bool value)
     74{
     75    JSObjectSetProperty(context, object, createJSString(name).get(), JSValueMakeBoolean(context, value), kJSPropertyAttributeNone, nullptr);
     76}
     77
     78JSValueRef call(JSContextRef context, JSObjectRef object, const char* name, std::initializer_list<JSValueRef> arguments)
    8579{
    8680    if (!object)
     
    9286}
    9387
    94 // FIXME: Move this somewhere better. We want to share it, so it belongs in TestRunnerShared, but not as part of JSWrappable.
    95 inline bool hasRefTestWaitAttribute(JSContextRef context)
     88JSObjectRef callConstructor(JSGlobalContextRef context, const char* name, std::initializer_list<JSValueRef> arguments)
    9689{
    97     if (!context)
    98         return false;
    99     auto classList = objectProperty(context, JSContextGetGlobalObject(context), { "document", "documentElement", "classList" });
    100     return JSValueToBoolean(context, call(context, classList, "contains", { makeValue(context, "reftest-wait") }));
     90    auto constructor = objectProperty(context, JSContextGetGlobalObject(context), { name });
     91    if (!constructor)
     92        return nullptr;
     93    return JSObjectCallAsConstructor(context, constructor, arguments.size(), arguments.begin(), nullptr);
    10194}
    10295
  • trunk/Tools/TestRunnerShared/Bindings/JSBasics.h

    r266987 r266988  
    11/*
    2  * Copyright (C) 2010 Apple Inc. All rights reserved.
     2 * Copyright (C) 2020 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    2626#pragma once
    2727
    28 #include "JSWrappable.h"
     28#include <JavaScriptCore/JSRetainPtr.h>
     29#include <JavaScriptCore/JavaScript.h>
     30#include <initializer_list>
     31#include <wtf/Optional.h>
    2932
    3033namespace WTR {
    3134
    32 // FIXME: If necessary, we can do wrapper caching here.
    33 class JSWrapper {
    34 public:
    35     static JSValueRef wrap(JSContextRef, JSWrappable*);
    36     static JSWrappable* unwrap(JSContextRef, JSValueRef);
     35JSValueRef JSValueMakeBooleanOrNull(JSContextRef, Optional<bool>);
     36Optional<bool> JSValueToNullableBoolean(JSContextRef, JSValueRef);
    3737
    38     static void initialize(JSContextRef, JSObjectRef);
    39     static void finalize(JSObjectRef);
    40 };
     38JSValueRef JSValueMakeStringOrNull(JSContextRef, JSStringRef);
    4139
    42 inline JSValueRef toJS(JSContextRef context, JSWrappable* impl)
    43 {
    44     return JSWrapper::wrap(context, impl);
    45 }
    46 
    47 inline void setProperty(JSContextRef context, JSObjectRef object, const char* propertyName, JSWrappable* value, JSPropertyAttributes attributes, JSValueRef* exception)
    48 {
    49     JSObjectSetProperty(context, object, createJSString(propertyName).get(), JSWrapper::wrap(context, value), attributes, exception);
    50 }
     40JSRetainPtr<JSStringRef> createJSString(const char*);
     41JSValueRef makeValue(JSContextRef, const char*);
     42JSObjectRef objectProperty(JSContextRef, JSObjectRef, const char* name);
     43JSObjectRef objectProperty(JSContextRef, JSObjectRef, std::initializer_list<const char*> names);
     44void setProperty(JSContextRef, JSObjectRef, const char* name, bool value);
     45JSValueRef call(JSContextRef, JSObjectRef, const char* name, std::initializer_list<JSValueRef> arguments);
     46JSObjectRef callConstructor(JSGlobalContextRef, const char* name, std::initializer_list<JSValueRef> arguments);
    5147
    5248} // namespace WTR
  • trunk/Tools/TestRunnerShared/Bindings/JSWrappable.h

    r266817 r266988  
    11/*
    2  * Copyright (C) 2010 Apple Inc. All rights reserved.
     2 * Copyright (C) 2010-2020 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    2626#pragma once
    2727
    28 #include <JavaScriptCore/JSRetainPtr.h>
    2928#include <JavaScriptCore/JavaScript.h>
    30 #include <initializer_list>
    31 #include <wtf/Optional.h>
    3229#include <wtf/RefCounted.h>
    3330
     
    4037};
    4138
    42 inline JSValueRef JSValueMakeBooleanOrNull(JSContextRef context, Optional<bool> value)
    43 {
    44     return value ? JSValueMakeBoolean(context, value.value()) : JSValueMakeNull(context);
    45 }
    46 
    47 inline Optional<bool> JSValueToNullableBoolean(JSContextRef context, JSValueRef value)
    48 {
    49     return JSValueIsUndefined(context, value) || JSValueIsNull(context, value) ? WTF::nullopt : Optional<bool>(JSValueToBoolean(context, value));
    50 }
    51 
    52 inline JSValueRef JSValueMakeStringOrNull(JSContextRef context, JSStringRef stringOrNull)
    53 {
    54     return stringOrNull ? JSValueMakeString(context, stringOrNull) : JSValueMakeNull(context);
    55 }
    56 
    57 inline JSRetainPtr<JSStringRef> createJSString(const char* string)
    58 {
    59     return adopt(JSStringCreateWithUTF8CString(string));
    60 }
    61 
    62 inline JSValueRef makeValue(JSContextRef context, const char* string)
    63 {
    64     return JSValueMakeString(context, createJSString(string).get());
    65 }
    66 
    67 inline JSObjectRef objectProperty(JSContextRef context, JSObjectRef object, const char* name)
    68 {
    69     if (!object)
    70         return nullptr;
    71     auto value = JSObjectGetProperty(context, object, createJSString(name).get(), nullptr);
    72     if (!JSValueIsObject(context, value))
    73         return nullptr;
    74     return const_cast<JSObjectRef>(value);
    75 }
    76 
    77 inline JSObjectRef objectProperty(JSContextRef context, JSObjectRef object, std::initializer_list<const char*> names)
    78 {
    79     for (auto name : names)
    80         object = objectProperty(context, object, name);
    81     return object;
    82 }
    83 
    84 inline JSValueRef call(JSContextRef context, JSObjectRef object, const char* name, std::initializer_list<JSValueRef> arguments)
    85 {
    86     if (!object)
    87         return nullptr;
    88     auto function = objectProperty(context, object, name);
    89     if (!function)
    90         return nullptr;
    91     return JSObjectCallAsFunction(context, function, object, arguments.size(), arguments.begin(), nullptr);
    92 }
    93 
    94 // FIXME: Move this somewhere better. We want to share it, so it belongs in TestRunnerShared, but not as part of JSWrappable.
    95 inline bool hasRefTestWaitAttribute(JSContextRef context)
    96 {
    97     if (!context)
    98         return false;
    99     auto classList = objectProperty(context, JSContextGetGlobalObject(context), { "document", "documentElement", "classList" });
    100     return JSValueToBoolean(context, call(context, classList, "contains", { makeValue(context, "reftest-wait") }));
    101 }
    102 
    10339} // namespace WTR
  • trunk/Tools/TestRunnerShared/Bindings/JSWrapper.h

    r266817 r266988  
    2626#pragma once
    2727
     28#include "JSBasics.h"
    2829#include "JSWrappable.h"
    2930
  • trunk/Tools/TestRunnerShared/ReftestFunctions.cpp

    r266987 r266988  
    11/*
    2  * Copyright (C) 2010 Apple Inc. All rights reserved.
     2 * Copyright (C) 2020 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    2424 */
    2525
    26 #pragma once
     26#include "config.h"
     27#include "ReftestFunctions.h"
    2728
    28 #include "JSWrappable.h"
     29#include "JSBasics.h"
    2930
    3031namespace WTR {
    3132
    32 // FIXME: If necessary, we can do wrapper caching here.
    33 class JSWrapper {
    34 public:
    35     static JSValueRef wrap(JSContextRef, JSWrappable*);
    36     static JSWrappable* unwrap(JSContextRef, JSValueRef);
    37 
    38     static void initialize(JSContextRef, JSObjectRef);
    39     static void finalize(JSObjectRef);
    40 };
    41 
    42 inline JSValueRef toJS(JSContextRef context, JSWrappable* impl)
     33void sendTestRenderedEvent(JSGlobalContextRef context)
    4334{
    44     return JSWrapper::wrap(context, impl);
     35    if (!context)
     36        return;
     37    auto initializer = JSObjectMake(context, nullptr, nullptr);
     38    setProperty(context, initializer, "bubbles", true);
     39    auto event = callConstructor(context, "Event", { makeValue(context, "TestRendered"), initializer });
     40    auto documentElement = objectProperty(context, JSContextGetGlobalObject(context), { "document", "documentElement" });
     41    call(context, documentElement, "dispatchEvent", { event });
    4542}
    4643
    47 inline void setProperty(JSContextRef context, JSObjectRef object, const char* propertyName, JSWrappable* value, JSPropertyAttributes attributes, JSValueRef* exception)
     44bool hasReftestWaitAttribute(JSGlobalContextRef context)
    4845{
    49     JSObjectSetProperty(context, object, createJSString(propertyName).get(), JSWrapper::wrap(context, value), attributes, exception);
     46    if (!context)
     47        return false;
     48    auto classList = objectProperty(context, JSContextGetGlobalObject(context), { "document", "documentElement", "classList" });
     49    return JSValueToBoolean(context, call(context, classList, "contains", { makeValue(context, "reftest-wait") }));
    5050}
    5151
    52 } // namespace WTR
     52}
  • trunk/Tools/TestRunnerShared/ReftestFunctions.h

    r266987 r266988  
    11/*
    2  * Copyright (C) 2010 Apple Inc. All rights reserved.
     2 * Copyright (C) 2020 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    2626#pragma once
    2727
    28 #include "JSWrappable.h"
     28typedef struct OpaqueJSContext* JSGlobalContextRef;
    2929
    3030namespace WTR {
    3131
    32 // FIXME: If necessary, we can do wrapper caching here.
    33 class JSWrapper {
    34 public:
    35     static JSValueRef wrap(JSContextRef, JSWrappable*);
    36     static JSWrappable* unwrap(JSContextRef, JSValueRef);
     32void sendTestRenderedEvent(JSGlobalContextRef);
     33bool hasReftestWaitAttribute(JSGlobalContextRef);
    3734
    38     static void initialize(JSContextRef, JSObjectRef);
    39     static void finalize(JSObjectRef);
    40 };
    41 
    42 inline JSValueRef toJS(JSContextRef context, JSWrappable* impl)
    43 {
    44     return JSWrapper::wrap(context, impl);
    4535}
    46 
    47 inline void setProperty(JSContextRef context, JSObjectRef object, const char* propertyName, JSWrappable* value, JSPropertyAttributes attributes, JSValueRef* exception)
    48 {
    49     JSObjectSetProperty(context, object, createJSString(propertyName).get(), JSWrapper::wrap(context, value), attributes, exception);
    50 }
    51 
    52 } // namespace WTR
  • trunk/Tools/WebKitTestRunner/CMakeLists.txt

    r263979 r266988  
    88
    99set(WebKitTestRunner_SOURCES
     10    ${WebKitTestRunner_BINDINGS_DIR}/JSBasics.cpp
    1011    ${WebKitTestRunner_BINDINGS_DIR}/JSWrapper.cpp
    1112
     
    4849
    4950set(WebKitTestRunnerInjectedBundle_SOURCES
     51    ${WebKitTestRunner_SHARED_DIR}/ReftestFunctions.cpp
     52
     53    ${WebKitTestRunner_BINDINGS_DIR}/JSBasics.cpp
    5054    ${WebKitTestRunner_BINDINGS_DIR}/JSWrapper.cpp
    5155
     
    6569set(WebKitTestRunnerInjectedBundle_INCLUDE_DIRECTORIES
    6670    ${CMAKE_BINARY_DIR}
     71    ${WebKitTestRunner_SHARED_DIR}
    6772    ${WebKitTestRunner_BINDINGS_DIR}
    6873    ${WebKitTestRunner_DERIVED_SOURCES_DIR}/InjectedBundle
  • trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp

    r266984 r266988  
    11/*
    2  * Copyright (C) 2010-2016 Apple Inc. All rights reserved.
     2 * Copyright (C) 2010-2020 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    2929#include "ActivateFonts.h"
    3030#include "InjectedBundle.h"
     31#include "ReftestFunctions.h"
    3132#include "StringFunctions.h"
    3233#include "WebCoreTestSupport.h"
     
    19561957#endif
    19571958
    1958 static bool hasRefTestWaitAttribute(WKBundlePageRef page)
     1959static bool hasReftestWaitAttribute(WKBundlePageRef page)
    19591960{
    19601961    auto frame = WKBundlePageGetMainFrame(page);
    1961     return frame && hasRefTestWaitAttribute(WKBundleFrameGetJavaScriptContext(frame));
     1962    return frame && hasReftestWaitAttribute(WKBundleFrameGetJavaScriptContext(frame));
    19621963}
    19631964
    19641965static void dumpAfterWaitAttributeIsRemoved(WKBundlePageRef page)
    19651966{
    1966     if (hasRefTestWaitAttribute(page)) {
     1967    if (hasReftestWaitAttribute(page)) {
    19671968        WKRetain(page);
    19681969        // Use a 1ms interval between tries to allow lower priority run loop sources with zero delays to run.
     
    20052006    }
    20062007
     2008    if (auto frame = WKBundlePageGetMainFrame(page->page()))
     2009        sendTestRenderedEvent(WKBundleFrameGetJavaScriptContext(frame));
    20072010    dumpAfterWaitAttributeIsRemoved(page->page());
    20082011}
  • trunk/Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerMac.mm

    r259843 r266988  
    2424 */
    2525
     26#import "config.h"
    2627#import "AccessibilityTextMarker.h"
    2728
  • trunk/Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerRangeMac.mm

    r232452 r266988  
    2424 */
    2525
     26#import "config.h"
    2627#import "AccessibilityTextMarkerRange.h"
    2728
  • trunk/Tools/WebKitTestRunner/PlatformWin.cmake

    r260539 r266988  
    4040# header, and add it back to work around this.
    4141list(REMOVE_ITEM WebKitTestRunner_SOURCES ${WebKitTestRunner_BINDINGS_DIR}/JSWrapper.cpp)
    42 WEBKIT_ADD_PRECOMPILED_HEADER("WebKitTestRunnerPrefix.h" "win/WebKitTestRunnerPrefix.cpp" WebKitTestRunner_SOURCES)
     42if (NOT WTF_PLATFORM_WIN_CAIRO)
     43    WEBKIT_ADD_PRECOMPILED_HEADER("WebKitTestRunnerPrefix.h" "win/WebKitTestRunnerPrefix.cpp" WebKitTestRunner_SOURCES)
     44endif ()
    4345list(APPEND WebKitTestRunner_SOURCES ${WebKitTestRunner_BINDINGS_DIR}/JSWrapper.cpp)
    4446
  • trunk/Tools/WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj

    r266342 r266988  
    123123                8097338A14874A5A008156D9 /* AccessibilityNotificationHandler.mm in Sources */ = {isa = PBXBuildFile; fileRef = 8097338914874A5A008156D9 /* AccessibilityNotificationHandler.mm */; };
    124124                9376417A210D737200A3DAAE /* WebKitTestRunnerWindow.mm in Sources */ = {isa = PBXBuildFile; fileRef = 93764176210D736000A3DAAE /* WebKitTestRunnerWindow.mm */; };
     125                93C78823250C6C2E00C0AA24 /* ReftestFunctions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93C7881F250C69E400C0AA24 /* ReftestFunctions.cpp */; };
     126                93C78831250C719F00C0AA24 /* JSBasics.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93C78830250C719900C0AA24 /* JSBasics.cpp */; };
     127                93C78832250C71B700C0AA24 /* JSBasics.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93C78830250C719900C0AA24 /* JSBasics.cpp */; };
    125128                A185103A1B9AE0DA00744AEB /* CrashReporterInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0FEB90A31905BC6A000FDBF3 /* CrashReporterInfo.mm */; };
    126129                A185103B1B9AE0E200744AEB /* TestControllerCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DCE2CD11B84524500C7F832 /* TestControllerCocoa.mm */; };
     
    353356                93764176210D736000A3DAAE /* WebKitTestRunnerWindow.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebKitTestRunnerWindow.mm; sourceTree = "<group>"; };
    354357                93764177210D736100A3DAAE /* WebKitTestRunnerWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKitTestRunnerWindow.h; sourceTree = "<group>"; };
     358                93C7881F250C69E400C0AA24 /* ReftestFunctions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ReftestFunctions.cpp; path = ../TestRunnerShared/ReftestFunctions.cpp; sourceTree = "<group>"; };
     359                93C78820250C69E400C0AA24 /* ReftestFunctions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ReftestFunctions.h; path = ../TestRunnerShared/ReftestFunctions.h; sourceTree = "<group>"; };
     360                93C7882F250C719900C0AA24 /* JSBasics.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JSBasics.h; path = ../TestRunnerShared/Bindings/JSBasics.h; sourceTree = "<group>"; };
     361                93C78830250C719900C0AA24 /* JSBasics.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = JSBasics.cpp; path = ../TestRunnerShared/Bindings/JSBasics.cpp; sourceTree = "<group>"; };
    355362                9B0D132E2036D346008FC8FB /* WebKitTestRunnerApp-iOS.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = "WebKitTestRunnerApp-iOS.entitlements"; sourceTree = "<group>"; };
    356363                9B36A270209453A0003E0651 /* WhatToDump.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WhatToDump.h; sourceTree = "<group>"; };
     
    537544                                3148A0531E6F85B600D3B316 /* IOSLayoutTestCommunication.cpp */,
    538545                                3148A0541E6F85B600D3B316 /* IOSLayoutTestCommunication.h */,
     546                                93C7881F250C69E400C0AA24 /* ReftestFunctions.cpp */,
     547                                93C78820250C69E400C0AA24 /* ReftestFunctions.h */,
    539548                        );
    540549                        name = TestRunnerShared;
     
    544553                        isa = PBXGroup;
    545554                        children = (
     555                                93C78830250C719900C0AA24 /* JSBasics.cpp */,
     556                                93C7882F250C719900C0AA24 /* JSBasics.h */,
    546557                                0F18E7141D6BC4560027E547 /* JSWrappable.h */,
    547558                                0F18E7151D6BC4560027E547 /* JSWrapper.cpp */,
     
    11851196                                F44A531821B899E500DBB99C /* InstanceMethodSwizzler.mm in Sources */,
    11861197                                31DA8A3D1E7205CC00E1DF2F /* IOSLayoutTestCommunication.cpp in Sources */,
     1198                                93C78832250C71B700C0AA24 /* JSBasics.cpp in Sources */,
    11871199                                0F73B5511BA78968004B3EF4 /* JSUIScriptController.cpp in Sources */,
    11881200                                0F18E7181D6BC4560027E547 /* JSWrapper.cpp in Sources */,
     
    12421254                                29A8FCDD145F0337009045A6 /* JSAccessibilityTextMarkerRange.cpp in Sources */,
    12431255                                29210EE1144CDB2600835BB5 /* JSAccessibilityUIElement.cpp in Sources */,
     1256                                93C78831250C719F00C0AA24 /* JSBasics.cpp in Sources */,
    12441257                                BC8FD8D2120E545B00F3E71A /* JSEventSendingController.cpp in Sources */,
    12451258                                BC14E4EA120E03D800826C0C /* JSGCController.cpp in Sources */,
     
    12471260                                5641E2D014335E95008307E5 /* JSTextInputController.cpp in Sources */,
    12481261                                0F6E89031D6BC5A2008ED0FA /* JSWrapper.cpp in Sources */,
     1262                                93C78823250C6C2E00C0AA24 /* ReftestFunctions.cpp in Sources */,
    12491263                                2E63EDA61891BDC0002A7AFC /* TestRunner.cpp in Sources */,
    12501264                                C0CE720B1247C93300BC0EC4 /* TestRunnerMac.mm in Sources */,
Note: See TracChangeset for help on using the changeset viewer.