First
[anni] / config / test.exs
1 import Config
2
3 # We don't run a server during test. If one is required,
4 # you can enable the server option below.
5 config :pleroma, Pleroma.Web.Endpoint,
6   http: [port: 4001],
7   url: [port: 4001],
8   server: true
9
10 # Disable captha for tests
11 config :pleroma, Pleroma.Captcha,
12   # It should not be enabled for automatic tests
13   enabled: false,
14   # A fake captcha service for tests
15   method: Pleroma.Captcha.Mock
16
17 # Print only warnings and errors during test
18 config :logger, :console,
19   level: :warn,
20   format: "\n[$level] $message\n"
21
22 config :pleroma, :auth, oauth_consumer_strategies: []
23
24 config :pleroma, Pleroma.Upload,
25   filters: [],
26   link_name: false,
27   default_description: :filename
28
29 config :pleroma, Pleroma.Uploaders.Local, uploads: "test/uploads"
30
31 config :pleroma, Pleroma.Emails.Mailer, adapter: Swoosh.Adapters.Test, enabled: true
32
33 config :pleroma, :instance,
34   email: "admin@example.com",
35   notify_email: "noreply@example.com",
36   skip_thread_containment: false,
37   federating: false,
38   external_user_synchronization: false,
39   static_dir: "test/instance_static/"
40
41 config :pleroma, :activitypub, sign_object_fetches: false, follow_handshake_timeout: 0
42
43 # Configure your database
44 config :pleroma, Pleroma.Repo,
45   adapter: Ecto.Adapters.Postgres,
46   username: "postgres",
47   password: "postgres",
48   database: "pleroma_test",
49   hostname: System.get_env("DB_HOST") || "localhost",
50   port: System.get_env("DB_PORT") || "5432",
51   pool: Ecto.Adapters.SQL.Sandbox,
52   pool_size: 50
53
54 config :pleroma, :dangerzone, override_repo_pool_size: true
55
56 # Reduce hash rounds for testing
57 config :pleroma, :password, iterations: 1
58
59 config :tesla, adapter: Tesla.Mock
60
61 config :pleroma, :rich_media,
62   enabled: false,
63   ignore_hosts: [],
64   ignore_tld: ["local", "localdomain", "lan"]
65
66 config :pleroma, :instance,
67   multi_factor_authentication: [
68     totp: [
69       # digits 6 or 8
70       digits: 6,
71       period: 30
72     ],
73     backup_codes: [
74       number: 2,
75       length: 6
76     ]
77   ]
78
79 config :web_push_encryption, :vapid_details,
80   subject: "mailto:administrator@example.com",
81   public_key:
82     "BLH1qVhJItRGCfxgTtONfsOKDc9VRAraXw-3NsmjMngWSh7NxOizN6bkuRA7iLTMPS82PjwJAr3UoK9EC1IFrz4",
83   private_key: "_-XZ0iebPrRfZ_o0-IatTdszYa8VCH1yLN-JauK7HHA"
84
85 config :pleroma, Oban, testing: :manual
86
87 config :pleroma, Pleroma.ScheduledActivity,
88   daily_user_limit: 2,
89   total_user_limit: 3,
90   enabled: false
91
92 config :pleroma, :rate_limit, %{}
93
94 config :pleroma, :http_security, report_uri: "https://endpoint.com"
95
96 config :pleroma, :http, send_user_agent: false
97
98 rum_enabled = System.get_env("RUM_ENABLED") == "true"
99 config :pleroma, :database, rum_enabled: rum_enabled
100 IO.puts("RUM enabled: #{rum_enabled}")
101
102 config :joken, default_signer: "yU8uHKq+yyAkZ11Hx//jcdacWc8yQ1bxAAGrplzB0Zwwjkp35v0RK9SO8WTPr6QZ"
103
104 config :pleroma, Pleroma.ReverseProxy.Client, Pleroma.ReverseProxy.ClientMock
105
106 config :pleroma, :modules, runtime_dir: "test/fixtures/modules"
107
108 config :pleroma, Pleroma.Gun, Pleroma.GunMock
109
110 config :pleroma, Pleroma.Emails.NewUsersDigestEmail, enabled: true
111
112 config :pleroma, Pleroma.Web.Plugs.RemoteIp, enabled: false
113
114 config :pleroma, Pleroma.Web.ApiSpec.CastAndValidate, strict: true
115
116 config :tzdata, :autoupdate, :disabled
117
118 config :pleroma, :mrf, policies: []
119
120 config :pleroma, :pipeline,
121   object_validator: Pleroma.Web.ActivityPub.ObjectValidatorMock,
122   mrf: Pleroma.Web.ActivityPub.MRFMock,
123   activity_pub: Pleroma.Web.ActivityPub.ActivityPubMock,
124   side_effects: Pleroma.Web.ActivityPub.SideEffectsMock,
125   federator: Pleroma.Web.FederatorMock,
126   config: Pleroma.ConfigMock
127
128 config :pleroma, :cachex, provider: Pleroma.CachexMock
129
130 config :pleroma, Pleroma.Web.WebFinger, update_nickname_on_user_fetch: false
131
132 config :pleroma, :side_effects,
133   ap_streamer: Pleroma.Web.ActivityPub.ActivityPubMock,
134   logger: Pleroma.LoggerMock
135
136 # Reduce recompilation time
137 # https://dashbit.co/blog/speeding-up-re-compilation-of-elixir-projects
138 config :phoenix, :plug_init_mode, :runtime
139
140 if File.exists?("./config/test.secret.exs") do
141   import_config "test.secret.exs"
142 else
143   IO.puts(
144     "You may want to create test.secret.exs to declare custom database connection parameters."
145   )
146 end