mirror of
https://github.com/ihabunek/toot.git
synced 2024-09-22 04:25:55 -04:00
Add test for scheduled statuses
This commit is contained in:
parent
d76a2ee967
commit
6ae2ed623a
@ -20,6 +20,7 @@ import re
|
||||
import time
|
||||
import uuid
|
||||
|
||||
from datetime import datetime, timedelta, timezone
|
||||
from os import path
|
||||
from toot import CLIENT_NAME, CLIENT_WEBSITE, api, App, User
|
||||
from toot.console import run_command
|
||||
@ -145,6 +146,17 @@ def test_post_visibility(app, user, run):
|
||||
assert status["visibility"] == visibility
|
||||
|
||||
|
||||
def test_post_scheduled(app, user, run):
|
||||
scheduled_at = datetime.now(timezone.utc).replace(microsecond=0) + timedelta(minutes=10)
|
||||
|
||||
out = run("post", "foo", "--scheduled-at", scheduled_at.isoformat())
|
||||
assert "Toot scheduled for" in out
|
||||
|
||||
[status] = api.scheduled_statuses(app, user)
|
||||
assert status["params"]["text"] == "foo"
|
||||
assert datetime.strptime(status["scheduled_at"], "%Y-%m-%dT%H:%M:%S.%f%z") == scheduled_at
|
||||
|
||||
|
||||
def test_media_attachments(app, user, run):
|
||||
assets_dir = path.realpath(path.join(path.dirname(__file__), "assets"))
|
||||
|
||||
|
@ -161,6 +161,14 @@ def fetch_status(app, user, id):
|
||||
return http.get(app, user, f"/api/v1/statuses/{id}").json()
|
||||
|
||||
|
||||
def scheduled_statuses(app, user):
|
||||
"""
|
||||
List scheduled statuses
|
||||
https://docs.joinmastodon.org/methods/scheduled_statuses/#get
|
||||
"""
|
||||
return http.get(app, user, "/api/v1/scheduled_statuses").json()
|
||||
|
||||
|
||||
def delete_status(app, user, status_id):
|
||||
"""
|
||||
Deletes a status with given ID.
|
||||
|
Loading…
Reference in New Issue
Block a user