Skip to content

Commit

Permalink
Merge branch 'jest-example' of github.com:purkhusid/rules_nodejs into…
Browse files Browse the repository at this point in the history
… jest-example
  • Loading branch information
purkhusid committed Oct 15, 2019
2 parents 116463b + eb404b5 commit 4a78ad6
Show file tree
Hide file tree
Showing 9 changed files with 79 additions and 19 deletions.
4 changes: 2 additions & 2 deletions .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ import %workspace%/common.bazelrc
# This lets us glob() up all the files inside the examples to make them inputs to tests
# To update these lines, just run `yarn bazel:update-deleted-packages`
# (Note, we cannot use common --deleted_packages because the bazel version command doesn't support it)
build --deleted_packages=examples/angular,examples/angular/e2e,examples/angular/src/app/hello-world,examples/angular/src/app/todos/reducers,examples/angular/src/app/todos,examples/angular/src/app/home,examples/angular/src/app,examples/angular/src/shared/material,examples/angular/src/assets,examples/angular/src/example,examples/angular/src,examples/angular/src/lib/shorten,examples/angular/tools,examples/angular_view_engine,examples/angular_view_engine/e2e,examples/angular_view_engine/src/app/hello-world,examples/angular_view_engine/src/app/todos/reducers,examples/angular_view_engine/src/app/todos,examples/angular_view_engine/src/app/home,examples/angular_view_engine/src/app,examples/angular_view_engine/src/shared/material,examples/angular_view_engine/src/assets,examples/angular_view_engine/src/example,examples/angular_view_engine/src,examples/angular_view_engine/src/lib/shorten,examples/angular_view_engine/tools,examples/app,examples/app/styles,examples/app/test,examples/closure,examples/kotlin,examples/nestjs,examples/nestjs/src,examples/parcel,examples/protocol_buffers,examples/user_managed_deps,examples/vendored_node_and_yarn,examples/vendored_node,examples/webapp,examples/web_testing,examples/worker,e2e/bazel_managed_deps,e2e/fine_grained_symlinks,e2e/jasmine,e2e/karma,e2e/karma_stack_trace,e2e/karma_stack_trace/test_folder,e2e/karma_typescript,e2e/node_loader_no_preserve_symlinks,e2e/node_loader_preserve_symlinks,e2e/packages,e2e/symlinked_node_modules_npm,e2e/symlinked_node_modules_yarn,e2e/ts_auto_deps,e2e/ts_devserver,e2e/ts_devserver/genrule,e2e/ts_devserver/subpackage,e2e/typescript,e2e/webapp,e2e/webpack
query --deleted_packages=examples/angular,examples/angular/e2e,examples/angular/src/app/hello-world,examples/angular/src/app/todos/reducers,examples/angular/src/app/todos,examples/angular/src/app/home,examples/angular/src/app,examples/angular/src/shared/material,examples/angular/src/assets,examples/angular/src/example,examples/angular/src,examples/angular/src/lib/shorten,examples/angular/tools,examples/angular_view_engine,examples/angular_view_engine/e2e,examples/angular_view_engine/src/app/hello-world,examples/angular_view_engine/src/app/todos/reducers,examples/angular_view_engine/src/app/todos,examples/angular_view_engine/src/app/home,examples/angular_view_engine/src/app,examples/angular_view_engine/src/shared/material,examples/angular_view_engine/src/assets,examples/angular_view_engine/src/example,examples/angular_view_engine/src,examples/angular_view_engine/src/lib/shorten,examples/angular_view_engine/tools,examples/app,examples/app/styles,examples/app/test,examples/closure,examples/kotlin,examples/nestjs,examples/nestjs/src,examples/parcel,examples/protocol_buffers,examples/user_managed_deps,examples/vendored_node_and_yarn,examples/vendored_node,examples/webapp,examples/web_testing,examples/worker,e2e/bazel_managed_deps,e2e/fine_grained_symlinks,e2e/jasmine,e2e/karma,e2e/karma_stack_trace,e2e/karma_stack_trace/test_folder,e2e/karma_typescript,e2e/node_loader_no_preserve_symlinks,e2e/node_loader_preserve_symlinks,e2e/packages,e2e/symlinked_node_modules_npm,e2e/symlinked_node_modules_yarn,e2e/ts_auto_deps,e2e/ts_devserver,e2e/ts_devserver/genrule,e2e/ts_devserver/subpackage,e2e/typescript,e2e/webapp,e2e/webpack
build --deleted_packages=examples/angular,examples/angular/e2e,examples/angular/src/app/hello-world,examples/angular/src/app/todos/reducers,examples/angular/src/app/todos,examples/angular/src/app/home,examples/angular/src/app,examples/angular/src/shared/material,examples/angular/src/assets,examples/angular/src/example,examples/angular/src,examples/angular/src/lib/shorten,examples/angular/tools,examples/angular_view_engine,examples/angular_view_engine/e2e,examples/angular_view_engine/src/app/hello-world,examples/angular_view_engine/src/app/todos/reducers,examples/angular_view_engine/src/app/todos,examples/angular_view_engine/src/app/home,examples/angular_view_engine/src/app,examples/angular_view_engine/src/shared/material,examples/angular_view_engine/src/assets,examples/angular_view_engine/src/example,examples/angular_view_engine/src,examples/angular_view_engine/src/lib/shorten,examples/angular_view_engine/tools,examples/app,examples/app/styles,examples/app/test,examples/closure,examples/jest,examples/jest/tools,examples/kotlin,examples/nestjs,examples/nestjs/src,examples/parcel,examples/protocol_buffers,examples/user_managed_deps,examples/vendored_node_and_yarn,examples/vendored_node,examples/webapp,examples/web_testing,examples/worker,e2e/bazel_managed_deps,e2e/fine_grained_symlinks,e2e/jasmine,e2e/node_loader_no_preserve_symlinks,e2e/node_loader_preserve_symlinks,e2e/packages,e2e/symlinked_node_modules_npm,e2e/symlinked_node_modules_yarn,e2e/ts_auto_deps,e2e/ts_devserver,e2e/ts_devserver/genrule,e2e/ts_devserver/subpackage,e2e/typescript,e2e/webapp,e2e/webpack
query --deleted_packages=examples/angular,examples/angular/e2e,examples/angular/src/app/hello-world,examples/angular/src/app/todos/reducers,examples/angular/src/app/todos,examples/angular/src/app/home,examples/angular/src/app,examples/angular/src/shared/material,examples/angular/src/assets,examples/angular/src/example,examples/angular/src,examples/angular/src/lib/shorten,examples/angular/tools,examples/angular_view_engine,examples/angular_view_engine/e2e,examples/angular_view_engine/src/app/hello-world,examples/angular_view_engine/src/app/todos/reducers,examples/angular_view_engine/src/app/todos,examples/angular_view_engine/src/app/home,examples/angular_view_engine/src/app,examples/angular_view_engine/src/shared/material,examples/angular_view_engine/src/assets,examples/angular_view_engine/src/example,examples/angular_view_engine/src,examples/angular_view_engine/src/lib/shorten,examples/angular_view_engine/tools,examples/app,examples/app/styles,examples/app/test,examples/closure,examples/jest,examples/jest/tools,examples/kotlin,examples/nestjs,examples/nestjs/src,examples/parcel,examples/protocol_buffers,examples/user_managed_deps,examples/vendored_node_and_yarn,examples/vendored_node,examples/webapp,examples/web_testing,examples/worker,e2e/bazel_managed_deps,e2e/fine_grained_symlinks,e2e/jasmine,e2e/node_loader_no_preserve_symlinks,e2e/node_loader_preserve_symlinks,e2e/packages,e2e/symlinked_node_modules_npm,e2e/symlinked_node_modules_yarn,e2e/ts_auto_deps,e2e/ts_devserver,e2e/ts_devserver/genrule,e2e/ts_devserver/subpackage,e2e/typescript,e2e/webapp,e2e/webpack

# Mock versioning command to test the --stamp behavior
build --workspace_status_command="echo BUILD_SCM_VERSION 1.2.3"
Expand Down
4 changes: 4 additions & 0 deletions examples/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,10 @@ example_integration_test(
},
)

example_integration_test(
name = "examples_jest",
)

example_integration_test(
name = "examples_kotlin",
npm_packages = {
Expand Down
6 changes: 0 additions & 6 deletions examples/jest/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,3 @@ jest_test(
"@npm//babel-jest",
],
)

# Just a dummy test so that we have a test target for //... on certain bazelci platforms with bazel_integration_test
sh_test(
name = "dummy_test",
srcs = ["dummy_test.sh"],
)
2 changes: 0 additions & 2 deletions examples/jest/dummy_test.sh

This file was deleted.

13 changes: 4 additions & 9 deletions examples/jest/jest.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,14 @@ load("@npm//jest-cli:index.bzl", _jest_test = "jest_test")

def jest_test(name, srcs, deps, jest_config):
"A macro around the autogenerated jest_test rule"
jest_config_location_arg = "$(location " + jest_config + ")"
jest_test_path_arg = ["--runTestsByPath"]
for src in srcs:
jest_test_path_arg = jest_test_path_arg + ["$(location " + src + ")"]

args = [
"--config",
jest_config_location_arg,
"--no-cache",
"--no-watchman",
"--ci",
"--runTestsByPath",
] + jest_test_path_arg
]
args.extend(["--config", "$(location %s)" % jest_config])
for src in srcs:
args.extend(["--runTestsByPath", "$(location %s)" % src])

_jest_test(
name = name,
Expand Down
4 changes: 4 additions & 0 deletions examples/jest/tools/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Marker that this directory is a Bazel package

# These patch files from Globegitter:
# https://gist.github.com/Globegitter/690dd1b97828a3927b436bc11211f139
File renamed without changes.
31 changes: 31 additions & 0 deletions examples/jest/tools/patches/babel-plugin-istanbul+5.1.2.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
diff --git a/node_modules/babel-plugin-istanbul/lib/index.js b/node_modules/babel-plugin-istanbul/lib/index.js
index 259adb4..102a54f 100644
--- a/node_modules/babel-plugin-istanbul/lib/index.js
+++ b/node_modules/babel-plugin-istanbul/lib/index.js
@@ -27,7 +27,7 @@ function makeShouldSkip() {
var exclude;
return function shouldSkip(file, opts) {
if (!exclude || exclude.cwd !== opts.cwd) {
- var cwd = getRealpath(process.env.NYC_CWD || process.cwd());
+ var cwd = process.env.NYC_CWD || process.cwd();
var nycConfig = process.env.NYC_CONFIG ? JSON.parse(process.env.NYC_CONFIG) : {};
var config = {};

@@ -68,7 +68,7 @@ function makeVisitor(_ref) {
Program: {
enter: function enter(path) {
this.__dv__ = null;
- var realPath = getRealpath(this.file.opts.filename);
+ var realPath = this.file.opts.filename;

if (shouldSkip(realPath, this.opts)) {
return;
@@ -101,7 +101,7 @@ function makeVisitor(_ref) {
var result = this.__dv__.exit(path);

if (this.opts.onCover) {
- this.opts.onCover(getRealpath(this.file.opts.filename), result.fileCoverage);
+ this.opts.onCover(this.file.opts.filename, result.fileCoverage);
}
}
}
34 changes: 34 additions & 0 deletions examples/jest/tools/patches/istanbul-api+2.1.5.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
diff --git a/node_modules/istanbul-api/lib/file-matcher.js b/node_modules/istanbul-api/lib/file-matcher.js
index d926363..587d5d4 100644
--- a/node_modules/istanbul-api/lib/file-matcher.js
+++ b/node_modules/istanbul-api/lib/file-matcher.js
@@ -18,8 +18,8 @@ function filesFor(options, callback) {
let root = options.root;
let includes = options.includes;
let excludes = options.excludes;
- const realpath = options.realpath;
- const relative = options.relative;
+ const realpath = false;
+ const relative = true;

root = root || process.cwd();
includes = includes && Array.isArray(includes) ? includes : ['**/*.js'];
@@ -35,6 +35,7 @@ function filesFor(options, callback) {
return callback(err);
}
if (relative) {
+ console.log("istanbul", files)
return callback(err, files);
}

@@ -62,8 +63,8 @@ function matcherFor(options, callback) {
options = null;
}
options = options || {};
- options.relative = false; //force absolute paths
- options.realpath = true; //force real paths (to match Node.js module paths)
+ options.relative = true; //force absolute paths
+ options.realpath = false; //force real paths (to match Node.js module paths)

filesFor(options, (err, files) => {
const fileMap = Object.create(null);

0 comments on commit 4a78ad6

Please sign in to comment.