package(default_visibility = ["//visibility:public"]) load("//tools:defaults.bzl", "karma_web_test") exports_files([ "LICENSE", "protractor-perf.conf.js", "karma-js.conf.js", "browser-providers.conf.js", ]) alias( name = "tsconfig.json", actual = "//packages:tsconfig-build.json", ) filegroup( name = "web_test_bootstrap_scripts", # do not sort srcs = [ "@npm//:node_modules/core-js/client/core.js", "//packages/zone.js/dist:zone.js", "//packages/zone.js/dist:zone-testing.js", "//packages/zone.js/dist:task-tracking.js", "//:test-events.js", "//:shims_for_IE.js", # Including systemjs because it defines `__eval`, which produces correct stack traces. "@npm//:node_modules/systemjs/dist/system.src.js", "@npm//:node_modules/reflect-metadata/Reflect.js", ], ) filegroup( name = "angularjs_scripts", srcs = [ # We also declare the unminfied AngularJS files since these can be used for # local debugging (e.g. see: packages/upgrade/test/common/test_helpers.ts) "@npm//:node_modules/angular/angular.js", "@npm//:node_modules/angular/angular.min.js", "@npm//:node_modules/angular-1.5/angular.js", "@npm//:node_modules/angular-1.5/angular.min.js", "@npm//:node_modules/angular-1.6/angular.js", "@npm//:node_modules/angular-1.6/angular.min.js", "@npm//:node_modules/angular-mocks/angular-mocks.js", "@npm//:node_modules/angular-mocks-1.5/angular-mocks.js", "@npm//:node_modules/angular-mocks-1.6/angular-mocks.js", ], ) # To run manually: # Setup your SAUCE_USERNAME, SAUCE_ACCESS_KEY & SAUCE_TUNNEL_IDENTIFIER. # If on OSX, also set SAUCE_CONNECT to the path of your `sc` binary. # environment variables and run: # ``` # yarn bazel run //tools/saucelabs:sauce_service_setup # yarn bazel test //:saucelabs_unit_tests --config=saucelabs --config=ivy # ``` # See /tools/saucelabs/README.md for more info on karma Saucelabs tests under Bazel. karma_web_test( name = "saucelabs_unit_tests", # Default timeout is moderate (5min). This causes the test to be terminated while # Saucelabs browsers keep running. Ultimately resulting in failing tests and browsers # unnecessarily being acquired. Our specified Saucelabs idle timeout is 10min, so we use # Bazel's long timeout (15min). This ensures that Karma can shut down properly. timeout = "long", karma = "//tools/saucelabs:karma-saucelabs", tags = [ "manual", "no-remote-exec", "saucelabs", ], deps = [ "//packages/core/test/acceptance:acceptance_lib", ], ) SAUCE_TEST_SUITE_TARGETS = [ "packages/common/http/test:test_lib", "packages/common/http/testing/test:test_lib", "packages/common/test:test_lib", "packages/core/test:test_lib", "packages/forms/test:test_lib", "packages/http/test:test_lib", ] [ # These target runs in CI with View Engine as a Saucelabs and Bazel proof-of-concept. It's a # subset of the legacy saucelabs tests. karma_web_test( name = "saucelabs_unit_tests_poc_%s" % test.replace("/", "_").replace(":", "_").replace(".", "_"), # Default timeout is moderate (5min). This causes the test to be terminated while # Saucelabs browsers keep running. Ultimately resulting in failing tests and browsers # unnecessarily being acquired. Our specified Saucelabs idle timeout is 10min, so we use # Bazel's long timeout (15min). This ensures that Karma can shut down properly. timeout = "long", karma = "//tools/saucelabs:karma-saucelabs", tags = [ "exclusive", "manual", "no-remote-exec", "saucelabs", ], deps = ["//%s" % test], ) for test in SAUCE_TEST_SUITE_TARGETS ] # To run manually: # Setup your SAUCE_USERNAME, SAUCE_ACCESS_KEY & SAUCE_TUNNEL_IDENTIFIER. # If on OSX, also set SAUCE_CONNECT to the path of your `sc` binary. # environment variables and run: # ``` # yarn bazel run //tools/saucelabs:sauce_service_setup # yarn bazel test //:saucelabs_unit_tests_poc_suite --config=saucelabs # ``` # See /tools/saucelabs/README.md for more info on karma Saucelabs tests under Bazel. test_suite( name = "saucelabs_unit_tests_poc_suite", tags = ["manual"], tests = ["//:saucelabs_unit_tests_poc_%s" % test.replace("/", "_").replace(":", "_").replace(".", "_") for test in SAUCE_TEST_SUITE_TARGETS], )