import requests import json def create_account(username, password): url = "http://localhost:8080/users" data = {"username": username, "password": password} headers = {"Content-Type": "application/json"} response = requests.post(url, data=json.dumps(data), headers=headers) print("Create Account Status:", response.status_code) try: print("Create Account Response:", response.json()) except Exception: print("Create Account Response Text:", response.text) return response def check_mailbox(username, password): url = f"http://localhost:8080/mailbox?user={username}" response = requests.get(url, auth=(username, password)) print("\nMailbox Status:", response.status_code) try: emails = response.json() print(f"Mailbox for {username}:") for email in emails: print(json.dumps(email, indent=2)) except Exception: print("Mailbox Response Text:", response.text) return response url = "http://localhost:8080/email" email = { "from": "alice", "to": "eric", "subject": "Hello from Python client", "body": "This is a test email sent from the Python client." } headers = {"Content-Type": "application/json"} # Set your test username and password here username = "eric" password = "1234" # Replace with the actual password for 'bob' # Uncomment to create the account before sending email # print(create_account(username, password)) response = requests.post(url, data=json.dumps(email), headers=headers, auth=(username, password)) print(check_mailbox(username, password)) print("Status Code:", response.status_code) try: print("Response:", response.json()) except Exception: print("Response Text:", response.text) # Uncomment to check mailbox after sending email # check_mailbox(username, password)