# Includes the jstests in distribution tarballs generated by SCons

import os
from collections import defaultdict

Import("env")
Import("get_option")

# TODO(SERVER-45348): Re-enable installation of the jstests under the
# self-testable installs project.
Return()

env = env.Clone()

if not get_option("install-mode") == "hygienic":
    Return()

jstests = env.Glob("**/*.js")

# Group by directory to avoid making a million calls to AutoInstall
jstests_by_dir = defaultdict(list)
for jstest in jstests:
    jstests_by_dir[jstest.dir].append(jstest)

for directory, files in jstests_by_dir.items():
    env.AutoInstall(
        target="$PREFIX_SHAREDIR/jstests/" + str(directory),
        source=files,
        AIB_COMPONENT="jstests",
        AIB_ROLE="runtime",
        AIB_COMPONENTS_EXTRA=[
            "tests",
        ],
    )
