Changeset 121398 in webkit


Ignore:
Timestamp:
Jun 27, 2012 7:17:40 PM (12 years ago)
Author:
commit-queue@webkit.org
Message:

Source/WebKit: [EFL] Add support for Unit Tests, based on the gtest library.
https://bugs.webkit.org/show_bug.cgi?id=68509

Patch by Krzysztof Czech <k.czech@samsung.com> on 2012-06-27
Reviewed by Chang Shu.

Add configuration for building gtest library, testing framework and unit tests.

  • PlatformEfl.cmake:

Source/WebKit/efl: [EFL] Implementation of testing framework and unit tests for WebKit-EFL port.
https://bugs.webkit.org/show_bug.cgi?id=68509

Patch by Krzysztof Czech <k.czech@samsung.com> on 2012-06-27
Reviewed by Chang Shu.

Testing framework is based on gtest library. Gtest library is part of the WebKit project. Framework is devided into base part and view part.
Base part takes care of efl initialization, defines test macros and prepares test to run. View part is a context of each test.

  • tests/UnitTestUtils/EWKTestBase.cpp: Added.

(EWKUnitTests):
(EWKUnitTests::EWKTestBase::init):
(EWKUnitTests::EWKTestBase::shutdown):
(EWKUnitTests::EWKTestBase::shutdownAll):
(EWKUnitTests::EWKTestBase::startTest):
(EWKUnitTests::EWKTestBase::endTest):
(EWKUnitTests::EWKTestBase::createTest):
(EWKUnitTests::EWKTestBase::runTest):

  • tests/UnitTestUtils/EWKTestBase.h: Added.

(EWKUnitTests):
(EWKTestBase):

  • tests/UnitTestUtils/EWKTestConfig.h: Added.

(Config):

  • tests/UnitTestUtils/EWKTestView.cpp: Added.

(EWKUnitTests):
(EWKUnitTests::EWKTestEcoreEvas::EWKTestEcoreEvas):
(EWKUnitTests::EWKTestEcoreEvas::evas):
(EWKUnitTests::EWKTestEcoreEvas::show):
(EWKUnitTests::EWKTestView::EWKTestView):
(EWKUnitTests::EWKTestView::init):
(EWKUnitTests::EWKTestView::show):
(EWKUnitTests::EWKTestView::mainFrame):
(EWKUnitTests::EWKTestView::evas):
(EWKUnitTests::EWKTestView::bindEvents):

  • tests/UnitTestUtils/EWKTestView.h: Added.

(EWKUnitTests):
(EWKTestEcoreEvas):
(EWKTestView):
(EWKUnitTests::EWKTestView::webView):

  • tests/resources/default_test_page.html: Added.
  • tests/test_ewk_view.cpp: Added.

(ewkViewEditableGetCb):
(TEST):
(ewkViewUriGetCb):

  • tests/test_runner.cpp: Added.

(parseCustomArguments):
(main):

Location:
trunk/Source/WebKit
Files:
11 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r121261 r121398  
     12012-06-27  Krzysztof Czech  <k.czech@samsung.com>
     2
     3        [EFL] Add support for Unit Tests, based on the gtest library.
     4        https://bugs.webkit.org/show_bug.cgi?id=68509
     5
     6        Reviewed by Chang Shu.
     7
     8        Add configuration for building gtest library, testing framework and unit tests.
     9
     10        * PlatformEfl.cmake:
     11
    1122012-06-26  Simon Hausmann  <simon.hausmann@nokia.com>
    213
  • trunk/Source/WebKit/PlatformEfl.cmake

    r121170 r121398  
    294294INSTALL(FILES ${WebKit_THEME}
    295295        DESTINATION ${DATA_INSTALL_DIR}/themes)
     296
     297INCLUDE_DIRECTORIES(${THIRDPARTY_DIR}/gtest
     298                    ${THIRDPARTY_DIR}/gtest/include
     299)
     300
     301SET(GTEST_SOURCES "${THIRDPARTY_DIR}/gtest/src")
     302
     303ADD_LIBRARY(gtest
     304    ${GTEST_SOURCES}/gtest.cc
     305    ${GTEST_SOURCES}/gtest-death-test.cc
     306    ${GTEST_SOURCES}/gtest_main.cc
     307    ${GTEST_SOURCES}/gtest-filepath.cc
     308    ${GTEST_SOURCES}/gtest-port.cc
     309    ${GTEST_SOURCES}/gtest-test-part.cc
     310    ${GTEST_SOURCES}/gtest-typed-test.cc
     311)
     312
     313SET(EWKUnitTests_LIBRARIES
     314    ${JavaScriptCore_LIBRARY_NAME}
     315    ${WebCore_LIBRARY_NAME}
     316    ${WebKit_LIBRARY_NAME}
     317    ${ECORE_LIBRARIES}
     318    ${ECORE_EVAS_LIBRARIES}
     319    ${EVAS_LIBRARIES}
     320    ${EDJE_LIBRARIES}
     321)
     322
     323SET(EWKUnitTests_INCLUDE_DIRECTORIES
     324    "${CMAKE_SOURCE_DIR}/Source"
     325    "${WEBKIT_DIR}/efl/ewk"
     326    "${WEBKIT_DIR}/efl/tests/src/UnitTestUtils"
     327    "${JAVASCRIPTCORE_DIR}"
     328    "${WTF_DIR}"
     329    "${WTF_DIR}/wtf"
     330    ${ECORE_INCLUDE_DIRS}
     331    ${ECORE_EVAS_INCLUDE_DIRS}
     332    ${EVAS_INCLUDE_DIRS}
     333    ${EDJE_INCLUDE_DIRS}
     334)
     335
     336SET(EWKUnitTests_LINK_FLAGS
     337    ${ECORE_LDFLAGS}
     338    ${ECORE_EVAS_LDFLAGS}
     339    ${EVAS_LDFLAGS}
     340    ${EDJE_LDFLAGS}
     341)
     342
     343IF (ENABLE_GLIB_SUPPORT)
     344    LIST(APPEND EWKUnitTests_INCLUDE_DIRECTORIES "${WTF_DIR}/wtf/gobject")
     345
     346    LIST(APPEND EWKUnitTests_LIBRARIES
     347        ${Gdk_LIBRARIES}
     348        ${Glib_LIBRARIES}
     349        ${Gthread_LIBRARIES}
     350    )
     351ENDIF ()
     352
     353SET(DEFAULT_TEST_PAGE_DIR ${CMAKE_SOURCE_DIR}/Source/WebKit/efl/tests/resources)
     354
     355ADD_DEFINITIONS(-DDEFAULT_TEST_PAGE_DIR=\"${DEFAULT_TEST_PAGE_DIR}\")
     356ADD_DEFINITIONS(-DDEFAULT_THEME_PATH=\"${THEME_BINARY_DIR}\")
     357
     358ADD_LIBRARY(ewkTestUtils
     359    ${WEBKIT_DIR}/efl/tests/UnitTestUtils/EWKTestBase.cpp
     360    ${WEBKIT_DIR}/efl/tests/UnitTestUtils/EWKTestView.cpp
     361)
     362
     363SET(WEBKIT_EFL_TEST_DIR "${WEBKIT_DIR}/efl/tests/")
     364
     365SET(EWKUnitTests_BINARIES
     366    test_ewk_view
     367)
     368
     369FOREACH(testName ${EWKUnitTests_BINARIES})
     370    ADD_EXECUTABLE(bin/${testName} ${WEBKIT_EFL_TEST_DIR}/${testName}.cpp ${WEBKIT_EFL_TEST_DIR}/test_runner.cpp)
     371    TARGET_LINK_LIBRARIES(bin/${testName} ${EWKUnitTests_LIBRARIES} ewkTestUtils gtest pthread)
     372    ADD_TARGET_PROPERTIES(bin/${testName} LINK_FLAGS "${EWKUnitTests_LINK_FLAGS}")
     373    SET_TARGET_PROPERTIES(bin/${testName} PROPERTIES FOLDER "WebKit")
     374    SET_TARGET_PROPERTIES(bin/${testName} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}")
     375ENDFOREACH()
  • trunk/Source/WebKit/efl/ChangeLog

    r121381 r121398  
     12012-06-27  Krzysztof Czech  <k.czech@samsung.com>
     2
     3        [EFL] Implementation of testing framework and unit tests for WebKit-EFL port.
     4        https://bugs.webkit.org/show_bug.cgi?id=68509
     5
     6        Reviewed by Chang Shu.
     7
     8        Testing framework is based on gtest library. Gtest library is part of the WebKit project. Framework is devided into base part and view part.
     9        Base part takes care of efl initialization, defines test macros and prepares test to run. View part is a context of each test.
     10
     11        * tests/UnitTestUtils/EWKTestBase.cpp: Added.
     12        (EWKUnitTests):
     13        (EWKUnitTests::EWKTestBase::init):
     14        (EWKUnitTests::EWKTestBase::shutdown):
     15        (EWKUnitTests::EWKTestBase::shutdownAll):
     16        (EWKUnitTests::EWKTestBase::startTest):
     17        (EWKUnitTests::EWKTestBase::endTest):
     18        (EWKUnitTests::EWKTestBase::createTest):
     19        (EWKUnitTests::EWKTestBase::runTest):
     20        * tests/UnitTestUtils/EWKTestBase.h: Added.
     21        (EWKUnitTests):
     22        (EWKTestBase):
     23        * tests/UnitTestUtils/EWKTestConfig.h: Added.
     24        (Config):
     25        * tests/UnitTestUtils/EWKTestView.cpp: Added.
     26        (EWKUnitTests):
     27        (EWKUnitTests::EWKTestEcoreEvas::EWKTestEcoreEvas):
     28        (EWKUnitTests::EWKTestEcoreEvas::evas):
     29        (EWKUnitTests::EWKTestEcoreEvas::show):
     30        (EWKUnitTests::EWKTestView::EWKTestView):
     31        (EWKUnitTests::EWKTestView::init):
     32        (EWKUnitTests::EWKTestView::show):
     33        (EWKUnitTests::EWKTestView::mainFrame):
     34        (EWKUnitTests::EWKTestView::evas):
     35        (EWKUnitTests::EWKTestView::bindEvents):
     36        * tests/UnitTestUtils/EWKTestView.h: Added.
     37        (EWKUnitTests):
     38        (EWKTestEcoreEvas):
     39        (EWKTestView):
     40        (EWKUnitTests::EWKTestView::webView):
     41        * tests/resources/default_test_page.html: Added.
     42        * tests/test_ewk_view.cpp: Added.
     43        (ewkViewEditableGetCb):
     44        (TEST):
     45        (ewkViewUriGetCb):
     46        * tests/test_runner.cpp: Added.
     47        (parseCustomArguments):
     48        (main):
     49
    1502012-06-25  Mark Hahnenberg  <mhahnenberg@apple.com>
    251
Note: See TracChangeset for help on using the changeset viewer.