diff --git a/config.example.json b/config.example.json index 3b4413a..aea6078 100755 --- a/config.example.json +++ b/config.example.json @@ -1,10 +1,10 @@ { "duckmail_api_key": "", "cloudflare_api_base": "https://temp-mail.example.com", - "cloudflare_api_key": "your-admin-password", - "cloudflare_auth_mode": "x-admin-auth", + "cloudflare_api_key": "", + "cloudflare_auth_mode": "none", "cloudflare_path_domains": "/api/domains", - "cloudflare_path_accounts": "/admin/new_address", + "cloudflare_path_accounts": "/api/new_address", "cloudflare_path_token": "/api/token", "cloudflare_path_messages": "/api/mails", "proxy": "", diff --git a/tests/test_cloudflare_admin_api.py b/tests/test_cloudflare_admin_api.py index f2c69b5..f99cd7e 100644 --- a/tests/test_cloudflare_admin_api.py +++ b/tests/test_cloudflare_admin_api.py @@ -53,6 +53,29 @@ class CloudflareAdminCreateTests(unittest.TestCase): self.assertEqual(captured["headers"]["Content-Type"], "application/json") self.assertEqual(captured["headers"]["x-admin-auth"], "admin-secret") + def test_app_keeps_anonymous_new_address_with_none_auth(self): + app.config.update({ + "cloudflare_api_key": "", + "cloudflare_auth_mode": "none", + "cloudflare_path_accounts": "/api/new_address", + "defaultDomains": "vitassk.com", + }) + captured = {} + + def fake_post(url, **kwargs): + captured["url"] = url + captured.update(kwargs) + return DummyResponse({"address": "anon@vitassk.com", "jwt": "anon-jwt"}) + + with patch.object(app, "http_post", side_effect=fake_post): + address, jwt = app.cloudflare_create_temp_address("https://temp-mail.ikun.day") + + self.assertEqual(address, "anon@vitassk.com") + self.assertEqual(jwt, "anon-jwt") + self.assertEqual(captured["url"], "https://temp-mail.ikun.day/api/new_address") + self.assertEqual(captured["json"], {"domain": "vitassk.com"}) + self.assertEqual(captured["headers"], {"Content-Type": "application/json"}) + def test_debug_tool_can_create_address_through_admin_api(self): captured = {}