# -*- mode: python -*- Import("env") env = env.Clone() env.Library( target="query_ce", source=[ 'ce_histogram.cpp', 'ce_sampling.cpp', 'collection_statistics_impl.cpp', 'histogram_estimation.cpp', 'stats_cache.cpp', 'stats_cache_loader_impl.cpp', ], LIBDEPS_PRIVATE=[ '$BUILD_DIR/mongo/db/dbdirectclient', '$BUILD_DIR/mongo/db/exec/sbe/query_sbe_abt', '$BUILD_DIR/mongo/db/query/optimizer/optimizer', 'query_stats', 'stats_serialization', ], ) env.Library( target="query_stats", source=[ 'array_histogram.cpp', 'scalar_histogram.cpp', 'value_utils.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/db/exec/sbe/query_sbe_values', ], ) env.Library( target="query_stats_gen", source=[ 'max_diff.cpp', ], LIBDEPS=[ 'query_stats', 'stats_serialization', ], ) env.Library( target="ce_test_utils", source=[ 'ce_test_utils.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/exec/sbe/query_sbe_values', '$BUILD_DIR/mongo/db/exec/sbe/sbe_abt_test_util', '$BUILD_DIR/mongo/db/query/optimizer/unit_test_utils', "$BUILD_DIR/mongo/unittest/unittest", 'query_ce', 'query_stats', ], ) env.Library( target="stats_serialization", source=[ 'stats.idl', 'stats_serialization_utils.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/exec/sbe/query_sbe_values', '$BUILD_DIR/mongo/db/server_base', '$BUILD_DIR/mongo/db/service_context', ], ) env.CppUnitTest( target="ce_histogram_test", source=[ "ce_histogram_test.cpp", "collection_statistics_mock.cpp", ], LIBDEPS=[ 'ce_test_utils', ], ) env.CppUnitTest( target="ce_interpolation_test", source=[ "ce_interpolation_test.cpp", ], LIBDEPS=[ 'ce_test_utils', ], ) env.CppUnitTest( target="ce_heuristic_test", source=[ "ce_heuristic_test.cpp", ], LIBDEPS=[ 'ce_test_utils', ], ) env.CppUnitTest( target="ce_array_data_test", source=[ "ce_array_data_test.cpp", ], LIBDEPS=[ 'ce_test_utils', ], ) env.CppUnitTest( target='stats_cache_loader_test', source=[ 'stats_cache_loader_test.cpp', 'stats_cache_loader_test_fixture.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/db/auth/authmocks', '$BUILD_DIR/mongo/db/catalog/collection_crud', '$BUILD_DIR/mongo/db/commands/test_commands_enabled', '$BUILD_DIR/mongo/db/index_builds_coordinator_mongod', '$BUILD_DIR/mongo/db/multitenancy', '$BUILD_DIR/mongo/db/op_observer/op_observer', '$BUILD_DIR/mongo/db/op_observer/op_observer_impl', '$BUILD_DIR/mongo/db/query/datetime/date_time_support', '$BUILD_DIR/mongo/db/query/query_test_service_context', '$BUILD_DIR/mongo/db/query_expressions', '$BUILD_DIR/mongo/db/repl/drop_pending_collection_reaper', '$BUILD_DIR/mongo/db/repl/oplog', '$BUILD_DIR/mongo/db/repl/optime', '$BUILD_DIR/mongo/db/repl/repl_coordinator_interface', '$BUILD_DIR/mongo/db/repl/replmocks', '$BUILD_DIR/mongo/db/repl/storage_interface_impl', '$BUILD_DIR/mongo/db/server_base', '$BUILD_DIR/mongo/db/service_context', '$BUILD_DIR/mongo/db/service_context_d_test_fixture', '$BUILD_DIR/mongo/db/service_context_test_fixture', '$BUILD_DIR/mongo/db/shard_role', '$BUILD_DIR/mongo/db/storage/wiredtiger/storage_wiredtiger', '$BUILD_DIR/mongo/db/timeseries/timeseries_options', '$BUILD_DIR/mongo/unittest/unittest', '$BUILD_DIR/mongo/util/clock_source_mock', '$BUILD_DIR/mongo/util/fail_point', '$BUILD_DIR/mongo/util/pcre_wrapper', 'query_ce', 'query_stats', 'stats_serialization', ], ) env.CppUnitTest( target="stats_cache_test", source=[ "stats_cache_test.cpp", "stats_cache_loader_mock.cpp", ], LIBDEPS=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/service_context', 'ce_test_utils', 'query_ce', ], ) env.CppUnitTest( target="stats_path_test", source=[ "stats_path_test.cpp", ], LIBDEPS=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/service_context', 'ce_test_utils', 'stats_serialization', ], ) env.Library( target="query_stats_test_utils", source=[ 'rand_utils.cpp', 'rand_utils_new.cpp', 'maxdiff_test_utils.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/exec/sbe/sbe_abt_test_util', "$BUILD_DIR/mongo/unittest/unittest", 'query_ce', 'query_stats', 'query_stats_gen', 'stats_serialization', ], ) env.CppUnitTest( target="maxdiff_histogram_test", source=[ 'maxdiff_histogram_test.cpp', ], LIBDEPS=[ 'query_stats_test_utils', ], )