2020-03-27 03:26:10 +03:00
|
|
|
# Copyright (c) 2020 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
|
2019-04-04 11:33:38 +03:00
|
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
|
|
|
|
load(
|
2019-04-12 14:10:16 +03:00
|
|
|
"//bazel_tools:scala.bzl",
|
|
|
|
"da_scala_benchmark_jmh",
|
|
|
|
"da_scala_library",
|
2019-04-04 11:33:38 +03:00
|
|
|
)
|
|
|
|
load(
|
2019-04-12 14:10:16 +03:00
|
|
|
"//rules_daml:daml.bzl",
|
|
|
|
"daml_compile",
|
2019-04-04 11:33:38 +03:00
|
|
|
)
|
|
|
|
|
|
|
|
da_scala_library(
|
2019-04-12 14:10:16 +03:00
|
|
|
name = "sandbox-perf-lib",
|
|
|
|
srcs = glob(["src/perf/lib/**/*.scala"]),
|
|
|
|
visibility = ["//visibility:public"],
|
|
|
|
deps = [
|
2020-01-06 15:58:56 +03:00
|
|
|
"//bazel_tools/runfiles:scala_runfiles",
|
|
|
|
"//daml-lf/archive:daml_lf_archive_reader",
|
|
|
|
"//daml-lf/archive:daml_lf_dev_archive_java_proto",
|
|
|
|
"//daml-lf/data",
|
2019-04-12 14:10:16 +03:00
|
|
|
"//external:io_bazel_rules_scala/dependency/jmh/jmh_core",
|
2020-01-06 15:58:56 +03:00
|
|
|
"//language-support/scala/bindings",
|
|
|
|
"//ledger-api/rs-grpc-akka",
|
|
|
|
"//ledger-api/rs-grpc-bridge",
|
|
|
|
"//ledger-api/testing-utils",
|
2020-05-26 11:33:53 +03:00
|
|
|
"//ledger/caching",
|
2020-01-06 15:58:56 +03:00
|
|
|
"//ledger/ledger-api-client",
|
|
|
|
"//ledger/ledger-api-common",
|
|
|
|
"//ledger/ledger-api-domain",
|
|
|
|
"//ledger/participant-state",
|
|
|
|
"//ledger/sandbox",
|
|
|
|
"//ledger/sandbox:sandbox-scala-tests-lib",
|
New Ledger API test tool (#2282)
* New acceptance test tool prototype
* Fix transaction filter helper
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r308081386
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r308082432
Moreover, creates specific helpers for test DAML code.
* Move helpers from session to context
Remove a circular dependency between session and context, and limits the
usage of implicits.
* Run tests with ledgers out of process
* Prepare for drop in
* Temporary timeout increase
* Move bulk of the logic to the test runner
* Have a map of tests for CLI integration
* Timeout per-test, runner uses context, renaming
* Allow usage of time service, integrate semantic tests
* Integrate CLI SSL configuration
* Integrate failure expectation CLI option
* Integrate with failure output verbosity CLI option
* Integrate with test listing and picking CLI options
* Integrate with timeout scaling CLI option
* Integrate with command TTL CLI option
* Review CODEOWNERS
* Drop previously unimplemented CLI parameters
* Expand test todo list to encompass latest additions
* Deduplicate some testing infrastructure, swap in new test tool
* Remove unused rule
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r311045444
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r311051974
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r311035287
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r311055290
* WIP
* Make gRPC thread factory spawn non-deamon threads
* Remove debug prints, complete divulgence test (missing assertion messages)
* Try to detect assertion failure line number
* Add Sandbox binary that starts an ephemeral postgres instance
This allows us to use the client_server_test bazel macro to run against
the sandbox backed by postgres.
Fixes #1543
* Add Sandbox binary that starts an ephemeral postgres instance
This allows us to use the client_server_test bazel macro to run against
the sandbox backed by postgres.
Fixes #1543
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r311400695
* Remove TlsConfiguration duplicate, move original to commons
* Make assertion more readable
Co-Authored-By: Gerolf Seitz <gerolf.seitz@digitalasset.com>
* Fix build errors introduced in previous commit
- exclude time service tests from reference-v2
- add copyright header to TlsConfiguration
* Complete divulgence test and address review comments
Restores comments from original divulgence tests and strives to be as
close to them as possible.
- Address https://github.com/digital-asset/daml/pull/2282#discussion_r311429169
- Address https://github.com/digital-asset/daml/pull/2282#discussion_r311431156
- Address https://github.com/digital-asset/daml/pull/2282#discussion_r311431913
* Delete old divulgence tests
* Restore methods to fetch contracts by template identifier
* Run conformance tests on in-memory sandbox
* Run conformance tests on the persistent sandbox
* Remove workflow identifier workaround
* New contract keys test (#2452)
* Set channel type for LedgerSession
* Add ContractKeysIT
* Run tests against reference-server v2
* Removed the old ContractKeysIT. However, ...
... I cannot remove ContractKeysChecks completely, because we have
another test path for DARs created prior to DAML-LF 1.6, which doesn't
have the submitter == maintainer restriction for contract keys.
* Use codegen instead of custom code
* Add missing copyright headers
* Drop sandbox conformance test suite (seems to not work on Windows CI)
* Make time simpler
* Test tool tests to run only semantic tests
* Make CI behave more consistently
* Add missing files to run tests on Postrgres
* Fix flaky divulgence test, introduce readable identifiers
* Increase sandbox conformance tests timeout
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r312363246
* Reintroduce test resource extraction
* Read semantic tests from the classpath rather than Bazel
* Use codegen types for ContractKeys integration test
allocateParty returns Primitive.Party and create and exercise also
accept Primitive.Party. This way we don't have to keep a String and
Primitive.Party representation around.
* Bump timeout for sandbox conformance tests
* Remove dependency on Bazel runfiles
2019-08-09 18:00:37 +03:00
|
|
|
"//ledger/test-common",
|
2020-01-06 15:58:56 +03:00
|
|
|
"//libs-scala/direct-execution-context",
|
2020-03-03 11:59:15 +03:00
|
|
|
"//libs-scala/ports",
|
2020-01-24 14:48:36 +03:00
|
|
|
"//libs-scala/postgresql-testing",
|
2020-02-14 16:52:45 +03:00
|
|
|
"//libs-scala/resources",
|
2020-01-06 15:58:56 +03:00
|
|
|
"@maven//:ch_qos_logback_logback_classic",
|
|
|
|
"@maven//:com_google_protobuf_protobuf_java",
|
|
|
|
"@maven//:com_typesafe_akka_akka_actor_2_12",
|
|
|
|
"@maven//:com_typesafe_akka_akka_stream_2_12",
|
|
|
|
"@maven//:org_scalaz_scalaz_core_2_12",
|
|
|
|
],
|
2019-04-04 11:33:38 +03:00
|
|
|
)
|
|
|
|
|
|
|
|
daml_compile(
|
2019-04-12 14:10:16 +03:00
|
|
|
name = "LargeTransaction",
|
2020-03-19 02:06:55 +03:00
|
|
|
srcs = ["src/perf/resources/damls/LargeTransaction.daml"],
|
2019-04-12 14:10:16 +03:00
|
|
|
visibility = ["//visibility:public"],
|
2019-04-04 11:33:38 +03:00
|
|
|
)
|
|
|
|
|
|
|
|
da_scala_benchmark_jmh(
|
2019-04-12 14:10:16 +03:00
|
|
|
name = "sandbox-perf",
|
|
|
|
srcs = glob(["src/perf/benches/**/*.scala"]),
|
|
|
|
data = [
|
2019-04-15 17:45:08 +03:00
|
|
|
"//ledger/sandbox-perf:LargeTransaction.dar",
|
2019-08-22 14:32:41 +03:00
|
|
|
"//ledger/test-common:Test-stable.dar",
|
2019-06-17 10:40:28 +03:00
|
|
|
"@postgresql_dev_env//:all",
|
2019-04-12 14:10:16 +03:00
|
|
|
],
|
|
|
|
visibility = ["//visibility:public"],
|
|
|
|
deps = [
|
|
|
|
":sandbox-perf-lib",
|
2020-01-06 15:58:56 +03:00
|
|
|
"//bazel_tools/runfiles:scala_runfiles",
|
|
|
|
"//daml-lf/archive:daml_lf_archive_reader",
|
|
|
|
"//daml-lf/archive:daml_lf_dev_archive_java_proto",
|
|
|
|
"//daml-lf/data",
|
|
|
|
"//daml-lf/engine",
|
|
|
|
"//daml-lf/interpreter",
|
|
|
|
"//daml-lf/language",
|
|
|
|
"//daml-lf/scenario-interpreter",
|
|
|
|
"//daml-lf/transaction",
|
|
|
|
"//language-support/scala/bindings",
|
|
|
|
"//ledger-api/rs-grpc-akka",
|
|
|
|
"//ledger-api/rs-grpc-bridge",
|
|
|
|
"//ledger-api/testing-utils",
|
|
|
|
"//ledger/ledger-api-client",
|
|
|
|
"//ledger/ledger-api-common",
|
|
|
|
"//ledger/ledger-api-domain",
|
|
|
|
"//ledger/participant-state",
|
|
|
|
"//ledger/sandbox",
|
|
|
|
"//ledger/sandbox:sandbox-scala-tests-lib",
|
New Ledger API test tool (#2282)
* New acceptance test tool prototype
* Fix transaction filter helper
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r308081386
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r308082432
Moreover, creates specific helpers for test DAML code.
* Move helpers from session to context
Remove a circular dependency between session and context, and limits the
usage of implicits.
* Run tests with ledgers out of process
* Prepare for drop in
* Temporary timeout increase
* Move bulk of the logic to the test runner
* Have a map of tests for CLI integration
* Timeout per-test, runner uses context, renaming
* Allow usage of time service, integrate semantic tests
* Integrate CLI SSL configuration
* Integrate failure expectation CLI option
* Integrate with failure output verbosity CLI option
* Integrate with test listing and picking CLI options
* Integrate with timeout scaling CLI option
* Integrate with command TTL CLI option
* Review CODEOWNERS
* Drop previously unimplemented CLI parameters
* Expand test todo list to encompass latest additions
* Deduplicate some testing infrastructure, swap in new test tool
* Remove unused rule
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r311045444
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r311051974
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r311035287
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r311055290
* WIP
* Make gRPC thread factory spawn non-deamon threads
* Remove debug prints, complete divulgence test (missing assertion messages)
* Try to detect assertion failure line number
* Add Sandbox binary that starts an ephemeral postgres instance
This allows us to use the client_server_test bazel macro to run against
the sandbox backed by postgres.
Fixes #1543
* Add Sandbox binary that starts an ephemeral postgres instance
This allows us to use the client_server_test bazel macro to run against
the sandbox backed by postgres.
Fixes #1543
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r311400695
* Remove TlsConfiguration duplicate, move original to commons
* Make assertion more readable
Co-Authored-By: Gerolf Seitz <gerolf.seitz@digitalasset.com>
* Fix build errors introduced in previous commit
- exclude time service tests from reference-v2
- add copyright header to TlsConfiguration
* Complete divulgence test and address review comments
Restores comments from original divulgence tests and strives to be as
close to them as possible.
- Address https://github.com/digital-asset/daml/pull/2282#discussion_r311429169
- Address https://github.com/digital-asset/daml/pull/2282#discussion_r311431156
- Address https://github.com/digital-asset/daml/pull/2282#discussion_r311431913
* Delete old divulgence tests
* Restore methods to fetch contracts by template identifier
* Run conformance tests on in-memory sandbox
* Run conformance tests on the persistent sandbox
* Remove workflow identifier workaround
* New contract keys test (#2452)
* Set channel type for LedgerSession
* Add ContractKeysIT
* Run tests against reference-server v2
* Removed the old ContractKeysIT. However, ...
... I cannot remove ContractKeysChecks completely, because we have
another test path for DARs created prior to DAML-LF 1.6, which doesn't
have the submitter == maintainer restriction for contract keys.
* Use codegen instead of custom code
* Add missing copyright headers
* Drop sandbox conformance test suite (seems to not work on Windows CI)
* Make time simpler
* Test tool tests to run only semantic tests
* Make CI behave more consistently
* Add missing files to run tests on Postrgres
* Fix flaky divulgence test, introduce readable identifiers
* Increase sandbox conformance tests timeout
* Address https://github.com/digital-asset/daml/pull/2282#discussion_r312363246
* Reintroduce test resource extraction
* Read semantic tests from the classpath rather than Bazel
* Use codegen types for ContractKeys integration test
allocateParty returns Primitive.Party and create and exercise also
accept Primitive.Party. This way we don't have to keep a String and
Primitive.Party representation around.
* Bump timeout for sandbox conformance tests
* Remove dependency on Bazel runfiles
2019-08-09 18:00:37 +03:00
|
|
|
"//ledger/test-common",
|
2020-01-06 15:58:56 +03:00
|
|
|
"//libs-scala/direct-execution-context",
|
|
|
|
"@maven//:ch_qos_logback_logback_classic",
|
|
|
|
"@maven//:com_google_protobuf_protobuf_java",
|
|
|
|
"@maven//:com_typesafe_akka_akka_actor_2_12",
|
|
|
|
"@maven//:com_typesafe_akka_akka_stream_2_12",
|
|
|
|
"@maven//:org_scalaz_scalaz_core_2_12",
|
|
|
|
],
|
2019-04-04 11:33:38 +03:00
|
|
|
)
|