28 lines
1.1 KiB
Python
28 lines
1.1 KiB
Python
import tempfile
|
|
from pathlib import Path
|
|
|
|
|
|
def test_webhook_endpoint(client, added_webhook_test):
|
|
# The test is as follows:
|
|
# 1. The flow when run will get a "path" from the payload and save a file with the path as the name.
|
|
# We will create a temporary file path and send it to the webhook endpoint, then check if the file exists.
|
|
# 2. we will delete the file, then send an invalid payload to the webhook endpoint and check if the file exists.
|
|
endpoint_name = added_webhook_test["endpoint_name"]
|
|
endpoint = f"api/v1/webhook/{endpoint_name}"
|
|
# Create a temporary file
|
|
with tempfile.TemporaryDirectory() as tmp:
|
|
file_path = Path(tmp) / "test_file.txt"
|
|
|
|
payload = {"path": str(file_path)}
|
|
|
|
response = client.post(endpoint, json=payload)
|
|
assert response.status_code == 202
|
|
assert file_path.exists()
|
|
|
|
assert not file_path.exists()
|
|
|
|
# Send an invalid payload
|
|
payload = {"invalid_key": "invalid_value"}
|
|
response = client.post(endpoint, json=payload)
|
|
assert response.status_code == 202
|
|
assert not file_path.exists()
|