load("@exec_properties//:constants.bzl", "LARGE_MACHINE")
load("@rules_java//java:defs.bzl", "java_binary")
load("//tools/base/bazel:bazel.bzl", "iml_module")
load("//tools/base/bazel:kotlin.bzl", "kotlin_library")

# managed by go/iml_to_build
iml_module(
    name = "intellij.android.sync-memory-tests",
    srcs = ["src"],
    iml_files = ["intellij.android.sync-memory-tests.iml"],
    split_test_targets = {
        "Benchmark2000Memory": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.memory.Benchmark2000MemoryTest",
            "exec_properties": LARGE_MACHINE,
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
                "ci:perfgate-win",
                "block-network",
            ],
        },
        "Benchmark2000MemoryMac": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.memory.Benchmark2000MemoryMacTest",
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:studio-mac",
                "exclusive-if-local",
            ],
            "timeout": "long",
        },
        "Benchmark2000KotlinMultiplatformCpu": {
            "test_filer": "com.android.tools.idea.gradle.project.sync.cpu.Benchmark2000KotlinMultiplatformCpuTest",
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
                "block-network",
            ],
        },
        # This test is run in release branch, too but not analyzed due to small number of runs per test
        # A larger number of runs per test allows to detect regressions amongst the noise
        "Benchmark2000Cpu": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.cpu.Benchmark2000CpuTest",
            "exec_properties": LARGE_MACHINE,
            "additional_jvm_args": ["-Xmx6g"],
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
                "ci:perfgate-win",
                "perfgate-release",
                "block-network",
            ],
        },
        "Benchmark2000CpuMac": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.cpu.Benchmark2000CpuMacTest",
            "additional_jvm_args": ["-Xmx6g"],
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:studio-mac",
                "exclusive-if-local",
            ],
            "timeout": "long",
        },
        # Release branch tests with comparison to main branch
        "Benchmark2000CpuReleaseBranch": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.cpu.Benchmark2000CpuTest",
            "exec_properties": LARGE_MACHINE,
            "tags": [
                "perfgate-release",
            ],
            "additional_jvm_args": ["-Drunning.from.release.branch=true"],
        },
        "Benchmark2000MemoryReleaseBranch": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.memory.Benchmark2000MemoryTest",
            "exec_properties": LARGE_MACHINE,
            "tags": [
                "perfgate-release",
            ],
            "additional_jvm_args": ["-Drunning.from.release.branch=true"],
        },
        # Comparison tests
        "Benchmark2000CpuLatestGradleTest": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.cpu.Benchmark2000CpuLatestGradleTest",
            "exec_properties": LARGE_MACHINE,
            "additional_jvm_args": ["-Xmx6g"],
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
                "ci:perfgate-win",
                "block-network",
            ],
            "data": ["//tools/base/build-system:gradle-distrib-latest-snapshot"],
        },
        "Benchmark2000MemoryLatestGradleTest": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.memory.Benchmark2000MemoryLatestGradleTest",
            "exec_properties": LARGE_MACHINE,
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
                "ci:perfgate-win",
                "block-network",
            ],
            "data": ["//tools/base/build-system:gradle-distrib-latest-snapshot"],
        },
        "Benchmark2000CpuLatestKotlinTest": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.cpu.Benchmark2000CpuLatestKotlinTest",
            "exec_properties": LARGE_MACHINE,
            "additional_jvm_args": ["-Xmx6g"],
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
                "ci:perfgate-win",
                "block-network",
            ],
            "data": ["//tools/base/build-system/integration-test:latest_kotlin_gradle_plugin_prebuilts_for_sync_benchmarks"],
        },
        "Benchmark2000MemoryLatestKotlinTest": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.memory.Benchmark2000MemoryLatestKotlinTest",
            "exec_properties": LARGE_MACHINE,
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
                "ci:perfgate-win",
                "block-network",
            ],
            "data": ["//tools/base/build-system/integration-test:latest_kotlin_gradle_plugin_prebuilts_for_sync_benchmarks"],
        },
        # Presubmit tests
        "SyncBenchmarkVersionTest": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.SyncBenchmarkVersionTest",
            "timeout": "long",
        },
        # Tests without regression analyzers, to reduce noise
        "Benchmark200Cpu": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.cpu.Benchmark200CpuTest",
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
                "ci:perfgate-win",
                "block-network",
            ],
        },
        "Benchmark500Cpu": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.cpu.Benchmark500CpuTest",
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
                "ci:perfgate-win",
                "block-network",
            ],
        },
        "Benchmark200Repeated20TimesMemory": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.memory.Benchmark200Repeated20TimesMemoryTest",
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
                "ci:perfgate-win",
                "block-network",
            ],
        },
        "Benchmark1000Memory": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.memory.Benchmark1000MemoryTest",
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
                "block-network",
            ],
        },
        "Benchmark1000Cpu": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.cpu.Benchmark1000CpuTest",
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
                "block-network",
            ],
        },
        # Disabled tests
        "Benchmark4200Cpu": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.cpu.Benchmark4200CpuTest",
            "exec_properties": LARGE_MACHINE,
            "tags": [
                "manual",
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
            ],
        },
        "BenchmarkMultiApp100Cpu": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.cpu.BenchmarkMultiApp100CpuTest",
            "tags": [
                "manual",
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
            ],
        },
        "BenchmarkMultiApp190Cpu": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.cpu.BenchmarkMultiApp190CpuTest",
            "exec_properties": LARGE_MACHINE,
            "additional_jvm_args": ["-Xmx6g"],
            "tags": [
                "manual",
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
            ],
        },
        "Benchmark4200Memory": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.memory.Benchmark4200MemoryTest",
            "exec_properties": LARGE_MACHINE,
            "tags": [
                "manual",
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
            ],
        },
        "Benchmark2000KotlinMultiplatformMemory": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.memory.Benchmark2000KotlinMultiplatformMemoryTest",
            "tags": [
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
            ],
        },
        "BenchmarkMultiApp100Memory": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.memory.BenchmarkMultiApp100MemoryTest",
            "tags": [
                "manual",
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
            ],
        },
        "BenchmarkMultiApp190Memory": {
            "test_filter": "com.android.tools.idea.gradle.project.sync.memory.BenchmarkMultiApp190MemoryTest",
            "tags": [
                "manual",
                "noci:studio-win",
                "noci:studio-linux",
                "ci:perfgate-linux",
            ],
        },
    },
    test_data = [
        "testSrc/com/android/tools/idea/gradle/project/sync/gradle/MeasurementPlugin.kt",
        "//prebuilts/studio/buildbenchmarks:ExtraLarge2022_project",
        "//prebuilts/studio/buildbenchmarks:ExtraLarge_KMP_project",
        "//prebuilts/studio/sdk:build-tools/latest",
        "//prebuilts/studio/sdk:platform-tools",
        "//prebuilts/studio/sdk:platforms/android-32",  # Used for model v1 tests that needs AGP 7.1 (which needs compile sdk 32)
        "//prebuilts/studio/sdk:platforms/latest",
        "//prebuilts/tools/common/eclipse-mat",
        "//tools/adt/idea/memory-usage/src/main/native:liblightweight_heap_traverse",
        "//tools/base/build-system:android_gradle_plugin.zip",
        "//tools/base/build-system:android_gradle_plugin_runtime_dependencies",
        "//tools/base/build-system:gradle-distrib",
        "//tools/base/build-system/integration-test:kotlin_gradle_plugin_prebuilts",
        "//tools/data-binding:data_binding_runtime.zip",
    ],
    # do not sort: must match IML order
    test_deps = [
        "//tools/adt/idea/.idea/libraries:junit4",
        "//tools/adt/idea/adt-testutils:intellij.android.adt.testutils",
        "//tools/adt/idea/android-common:intellij.android.common",
        "//tools/base/flags:studio.android.sdktools.flags",
        "//tools/base/testutils:studio.android.sdktools.testutils",
        "//tools/base/perf-logger:studio.perf-logger",
        "//tools/adt/idea/android-test-framework:intellij.android.testFramework",
        "//tools/adt/idea/android:intellij.android.core",
        "//tools/adt/idea/project-system-gradle:intellij.android.projectSystem.gradle",
        "//tools/adt/idea/memory-usage",
        "//tools/adt/idea/.idea/libraries:javax-inject",
        "//tools/adt/idea/project-system-gradle-sync:intellij.android.projectSystem.gradle.sync",
        "//tools/adt/idea/.idea/libraries:truth",
    ],
    test_jvm_flags = [
        "-Didea.skip.indices.initialization=true",
    ],
    test_srcs = ["testSrc"],
    test_tags = [
        "cpu:4",
    ],
    test_timeout = "eternal",
    visibility = ["//visibility:public"],
    # do not sort: must match IML order
    deps = [
        "@intellij//:intellij-sdk",
        "@intellij//:com.intellij.java",
        "@intellij//:com.intellij.gradle",
    ],
)

java_binary(
    name = "benchmark_summary_tool",
    testonly = True,
    main_class = "com.android.tools.idea.gradle.project.sync.memory.BenchmarkSummaryTool",
    runtime_deps = [":benchmark_summary_lib"],
)

kotlin_library(
    name = "benchmark_summary_lib",
    srcs = ["src/com/android/tools/idea/gradle/project/sync/memory/BenchmarkSummaryTool.kt"],
    deps = ["@maven//:com.google.code.gson.gson"],
)

# See for latest versions: https://services.gradle.org/distributions-snapshots/

# usage (meant to be used with a clean repo):
# for Gradle update
# bazel run //tools/adt/idea/sync-memory-tests:update_benchmark_versions -- gradle 8.10-20240621020500+0000
# for latest nightly version: https://gradle.org/nightly/
# This will generate commits at
# tools/adt/idea
# tools/external/gradle

# for Kotlin update
# bazel run //tools/adt/idea/sync-memory-tests:update_benchmark_versions -- kotlin 2.0.0-dev-6897
# available versions: https://packages.jetbrains.team/maven/p/kt/dev/org/jetbrains/kotlin/kotlin-compiler/maven-metadata.xml
# This one might take a while since maven_fetch.sh takes some time
# This will generate commits at
# tools/adt/idea
# tools/base
# prebuilts/tools
java_binary(
    name = "update_benchmark_versions",
    testonly = True,
    main_class = "com.android.tools.idea.gradle.project.sync.UpdateBenchmarkVersionsKt",
    runtime_deps = [":update_benchmark_versions_lib"],
)

kotlin_library(
    name = "update_benchmark_versions_lib",
    srcs = ["src/com/android/tools/idea/gradle/project/sync/UpdateBenchmarkVersions.kt"],
)
