Changeset 121608 in webkit


Ignore:
Timestamp:
Jun 29, 2012 6:20:20 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-29
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>, Tomasz Morawski <t.morawski@samsung.com> on 2012-06-29
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:
8 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r121409 r121608  
     12012-06-29  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-27  Sheriff Bot  <webkit.review.bot@gmail.com>
    213
  • trunk/Source/WebKit/PlatformEfl.cmake

    r121409 r121608  
    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    LIST(APPEND EWKUnitTests_LIBRARIES
     346        ${Glib_LIBRARIES}
     347        ${Gthread_LIBRARIES}
     348    )
     349ENDIF ()
     350
     351SET(DEFAULT_TEST_PAGE_DIR ${CMAKE_SOURCE_DIR}/Source/WebKit/efl/tests/resources)
     352
     353ADD_DEFINITIONS(-DDEFAULT_TEST_PAGE_DIR=\"${DEFAULT_TEST_PAGE_DIR}\")
     354ADD_DEFINITIONS(-DDEFAULT_THEME_PATH=\"${THEME_BINARY_DIR}\")
     355
     356ADD_LIBRARY(ewkTestUtils
     357    ${WEBKIT_DIR}/efl/tests/UnitTestUtils/EWKTestBase.cpp
     358    ${WEBKIT_DIR}/efl/tests/UnitTestUtils/EWKTestView.cpp
     359)
     360TARGET_LINK_LIBRARIES(ewkTestUtils ${EWKUnitTests_LIBRARIES})
     361
     362SET(WEBKIT_EFL_TEST_DIR "${WEBKIT_DIR}/efl/tests/")
     363
     364SET(EWKUnitTests_BINARIES
     365    test_ewk_view
     366)
     367
     368FOREACH(testName ${EWKUnitTests_BINARIES})
     369    ADD_EXECUTABLE(${testName} ${WEBKIT_EFL_TEST_DIR}/${testName}.cpp ${WEBKIT_EFL_TEST_DIR}/test_runner.cpp)
     370    TARGET_LINK_LIBRARIES(${testName} ${EWKUnitTests_LIBRARIES} ewkTestUtils gtest pthread)
     371    ADD_TARGET_PROPERTIES(${testName} LINK_FLAGS "${EWKUnitTests_LINK_FLAGS}")
     372    SET_TARGET_PROPERTIES(${testName} PROPERTIES FOLDER "WebKit")
     373ENDFOREACH()
  • trunk/Source/WebKit/efl/ChangeLog

    r121555 r121608  
     12012-06-29  Krzysztof Czech  <k.czech@samsung.com>, Tomasz Morawski <t.morawski@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-29  Konrad Piascik  <kpiascik@rim.com>
    251
Note: See TracChangeset for help on using the changeset viewer.