import Config

Code.require_file("support/bootstrap.exs", __DIR__)

BullX.Config.Bootstrap.load_dotenv!(root: Path.expand("..", __DIR__), env: :test)

# Configure your database
#
# The MIX_TEST_PARTITION environment variable can be used
# to provide built-in test partitioning in CI environment.
# Run `mix help test` for more information.
config :bullx, BullX.Repo,
  url: BullX.Config.Bootstrap.env!("DATABASE_URL", & &1),
  database: "bullx_test#{BullX.Config.Bootstrap.env_string("MIX_TEST_PARTITION")}",
  pool: Ecto.Adapters.SQL.Sandbox,
  pool_size: System.schedulers_online() * 2

# We don't run a server during test. If one is required,
# you can enable the server option below.
config :bullx, BullXWeb.Endpoint,
  http: [ip: {127, 0, 0, 1}, port: 4002],
  server: false

# Print only warnings and errors during test
config :logger, level: :warning

# Initialize plugs at runtime for faster test compilation
config :phoenix, :plug_init_mode, :runtime

# Sort query params output of verified routes for robust url comparisons
config :phoenix,
  sort_verified_routes_query_params: true

config :bullx, :mail_box,
  runtime: true,
  runtime_dispatcher: false,
  runtime_control_dispatcher: false,
  runtime_interval_ms: 500,
  runtime_claim_limit: 20,
  stream_retention_seconds: 60,
  max_stream_chunk_bytes: 1_024

config :bullx, :ai_agent_runtime,
  ambient_batch_worker: false,
  daily_reset_worker: false
