daml/daml-lf/engine/BUILD.bazel
2022-06-09 13:46:27 +02:00

155 lines
4.8 KiB
Python

# Copyright (c) 2022 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
load(
"//bazel_tools:scala.bzl",
"da_scala_library",
"da_scala_test",
"da_scala_test_suite",
"lf_scalacopts",
"lf_scalacopts_stricter",
)
da_scala_library(
name = "engine",
srcs = glob(["src/main/**/*.scala"]),
scala_deps = [
"@maven//:org_scalaz_scalaz_core",
"@maven//:org_typelevel_paiges_core",
],
scalacopts = lf_scalacopts_stricter,
tags = ["maven_coordinates=com.daml:daml-lf-engine:__VERSION__"],
visibility = ["//visibility:public"],
deps = [
"//daml-lf/data",
"//daml-lf/interpreter",
"//daml-lf/language",
"//daml-lf/transaction",
"//daml-lf/validation",
"//libs-scala/contextualized-logging",
"//libs-scala/nameof",
"//libs-scala/scala-utils",
"@maven//:com_google_protobuf_protobuf_java",
],
)
da_scala_test_suite(
name = "tests",
srcs = glob(
[
"src/test/**/*Spec.scala",
"src/test/**/*Test.scala",
],
exclude = [
"src/test/**/LargeTransactionTest.scala",
"src/test/**/MinVersionTest.scala",
],
),
data = [
"//daml-lf/tests:AuthTests.dar",
"//daml-lf/tests:BasicTests.dar",
"//daml-lf/tests:Exceptions.dar",
"//daml-lf/tests:InterfaceViews.dar",
"//daml-lf/tests:Interfaces.dar",
"//daml-lf/tests:MultiKeys.dar",
"//daml-lf/tests:Optional.dar",
"//daml-lf/tests:ReinterpretTests.dar",
],
scala_deps = [
"@maven//:com_storm_enroute_scalameter_core",
"@maven//:org_scalatest_scalatest_core",
"@maven//:org_scalatest_scalatest_matchers_core",
"@maven//:org_scalatest_scalatest_shouldmatchers",
"@maven//:org_scalatest_scalatest_wordspec",
"@maven//:org_scalaz_scalaz_core",
],
scalacopts = lf_scalacopts,
deps = [
":engine",
"//bazel_tools/runfiles:scala_runfiles",
"//daml-lf/archive:daml_lf_1.dev_archive_proto_java",
"//daml-lf/archive:daml_lf_archive_reader",
"//daml-lf/data",
"//daml-lf/interpreter",
"//daml-lf/language",
"//daml-lf/parser",
"//daml-lf/transaction",
"//daml-lf/transaction-test-lib",
"//libs-scala/contextualized-logging",
"//libs-scala/logging-entries",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:org_scalatest_scalatest_compatible",
],
)
da_scala_test(
name = "test-large-transaction",
timeout = "moderate",
srcs = glob([
"src/test/**/LargeTransactionTest.scala",
"src/test/**/InMemoryPrivateLedgerData.scala",
]),
data = [
"//daml-lf/tests:LargeTransaction.dar",
],
# We setup a large heap size to reduce as much as possible GC overheads.
initial_heap_size = "2g",
max_heap_size = "2g",
scala_deps = [
"@maven//:com_storm_enroute_scalameter_core",
"@maven//:org_scalatest_scalatest_core",
"@maven//:org_scalatest_scalatest_matchers_core",
"@maven//:org_scalatest_scalatest_shouldmatchers",
"@maven//:org_scalatest_scalatest_wordspec",
"@maven//:org_scalaz_scalaz_core",
],
scalacopts = lf_scalacopts,
deps = [
":engine",
"//bazel_tools/runfiles:scala_runfiles",
"//daml-lf/archive:daml_lf_archive_reader",
"//daml-lf/data",
"//daml-lf/interpreter",
"//daml-lf/language",
"//daml-lf/transaction",
"//libs-scala/contextualized-logging",
"@maven//:org_scalatest_scalatest_compatible",
],
)
da_scala_test(
name = "test-min-version",
srcs = glob([
"src/test/**/MinVersionTest.scala",
]),
data = [
"//ledger/test-common:dar-files-1.14",
],
scala_deps = [
"@maven//:com_typesafe_akka_akka_actor",
"@maven//:com_typesafe_akka_akka_stream",
],
scalacopts = lf_scalacopts,
deps = [
":engine",
"//bazel_tools/runfiles:scala_runfiles",
"//daml-lf/archive:daml_lf_archive_reader",
"//daml-lf/data",
"//daml-lf/language",
"//daml-lf/transaction",
"//language-support/scala/bindings-akka",
"//ledger-api/rs-grpc-bridge",
"//ledger-api/testing-utils",
"//ledger/ledger-api-client",
"//ledger/ledger-api-common",
"//ledger/ledger-resources",
"//ledger/ledger-runner-common",
"//ledger/participant-integration-api",
"//ledger/sandbox-on-x",
"//ledger/test-common:dar-files-1.14-lib",
"//libs-scala/ports",
"//libs-scala/resources",
"@maven//:com_google_protobuf_protobuf_java",
],
)