Go to file
Kevin Lubick a2d3958e1f [bazel] Make custom karma_test rule
Run the tests in headless mode and output the logs
bazel test :hello_world --test_output=all

Start up a visible web browser with the karma test driver
(need to go to Debug tab to actually run tests)
bazel run :hello_world

Suggested review order
 - package.json to see the karma dependencies to run
   jasmine tests on chrome and firefox.
 - WORKSPACE.bazel to see how the packages listed in
   package.json and package-lock.json are downloaded
   into the Bazel sandbox/cache via the npm_install rule.
   As mentioned in the package.json comment, the version
   of build_bazel_rules_nodejs which emscripten uses [1]
   is 4.4.1 and if we tried to install it ourselves, that
   installation will be ignored. We also bring in hermetic
   browsers via io_bazel_rules_webtesting.
 - bazel/karma_test.bzl which defines a new rule _karma_test
   and a macro karma_test which joins the new rule with
   an existing web_test rule to run it on a hermetic browser
   which Bazel downloads. This rule takes heavy inspiration
   from @bazel/concatjs [2], but is much simpler and lets us
   configure more things (e.g. proxies, so we can work with
   test_on_env).
 - karma.bazel.js, which is a pretty ordinary looking karma
   configuration file [2] with effectively a JS macro
   BAZEL_APPLY_SETTINGS. JS doesn't have a preprocessor or
   actual macros, but this string will be replaced by the
   JS code in karma_test.bzl which will set correct filepaths
   for Bazel content.
 - All other files.

[1] c33c7be17f/bazel/deps.bzl (L10)
[2] 700b7a3c5f/packages/concatjs/web_test/karma_web_test.bzl (L318)
[3] http://karma-runner.github.io/6.3/config/configuration-file.html
Change-Id: Id64c0a86d6be37d627762cef0beaaf23ad390ac1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/509717
Reviewed-by: Leandro Lovisolo <lovisolo@google.com>
2022-02-23 14:53:01 +00:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bazel [bazel] Make custom karma_test rule 2022-02-23 14:53:01 +00:00
bench Rename GrSwizzle to skgpu::Swizzle 2022-02-16 13:30:14 +00:00
bin Reland "Build CanvasKit using GN/Ninja" 2022-02-15 16:31:10 +00:00
build/fuchsia [fuchsia] Fix fidlc command. 2020-06-10 03:29:24 +00:00
build_overrides Add Abseil dependency for Dawn 2021-09-22 22:05:32 +00:00
client_utils/android Make class members that are static constexpr also be inline. 2021-10-11 16:22:59 +00:00
demos.skia.org [canvaskit] Add in fillText to spreadsheet demo for comparison 2022-02-15 15:35:43 +00:00
dm Remove g8 config from DM/FM. Switch CPU bots to test r8 instead. 2022-02-15 15:46:10 +00:00
docker Reland "Build CanvasKit using GN/Ninja" 2022-02-15 16:31:10 +00:00
docs/examples Reland "Add kR8_unorm_SkColorType" 2022-02-10 18:00:19 +00:00
example [bazel] Use font manager in HelloWorld. 2022-01-11 16:22:52 +00:00
experimental [graphite] Initialze bound buffer tracking in render encoder. 2022-02-22 21:23:15 +00:00
fuzz Control growth of FuzzNicePath with chain of path transforms 2022-02-14 19:11:54 +00:00
gm Revert "Fix dithering on drawImage[Rect] calls" 2022-02-22 23:17:20 +00:00
gn Revert "Reland "Add defines to skqp build"" 2022-02-23 13:51:18 +00:00
include Add #include <algorithm> to SkTArray.h 2022-02-22 21:52:15 +00:00
infra Update SKP version 2022-02-20 08:13:14 +00:00
modules [bazel] Make custom karma_test rule 2022-02-23 14:53:01 +00:00
platform_tools Fix SkQP errors when built in the Android framework. 2022-02-11 20:48:50 +00:00
resources Support font palette overrides through SkFontArguments 2022-02-17 13:19:53 +00:00
samplecode Pre-construct device-to-layer matrix for skif::Mappings 2022-02-16 16:26:40 +00:00
site Remove isOpaque parameter from CanvasKit SkRuntimeEffect APIs 2022-02-10 17:15:13 +00:00
specs [infra] Port serve.py from Python2 to 3 2021-08-31 15:28:19 +00:00
src Revert "Fix dithering on drawImage[Rect] calls" 2022-02-22 23:17:20 +00:00
tests change to serialize/Deserialize API 2022-02-22 19:03:49 +00:00
third_party Reland "Build CanvasKit using GN/Ninja" 2022-02-15 16:31:10 +00:00
toolchain [bazel] Regenerate files and build with c++17 2022-02-01 13:15:22 +00:00
tools [graphite] Fix shader dictionary's map key equality check. 2022-02-18 20:25:39 +00:00
.bazelrc [canvaskit] Add more features to Bazel build 2022-02-04 21:33:20 +00:00
.bazelversion [canvaskit] Add skottie to Bazel build 2022-02-04 19:18:27 +00:00
.clang-format no more bin packing in .clang-format 2021-03-04 17:22:50 +00:00
.clang-tidy Disable ClangTidy namespace comments for short blocks. 2020-08-24 14:01:22 +00:00
.gitignore Add .vscode to the default gitignore list. 2021-10-13 15:23:02 +00:00
.gn Pre-emptive fix for upcoming ANGLE change. 2021-01-08 17:23:52 +00:00
.vpython [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
AUTHORS Fix a null pointer bug in SkData::copyRange 2022-01-24 19:27:13 +00:00
BUILD.bazel [bazel] Compile gms for wasm and WebGL 2022-02-09 18:56:17 +00:00
BUILD.gn Reland "Build CanvasKit using GN/Ninja" 2022-02-15 16:31:10 +00:00
codereview.settings Make uploading to Gerrit the default for Skia 2016-11-09 19:07:56 +00:00
CONTRIBUTING Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
CQ_COMMITTERS Moved committer list to chrome-infra-auth and deleted it from the repo 2015-09-02 13:37:54 -07:00
DEPS Roll SwiftShader from d25df2a67cd2 to b8d7deae87a7 (2 revisions) 2022-02-22 04:48:17 +00:00
DIR_METADATA Move metadata in OWNERS files to DIR_METADATA files 2021-02-02 23:41:54 +00:00
go_repositories.bzl [bazel] Sketching out HelloWorld sk_app using GL 2022-01-11 13:06:19 +00:00
go.mod [bazel] Sketching out HelloWorld sk_app using GL 2022-01-11 13:06:19 +00:00
go.sum [bazel] Sketching out HelloWorld sk_app using GL 2022-01-11 13:06:19 +00:00
LICENSE LICENSE file: clean up 2019-11-22 21:59:03 +00:00
OWNERS [infra] Add wildcard OWNERS 2021-08-30 19:19:34 +00:00
package-lock.json [bazel] Make custom karma_test rule 2022-02-23 14:53:01 +00:00
package.json [bazel] Make custom karma_test rule 2022-02-23 14:53:01 +00:00
PRESUBMIT.py Remove AUTHORS check from PRESUBMIT.py 2021-09-30 14:12:18 +00:00
public.bzl remove jpeg from android builds flagged with no_codec 2022-02-14 19:29:10 +00:00
README Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
README.chromium Update README.chromium. 2015-06-11 13:19:24 -07:00
RELEASE_NOTES.txt Support font palette overrides through SkFontArguments 2022-02-17 13:19:53 +00:00
whitespace.txt Push shaders.skia.org. 2022-01-19 21:46:16 +00:00
WORKSPACE.bazel [bazel] Make custom karma_test rule 2022-02-23 14:53:01 +00:00

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

See full details, and build instructions, at https://skia.org.