diff options
author | tfarina <tfarina@chromium.org> | 2015-01-07 09:22:53 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-01-07 17:23:54 +0000 |
commit | c87c3d2d949f9ba4f17627dc023b303c75b7635f (patch) | |
tree | a34eb58f9815d3410dffe7ecab2eece75f6c84c7 | |
parent | f1d3d3d3a183e054679e41718febe43c5c5f0954 (diff) | |
download | chromium_src-c87c3d2d949f9ba4f17627dc023b303c75b7635f.zip chromium_src-c87c3d2d949f9ba4f17627dc023b303c75b7635f.tar.gz chromium_src-c87c3d2d949f9ba4f17627dc023b303c75b7635f.tar.bz2 |
skia: Add 'skia_unittests' test suite for this directory.
This should be a lightweight test suite that should allow a dev changing
something in skia/ext to test it much more quickly than having to build
all 'unit_tests' target just to run the tests from skia/ext.
BUG=444058
TEST=skia_unittests links and runs fine.
R=danakj@chromium.org,thakis@chromium.org
Review URL: https://codereview.chromium.org/815023003
Cr-Commit-Position: refs/heads/master@{#310310}
-rw-r--r-- | build/all.gyp | 9 | ||||
-rw-r--r-- | chrome/chrome_tests_unit.gypi | 17 | ||||
-rw-r--r-- | skia/BUILD.gn | 46 | ||||
-rw-r--r-- | skia/ext/platform_canvas_unittest.cc | 29 | ||||
-rw-r--r-- | skia/skia_tests.gyp | 65 | ||||
-rw-r--r-- | testing/buildbot/chromium.chromiumos.json | 5 | ||||
-rw-r--r-- | testing/buildbot/chromium.fyi.json | 5 | ||||
-rw-r--r-- | testing/buildbot/chromium.linux.json | 12 | ||||
-rw-r--r-- | testing/buildbot/chromium.mac.json | 12 | ||||
-rw-r--r-- | testing/buildbot/chromium.memory.fyi.json | 2 | ||||
-rw-r--r-- | testing/buildbot/chromium.memory.json | 3 | ||||
-rw-r--r-- | testing/buildbot/chromium.webkit.json | 4 | ||||
-rw-r--r-- | testing/buildbot/chromium.win.json | 15 | ||||
-rw-r--r-- | testing/buildbot/chromium_memory_trybot.json | 1 | ||||
-rw-r--r-- | testing/buildbot/chromium_trybot.json | 1 | ||||
-rwxr-xr-x | tools/valgrind/chrome_tests.py | 4 |
16 files changed, 186 insertions, 44 deletions
diff --git a/build/all.gyp b/build/all.gyp index 04e67c3..226eada 100644 --- a/build/all.gyp +++ b/build/all.gyp @@ -311,6 +311,7 @@ '../components/components_tests.gyp:components_unittests', '../crypto/crypto.gyp:crypto_unittests', '../net/net.gyp:net_unittests', + '../skia/skia_tests.gyp:skia_unittests', '../sql/sql.gyp:sql_unittests', '../sync/sync.gyp:sync_unit_tests', '../ui/base/ui_base_tests.gyp:ui_base_unittests', @@ -839,6 +840,7 @@ '../media/media.gyp:media_unittests', '../net/net.gyp:net_unittests', '../sandbox/sandbox.gyp:sandbox_linux_unittests_deps', + '../skia/skia_tests.gyp:skia_unittests', '../sql/sql.gyp:sql_unittests', '../sync/sync.gyp:sync_unit_tests', '../testing/android/junit/junit_test.gyp:junit_unit_tests', @@ -873,6 +875,7 @@ '../media/media.gyp:media_unittests_apk', '../net/net.gyp:net_unittests_apk', '../sandbox/sandbox.gyp:sandbox_linux_jni_unittests_apk', + '../skia/skia_tests.gyp:skia_unittests_apk', '../sql/sql.gyp:sql_unittests_apk', '../sync/sync.gyp:sync_unit_tests_apk', '../tools/android/heap_profiler/heap_profiler.gyp:heap_profiler_unittests_apk', @@ -945,6 +948,7 @@ '../printing/printing.gyp:printing_unittests', '../remoting/remoting.gyp:remoting_unittests', '../rlz/rlz.gyp:*', + '../skia/skia_tests.gyp:skia_unittests', '../sql/sql.gyp:sql_unittests', '../sync/sync.gyp:sync_unit_tests', '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation_unittests', @@ -982,6 +986,7 @@ '../ppapi/ppapi_internal.gyp:ppapi_unittests', '../printing/printing.gyp:printing_unittests', '../remoting/remoting.gyp:remoting_unittests', + '../skia/skia_tests.gyp:skia_unittests', '../sql/sql.gyp:sql_unittests', '../sync/sync.gyp:sync_unit_tests', '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation_unittests', @@ -1032,6 +1037,7 @@ '../google_apis/gcm/gcm.gyp:gcm_unit_tests', '../printing/printing.gyp:printing_unittests', '../remoting/remoting.gyp:remoting_unittests', + '../skia/skia_tests.gyp:skia_unittests', '../sql/sql.gyp:sql_unittests', '../sync/sync.gyp:sync_unit_tests', '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation_unittests', @@ -1081,6 +1087,7 @@ '../ppapi/ppapi_internal.gyp:ppapi_unittests', '../printing/printing.gyp:printing_unittests', '../remoting/remoting.gyp:remoting_unittests', + '../skia/skia_tests.gyp:skia_unittests', '../sql/sql.gyp:sql_unittests', '../sync/sync.gyp:sync_unit_tests', '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation_unittests', @@ -1181,6 +1188,7 @@ '../net/net.gyp:net_unittests', '../printing/printing.gyp:printing_unittests', '../remoting/remoting.gyp:remoting_unittests', + '../skia/skia_tests.gyp:skia_unittests', '../sql/sql.gyp:sql_unittests', '../sync/sync.gyp:sync_unit_tests', '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation_unittests', @@ -1277,6 +1285,7 @@ '../google_apis/gcm/gcm.gyp:gcm_unit_tests', '../ppapi/ppapi_internal.gyp:ppapi_unittests', '../remoting/remoting.gyp:remoting_unittests', + '../skia/skia_tests.gyp:skia_unittests', '../ui/app_list/app_list.gyp:*', '../ui/aura/aura.gyp:*', '../ui/base/ui_base_tests.gyp:ui_base_unittests', diff --git a/chrome/chrome_tests_unit.gypi b/chrome/chrome_tests_unit.gypi index 80dcdb3..a216dee 100644 --- a/chrome/chrome_tests_unit.gypi +++ b/chrome/chrome_tests_unit.gypi @@ -1418,17 +1418,6 @@ '../components/search_engines/template_url_service_sync_unittest.cc', '../components/search_engines/template_url_service_unittest.cc', - '../skia/ext/analysis_canvas_unittest.cc', - '../skia/ext/bitmap_platform_device_mac_unittest.cc', - '../skia/ext/convolver_unittest.cc', - '../skia/ext/image_operations_unittest.cc', - '../skia/ext/pixel_ref_utils_unittest.cc', - '../skia/ext/platform_canvas_unittest.cc', - '../skia/ext/recursive_gaussian_convolution_unittest.cc', - '../skia/ext/refptr_unittest.cc', - '../skia/ext/skia_utils_ios_unittest.mm', - '../skia/ext/skia_utils_mac_unittest.mm', - '../skia/ext/vector_canvas_unittest.cc', '../testing/gtest_mac_unittest.mm', '../third_party/zlib/google/zip_reader_unittest.cc', '../third_party/zlib/google/zip_unittest.cc', @@ -2478,11 +2467,6 @@ 'tools/convert_dict/convert_dict.gyp:convert_dict_lib', ], }], - ['OS!="win" and OS!="mac"', { - 'sources!': [ - '../skia/ext/platform_canvas_unittest.cc', - ], - }], ['OS=="win" or OS=="mac"', { 'sources': [ 'browser/media_galleries/fileapi/itunes_file_util_unittest.cc', @@ -2561,7 +2545,6 @@ 'browser/search_engines/template_url_scraper_unittest.cc', 'browser/ui/views/extensions/browser_action_drag_data_unittest.cc', 'test/data/resource.rc', - '../skia/ext/vector_canvas_unittest.cc', ], }], ['OS=="android" or OS=="ios"', { diff --git a/skia/BUILD.gn b/skia/BUILD.gn index b2e703b..eb54593 100644 --- a/skia/BUILD.gn +++ b/skia/BUILD.gn @@ -7,6 +7,9 @@ import("//build/config/ui.gni") if (cpu_arch == "arm") { import("//build/config/arm.gni") } +if (is_android) { + import("//build/config/android/rules.gni") +} skia_support_gpu = !is_ios skia_support_pdf = !is_ios && (enable_basic_printing || enable_print_preview) @@ -710,3 +713,46 @@ source_set("skia_opts") { visibility = [ ":skia" ] } + +test("skia_unittests") { + sources = [ + "ext/analysis_canvas_unittest.cc", + "ext/bitmap_platform_device_mac_unittest.cc", + "ext/convolver_unittest.cc", + "ext/image_operations_unittest.cc", + "ext/pixel_ref_utils_unittest.cc", + "ext/platform_canvas_unittest.cc", + "ext/recursive_gaussian_convolution_unittest.cc", + "ext/refptr_unittest.cc", + "ext/skia_utils_ios_unittest.mm", + "ext/skia_utils_mac_unittest.mm", + "ext/vector_canvas_unittest.cc", + ] + + if (!is_win) { + sources -= [ "ext/vector_canvas_unittest.cc" ] + } + + if (!is_win && !is_mac) { + sources -= [ "ext/platform_canvas_unittest.cc" ] + } + + deps = [ + ":skia", + "//base", + "//base/test:run_all_unittests", + "//testing/gtest", + "//ui/gfx", + "//ui/gfx/geometry", + ] +} + +if (is_android) { + # GYP: //skia/skia_tests.gyp:skia_unittests_apk + unittest_apk("skia_unittests_apk") { + unittests_dep = ":skia_unittests" + deps = [ + ":skia_unittests", + ] + } +} diff --git a/skia/ext/platform_canvas_unittest.cc b/skia/ext/platform_canvas_unittest.cc index 3b39b44..9ab5667 100644 --- a/skia/ext/platform_canvas_unittest.cc +++ b/skia/ext/platform_canvas_unittest.cc @@ -4,7 +4,17 @@ // TODO(awalker): clean up the const/non-const reference handling in this test +#include "skia/ext/platform_canvas.h" + +#include "base/logging.h" +#include "base/memory/scoped_ptr.h" #include "build/build_config.h" +#include "skia/ext/platform_device.h" +#include "testing/gtest/include/gtest/gtest.h" +#include "third_party/skia/include/core/SkBitmap.h" +#include "third_party/skia/include/core/SkColor.h" +#include "third_party/skia/include/core/SkColorPriv.h" +#include "third_party/skia/include/core/SkPixelRef.h" #if defined(OS_MACOSX) #import <ApplicationServices/ApplicationServices.h> @@ -14,15 +24,6 @@ #include <unistd.h> #endif -#include "base/memory/scoped_ptr.h" -#include "skia/ext/platform_canvas.h" -#include "skia/ext/platform_device.h" -#include "testing/gtest/include/gtest/gtest.h" -#include "third_party/skia/include/core/SkBitmap.h" -#include "third_party/skia/include/core/SkColor.h" -#include "third_party/skia/include/core/SkColorPriv.h" -#include "third_party/skia/include/core/SkPixelRef.h" - namespace skia { namespace { @@ -67,8 +68,12 @@ bool VerifyRect(const PlatformCanvas& canvas, // rectangle. Basically, we're just checking to make sure that the pixels in the // middle are of rect_color and pixels in the corners are of canvas_color. bool VerifyRoundedRect(const PlatformCanvas& canvas, - uint32_t canvas_color, uint32_t rect_color, - int x, int y, int w, int h) { + uint32_t canvas_color, + uint32_t rect_color, + int x, + int y, + int w, + int h) { SkBaseDevice* device = skia::GetTopDevice(canvas); const SkBitmap& bitmap = device->accessBitmap(false); SkAutoLockPixels lock(bitmap); @@ -126,7 +131,7 @@ void DrawNativeRect(PlatformCanvas& canvas, int x, int y, int w, int h) { } #else void DrawNativeRect(PlatformCanvas& canvas, int x, int y, int w, int h) { - notImplemented(); + NOTIMPLEMENTED(); } #endif diff --git a/skia/skia_tests.gyp b/skia/skia_tests.gyp new file mode 100644 index 0000000..250ff1f --- /dev/null +++ b/skia/skia_tests.gyp @@ -0,0 +1,65 @@ +# Copyright 2014 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +{ + 'variables': { + 'chromium_code': 1, + }, + 'targets': [ + { + 'target_name': 'skia_unittests', + 'type': '<(gtest_target_type)', + 'dependencies': [ + '../base/base.gyp:base', + '../base/base.gyp:run_all_unittests', + '../testing/gtest.gyp:gtest', + '../skia/skia.gyp:skia', + '../ui/gfx/gfx.gyp:gfx', + '../ui/gfx/gfx.gyp:gfx_geometry', + ], + 'sources': [ + 'ext/analysis_canvas_unittest.cc', + 'ext/bitmap_platform_device_mac_unittest.cc', + 'ext/convolver_unittest.cc', + 'ext/image_operations_unittest.cc', + 'ext/pixel_ref_utils_unittest.cc', + 'ext/platform_canvas_unittest.cc', + 'ext/recursive_gaussian_convolution_unittest.cc', + 'ext/refptr_unittest.cc', + 'ext/skia_utils_ios_unittest.mm', + 'ext/skia_utils_mac_unittest.mm', + 'ext/vector_canvas_unittest.cc', + ], + 'conditions': [ + ['OS != "win"', { + 'sources!': [ + 'ext/vector_canvas_unittest.cc', + ], + }], + ['OS != "win" and OS != "mac"', { + 'sources!': [ + 'ext/platform_canvas_unittest.cc', + ], + }], + ], + }, + ], + 'conditions': [ + ['OS == "android"', { + 'targets': [ + { + 'target_name': 'skia_unittests_apk', + 'type': 'none', + 'dependencies': [ + 'skia_unittests', + ], + 'variables': { + 'test_suite_name': 'skia_unittests', + }, + 'includes': [ '../build/apk_test.gypi' ], + }, + ], + }], + ], +} diff --git a/testing/buildbot/chromium.chromiumos.json b/testing/buildbot/chromium.chromiumos.json index 62ecaa0..3e0535e 100644 --- a/testing/buildbot/chromium.chromiumos.json +++ b/testing/buildbot/chromium.chromiumos.json @@ -89,7 +89,8 @@ "athena_unittests", "app_shell_browsertests", "app_shell_unittests", - "chromevox_tests" + "chromevox_tests", + "skia_unittests" ] }, "Linux ChromiumOS Ozone Tests (1)": { @@ -149,6 +150,7 @@ "test": "sandbox_linux_unittests", "args": ["--test-launcher-print-test-stdio=always"] }, + "skia_unittests", "sql_unittests", "sync_unit_tests", "ui_base_unittests", @@ -250,6 +252,7 @@ }, "athena_unittests", "gcm_unit_tests", + "skia_unittests", { "test": "interactive_ui_tests", "swarming": { diff --git a/testing/buildbot/chromium.fyi.json b/testing/buildbot/chromium.fyi.json index 0db9d9c..68fb55b 100644 --- a/testing/buildbot/chromium.fyi.json +++ b/testing/buildbot/chromium.fyi.json @@ -32,6 +32,7 @@ "printing_unittests", "remoting_unittests", "sandbox_linux_unittests", + "skia_unittests", "ui_base_unittests", "ui_touch_selection_unittests", "ipc_tests", @@ -98,6 +99,7 @@ "printing_unittests", "remoting_unittests", "sandbox_linux_unittests", + "skia_unittests", "ui_base_unittests", "ui_touch_selection_unittests", "ipc_tests", @@ -164,6 +166,7 @@ "printing_unittests", "remoting_unittests", "sandbox_linux_unittests", + "skia_unittests", "ui_base_unittests", "ui_touch_selection_unittests", "ipc_tests", @@ -230,6 +233,7 @@ "printing_unittests", "remoting_unittests", "sandbox_linux_unittests", + "skia_unittests", "ui_base_unittests", "ui_touch_selection_unittests", "ipc_tests", @@ -305,6 +309,7 @@ "printing_unittests", "remoting_unittests", "sandbox_mac_unittests", + "skia_unittests", "sql_unittests", "sync_integration_tests", "sync_unit_tests", diff --git a/testing/buildbot/chromium.linux.json b/testing/buildbot/chromium.linux.json index 7e97897..3c05ad7 100644 --- a/testing/buildbot/chromium.linux.json +++ b/testing/buildbot/chromium.linux.json @@ -122,7 +122,8 @@ }, "url_unittests", "views_unittests", - "wm_unittests" + "wm_unittests", + "skia_unittests" ], "scripts": [ { @@ -262,7 +263,8 @@ }, "url_unittests", "views_unittests", - "wm_unittests" + "wm_unittests", + "skia_unittests" ], "scripts": [ { @@ -398,7 +400,8 @@ }, "url_unittests", "views_unittests", - "wm_unittests" + "wm_unittests", + "skia_unittests" ], "scripts": [ { @@ -440,7 +443,8 @@ "sql_unittests", "sync_unit_tests", "ui_base_unittests", - "unit_tests" + "unit_tests", + "skia_unittests" ] } } diff --git a/testing/buildbot/chromium.mac.json b/testing/buildbot/chromium.mac.json index c74cd86..cfc0a2a 100644 --- a/testing/buildbot/chromium.mac.json +++ b/testing/buildbot/chromium.mac.json @@ -105,7 +105,8 @@ "can_use_on_swarming_builders": true } }, - "url_unittests" + "url_unittests", + "skia_unittests" ], "scripts": [ { @@ -228,7 +229,8 @@ "can_use_on_swarming_builders": true } }, - "url_unittests" + "url_unittests", + "skia_unittests" ], "scripts": [ { @@ -351,7 +353,8 @@ "can_use_on_swarming_builders": true } }, - "url_unittests" + "url_unittests", + "skia_unittests" ], "scripts": [ { @@ -475,7 +478,8 @@ "can_use_on_swarming_builders": true } }, - "url_unittests" + "url_unittests", + "skia_unittests" ], "scripts": [ { diff --git a/testing/buildbot/chromium.memory.fyi.json b/testing/buildbot/chromium.memory.fyi.json index 3852f7a..04b74f6 100644 --- a/testing/buildbot/chromium.memory.fyi.json +++ b/testing/buildbot/chromium.memory.fyi.json @@ -40,6 +40,7 @@ "printing_unittests", "remoting_unittests", "sandbox_linux_unittests", + "skia_unittests", "sql_unittests", "sync_unit_tests", "ui_base_unittests", @@ -106,6 +107,7 @@ "printing_unittests", "remoting_unittests", "sandbox_linux_unittests", + "skia_unittests", "sql_unittests", "sync_unit_tests", "ui_base_unittests", diff --git a/testing/buildbot/chromium.memory.json b/testing/buildbot/chromium.memory.json index 40583de..296c0a7 100644 --- a/testing/buildbot/chromium.memory.json +++ b/testing/buildbot/chromium.memory.json @@ -60,6 +60,7 @@ "printing_unittests", "remoting_unittests", "sandbox_linux_unittests", + "skia_unittests", "sql_unittests", "sync_unit_tests", "ui_base_unittests", @@ -209,6 +210,7 @@ "ppapi_unittests", "printing_unittests", "remoting_unittests", + "skia_unittests", "sql_unittests", "sync_unit_tests", "ui_base_unittests", @@ -294,6 +296,7 @@ "printing_unittests", "remoting_unittests", "sandbox_linux_unittests", + "skia_unittests", "sql_unittests", "sync_unit_tests", { diff --git a/testing/buildbot/chromium.webkit.json b/testing/buildbot/chromium.webkit.json index 145df59..47f4c49 100644 --- a/testing/buildbot/chromium.webkit.json +++ b/testing/buildbot/chromium.webkit.json @@ -86,7 +86,8 @@ "athena_unittests", "app_shell_browsertests", "app_shell_unittests", - "chromevox_tests" + "chromevox_tests", + "skia_unittests" ] }, "Linux ChromiumOS Tests (2)": { @@ -174,6 +175,7 @@ }, "athena_unittests", "gcm_unit_tests", + "skia_unittests", { "test": "interactive_ui_tests", "swarming": { diff --git a/testing/buildbot/chromium.win.json b/testing/buildbot/chromium.win.json index c7ae0d4..a138a36 100644 --- a/testing/buildbot/chromium.win.json +++ b/testing/buildbot/chromium.win.json @@ -86,7 +86,8 @@ "ui_touch_selection_unittests", "url_unittests", "views_unittests", - "wm_unittests" + "wm_unittests", + "skia_unittests" ], "scripts": [ { @@ -196,7 +197,8 @@ "ui_touch_selection_unittests", "url_unittests", "views_unittests", - "wm_unittests" + "wm_unittests", + "skia_unittests" ], "scripts": [ { @@ -314,7 +316,8 @@ }, "url_unittests", "views_unittests", - "wm_unittests" + "wm_unittests", + "skia_unittests" ], "scripts": [ { @@ -436,7 +439,8 @@ }, "url_unittests", "views_unittests", - "wm_unittests" + "wm_unittests", + "skia_unittests" ], "scripts": [ { @@ -552,7 +556,8 @@ }, "url_unittests", "views_unittests", - "wm_unittests" + "wm_unittests", + "skia_unittests" ], "scripts": [ { diff --git a/testing/buildbot/chromium_memory_trybot.json b/testing/buildbot/chromium_memory_trybot.json index 357735f..2b8564e 100644 --- a/testing/buildbot/chromium_memory_trybot.json +++ b/testing/buildbot/chromium_memory_trybot.json @@ -63,6 +63,7 @@ "test": "sandbox_linux_unittests", "platforms": ["linux"] }, + "skia_unittests", "sql_unittests", "sync_unit_tests", "ui_base_unittests", diff --git a/testing/buildbot/chromium_trybot.json b/testing/buildbot/chromium_trybot.json index edfcad2..cdf0ea1 100644 --- a/testing/buildbot/chromium_trybot.json +++ b/testing/buildbot/chromium_trybot.json @@ -211,6 +211,7 @@ ] }, "url_unittests", + "skia_unittests", { "test": "wm_unittests", "platforms": ["linux", "win"] diff --git a/tools/valgrind/chrome_tests.py b/tools/valgrind/chrome_tests.py index eef3175..40ef7ba 100755 --- a/tools/valgrind/chrome_tests.py +++ b/tools/valgrind/chrome_tests.py @@ -446,6 +446,9 @@ class ChromeTests: "--ui-test-action-timeout=60000", "--ui-test-action-max-timeout=150000"]) + def TestSkia(self): + return self.SimpleTest("skia", "skia_unittests") + def TestSql(self): return self.SimpleTest("chrome", "sql_unittests") @@ -706,6 +709,7 @@ class ChromeTests: "remoting": TestRemoting, "remoting_unittests": TestRemoting, "safe_browsing": TestSafeBrowsing, "safe_browsing_tests": TestSafeBrowsing, "sandbox": TestLinuxSandbox, "sandbox_linux_unittests": TestLinuxSandbox, + "skia": TestSkia, "skia_unittests": TestSkia, "sql": TestSql, "sql_unittests": TestSql, "sync": TestSync, "sync_unit_tests": TestSync, "sync_integration_tests": TestSyncIntegration, |