# -*- mode: python -*-

Import('env')

env = env.Clone()

env.Library(
    target='cryptd_query_analysis',
    source=[
        'aggregate_expression_intender.cpp',
        'collator_factory_cryptd.cpp',
        'encryption_schema_tree.cpp',
        'expression_schema_walker.cpp',
        'fle_match_expression.cpp',
        'fle_pipeline.cpp',
        'query_analysis.cpp',
        'resolved_encryption_info.cpp',
    ],
    LIBDEPS=[
        '$BUILD_DIR/mongo/base',
        '$BUILD_DIR/mongo/db/commands',
        '$BUILD_DIR/mongo/db/matcher/expressions',
        '$BUILD_DIR/mongo/db/ops/parsed_update',
        '$BUILD_DIR/mongo/db/ops/write_ops_parsers',
        '$BUILD_DIR/mongo/db/pipeline/pipeline',
        '$BUILD_DIR/mongo/db/query/command_request_response',
        '$BUILD_DIR/mongo/db/query/distinct_command_idl',
        '$BUILD_DIR/mongo/db/update/update_driver',
    ]
)

env.CppUnitTest(
    target='enterprise_fle_query_analysis_test',
    source=[
        'encryption_schema_tree_test.cpp',
        'expression_analysis_test.cpp',
        'fle_match_expression_test.cpp',
        'fle_pipeline_test.cpp',
        'query_analysis_test.cpp',
        'aggregate_expression_intender_test.cpp',
    ],
    LIBDEPS_PRIVATE=[
        '$BUILD_DIR/mongo/db/query/query_test_service_context',
        '$BUILD_DIR/mongo/db/service_context_test_fixture',
        'cryptd_query_analysis',
    ],
)
