Add more streaming events, some tests
This commit is contained in:
parent
6d4ec618f2
commit
1d5b308016
@ -22,18 +22,50 @@ class StreamListener(object):
|
|||||||
Mastodon.hashtag_stream()."""
|
Mastodon.hashtag_stream()."""
|
||||||
|
|
||||||
def on_update(self, status):
|
def on_update(self, status):
|
||||||
"""A new status has appeared. 'status' is the parsed JSON dictionary
|
"""A new status has appeared. `status` is the parsed `status dict`
|
||||||
describing the status."""
|
describing the status."""
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
def on_delete(self, status_id):
|
||||||
|
"""A status has been deleted. `status_id` is the status' integer ID."""
|
||||||
|
pass
|
||||||
|
|
||||||
|
def on_notification(self, notification):
|
||||||
|
"""A new notification. `notification` is the parsed `notification dict`
|
||||||
|
describing the notification."""
|
||||||
|
pass
|
||||||
|
|
||||||
|
def on_filters_changed(self):
|
||||||
|
"""Filters have changed. Does not contain a payload, you will have to
|
||||||
|
refetch filters yourself."""
|
||||||
|
pass
|
||||||
|
|
||||||
|
def on_conversation(self, conversation):
|
||||||
|
"""A direct message (in the direct stream) has been received. `conversation`
|
||||||
|
is the parsed `conversation dict` dictionary describing the conversation"""
|
||||||
|
pass
|
||||||
|
|
||||||
|
def on_announcement(self, annoucement):
|
||||||
|
"""A new announcement has been published. `announcement` is the parsed
|
||||||
|
`announcement dict` describing the newly posted announcement."""
|
||||||
|
pass
|
||||||
|
|
||||||
|
def on_announcement_reaction(self, TODO):
|
||||||
|
"""Someone has reacted to an announcement. TODO: what is payload lol"""
|
||||||
|
pass
|
||||||
|
|
||||||
|
def on_announcement_delete(self, annoucement_id):
|
||||||
|
"""An announcement has been deleted. `annoucement_id` is the id of the
|
||||||
|
deleted announcement."""
|
||||||
|
pass
|
||||||
|
|
||||||
def on_status_update(self, status):
|
def on_status_update(self, status):
|
||||||
"""A status has been edited. 'status' is the parsed JSON dictionary
|
"""A status has been edited. 'status' is the parsed JSON dictionary
|
||||||
describing the updated status."""
|
describing the updated status."""
|
||||||
pass
|
pass
|
||||||
|
|
||||||
def on_notification(self, notification):
|
def on_encrypted_message(self, unclear):
|
||||||
"""A new notification. 'notification' is the parsed JSON dictionary
|
"""An encrypted message has been received. Currently unused."""
|
||||||
describing the notification."""
|
|
||||||
pass
|
pass
|
||||||
|
|
||||||
def on_abort(self, err):
|
def on_abort(self, err):
|
||||||
@ -47,15 +79,6 @@ class StreamListener(object):
|
|||||||
"""
|
"""
|
||||||
pass
|
pass
|
||||||
|
|
||||||
def on_delete(self, status_id):
|
|
||||||
"""A status has been deleted. status_id is the status' integer ID."""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def on_conversation(self, conversation):
|
|
||||||
"""A direct message (in the direct stream) has been received. conversation
|
|
||||||
contains the resulting conversation dict."""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def on_unknown_event(self, name, unknown_event=None):
|
def on_unknown_event(self, name, unknown_event=None):
|
||||||
"""An unknown mastodon API event has been received. The name contains the event-name and unknown_event
|
"""An unknown mastodon API event has been received. The name contains the event-name and unknown_event
|
||||||
contains the content of the unknown event.
|
contains the content of the unknown event.
|
||||||
@ -148,8 +171,7 @@ class StreamListener(object):
|
|||||||
for_stream = json.loads(event['stream'])
|
for_stream = json.loads(event['stream'])
|
||||||
except:
|
except:
|
||||||
for_stream = None
|
for_stream = None
|
||||||
payload = json.loads(
|
payload = json.loads(data, object_hook=Mastodon._Mastodon__json_hooks)
|
||||||
data, object_hook=Mastodon._Mastodon__json_hooks)
|
|
||||||
except KeyError as err:
|
except KeyError as err:
|
||||||
exception = MastodonMalformedEventError(
|
exception = MastodonMalformedEventError(
|
||||||
'Missing field', err.args[0], event)
|
'Missing field', err.args[0], event)
|
||||||
@ -188,11 +210,13 @@ class StreamListener(object):
|
|||||||
handler(name, payload, for_stream)
|
handler(name, payload, for_stream)
|
||||||
else:
|
else:
|
||||||
if handler != self.on_unknown_event:
|
if handler != self.on_unknown_event:
|
||||||
handler(payload)
|
if handler == self.on_filters_changed:
|
||||||
|
handler()
|
||||||
|
else:
|
||||||
|
handler(payload)
|
||||||
else:
|
else:
|
||||||
handler(name, payload)
|
handler(name, payload)
|
||||||
|
|
||||||
|
|
||||||
class CallbackStreamListener(StreamListener):
|
class CallbackStreamListener(StreamListener):
|
||||||
"""
|
"""
|
||||||
Simple callback stream handler class.
|
Simple callback stream handler class.
|
||||||
@ -202,15 +226,34 @@ class CallbackStreamListener(StreamListener):
|
|||||||
for diagnostics.
|
for diagnostics.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def __init__(self, update_handler=None, local_update_handler=None, delete_handler=None, notification_handler=None, conversation_handler=None, unknown_event_handler=None, status_update_handler=None):
|
def __init__(self,
|
||||||
|
update_handler=None,
|
||||||
|
local_update_handler=None,
|
||||||
|
delete_handler=None,
|
||||||
|
notification_handler=None,
|
||||||
|
conversation_handler=None,
|
||||||
|
unknown_event_handler=None,
|
||||||
|
status_update_handler=None,
|
||||||
|
filters_changed_handler=None,
|
||||||
|
announcement_handler=None,
|
||||||
|
announcement_reaction_handler=None,
|
||||||
|
announcement_delete_handler=None,
|
||||||
|
encryted_message_handler=None
|
||||||
|
|
||||||
|
):
|
||||||
super(CallbackStreamListener, self).__init__()
|
super(CallbackStreamListener, self).__init__()
|
||||||
self.update_handler = update_handler
|
self.update_handler = update_handler
|
||||||
self.local_update_handler = local_update_handler
|
self.local_update_handler = local_update_handler
|
||||||
self.delete_handler = delete_handler
|
self.delete_handler = delete_handler
|
||||||
self.notification_handler = notification_handler
|
self.notification_handler = notification_handler
|
||||||
|
self.filters_changed_handler = filters_changed_handler
|
||||||
self.conversation_handler = conversation_handler
|
self.conversation_handler = conversation_handler
|
||||||
self.unknown_event_handler = unknown_event_handler
|
self.unknown_event_handler = unknown_event_handler
|
||||||
self.status_update_handler = status_update_handler
|
self.status_update_handler = status_update_handler
|
||||||
|
self.announcement_handler = announcement_handler
|
||||||
|
self.announcement_reaction_handler = announcement_reaction_handler
|
||||||
|
self.announcement_delete_handler = announcement_delete_handler
|
||||||
|
self.encryted_message_handler = encryted_message_handler
|
||||||
|
|
||||||
def on_update(self, status):
|
def on_update(self, status):
|
||||||
if self.update_handler is not None:
|
if self.update_handler is not None:
|
||||||
@ -233,14 +276,34 @@ class CallbackStreamListener(StreamListener):
|
|||||||
if self.notification_handler is not None:
|
if self.notification_handler is not None:
|
||||||
self.notification_handler(notification)
|
self.notification_handler(notification)
|
||||||
|
|
||||||
|
def on_filters_changed(self):
|
||||||
|
if self.filters_changed_handler is not None:
|
||||||
|
self.filters_changed_handler()
|
||||||
|
|
||||||
def on_conversation(self, conversation):
|
def on_conversation(self, conversation):
|
||||||
if self.conversation_handler is not None:
|
if self.conversation_handler is not None:
|
||||||
self.conversation_handler(conversation)
|
self.conversation_handler(conversation)
|
||||||
|
|
||||||
def on_unknown_event(self, name, unknown_event=None):
|
def on_announcement(self, annoucement):
|
||||||
if self.unknown_event_handler is not None:
|
if self.announcement_handler is not None:
|
||||||
self.unknown_event_handler(name, unknown_event)
|
self.announcement_handler(annoucement)
|
||||||
|
|
||||||
|
def on_announcement_reaction(self, TODO):
|
||||||
|
if self.announcement_reaction_handler is not None:
|
||||||
|
self.announcement_reaction_handler(TODO)
|
||||||
|
|
||||||
|
def on_announcement_delete(self, annoucement_id):
|
||||||
|
if self.announcement_delete_handler is not None:
|
||||||
|
self.announcement_delete_handler(annoucement_id)
|
||||||
|
|
||||||
def on_status_update(self, status):
|
def on_status_update(self, status):
|
||||||
if self.status_update_handler is not None:
|
if self.status_update_handler is not None:
|
||||||
self.status_update_handler(status)
|
self.status_update_handler(status)
|
||||||
|
|
||||||
|
def on_encrypted_message(self, unclear):
|
||||||
|
if self.encryted_message_handler is not None:
|
||||||
|
self.encryted_message_handler(unclear)
|
||||||
|
|
||||||
|
def on_unknown_event(self, name, unknown_event=None):
|
||||||
|
if self.unknown_event_handler is not None:
|
||||||
|
self.unknown_event_handler(name, unknown_event)
|
@ -1,527 +0,0 @@
|
|||||||
interactions:
|
|
||||||
- request:
|
|
||||||
body: null
|
|
||||||
headers:
|
|
||||||
Accept:
|
|
||||||
- '*/*'
|
|
||||||
Accept-Encoding:
|
|
||||||
- gzip, deflate
|
|
||||||
Authorization:
|
|
||||||
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN_2
|
|
||||||
Connection:
|
|
||||||
- keep-alive
|
|
||||||
User-Agent:
|
|
||||||
- tests/v311
|
|
||||||
method: GET
|
|
||||||
uri: http://localhost:3000/api/v1/accounts/verify_credentials
|
|
||||||
response:
|
|
||||||
body:
|
|
||||||
string: '{"id":"109367691027217373","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-19T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":1,"last_status_at":"2022-11-19","noindex":false,"source":{"privacy":"public","sensitive":false,"language":null,"note":"","fields":[],"follow_requests_count":0},"emojis":[],"fields":[],"role":{"id":"3","name":"Owner","permissions":"1048575","color":"","highlighted":true}}'
|
|
||||||
headers:
|
|
||||||
Cache-Control:
|
|
||||||
- no-store
|
|
||||||
Content-Security-Policy:
|
|
||||||
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
|
||||||
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
|
||||||
style-src ''self'' http://localhost:3000 ''nonce-O3ZNtzAEPVPHGw7XRXG94g=='';
|
|
||||||
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
|
||||||
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
|
||||||
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
|
||||||
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
|
||||||
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
|
||||||
worker-src ''self'' blob: http://localhost:3000'
|
|
||||||
Content-Type:
|
|
||||||
- application/json; charset=utf-8
|
|
||||||
ETag:
|
|
||||||
- W/"5b9093665afc2a342b309f69154704b3"
|
|
||||||
Referrer-Policy:
|
|
||||||
- strict-origin-when-cross-origin
|
|
||||||
Transfer-Encoding:
|
|
||||||
- chunked
|
|
||||||
Vary:
|
|
||||||
- Accept, Origin
|
|
||||||
X-Content-Type-Options:
|
|
||||||
- nosniff
|
|
||||||
X-Download-Options:
|
|
||||||
- noopen
|
|
||||||
X-Frame-Options:
|
|
||||||
- SAMEORIGIN
|
|
||||||
X-Permitted-Cross-Domain-Policies:
|
|
||||||
- none
|
|
||||||
X-Request-Id:
|
|
||||||
- 3edc1043-eef2-49a4-8d0b-60a1f8124f46
|
|
||||||
X-Runtime:
|
|
||||||
- '0.013476'
|
|
||||||
X-XSS-Protection:
|
|
||||||
- 1; mode=block
|
|
||||||
status:
|
|
||||||
code: 200
|
|
||||||
message: OK
|
|
||||||
- request:
|
|
||||||
body: null
|
|
||||||
headers:
|
|
||||||
Accept:
|
|
||||||
- '*/*'
|
|
||||||
Accept-Encoding:
|
|
||||||
- gzip, deflate
|
|
||||||
Authorization:
|
|
||||||
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
|
|
||||||
Connection:
|
|
||||||
- keep-alive
|
|
||||||
Content-Length:
|
|
||||||
- '0'
|
|
||||||
User-Agent:
|
|
||||||
- tests/v311
|
|
||||||
method: POST
|
|
||||||
uri: http://localhost:3000/api/v1/accounts/109367691027217373/unfollow
|
|
||||||
response:
|
|
||||||
body:
|
|
||||||
string: '{"id":"109367691027217373","following":false,"showing_reblogs":false,"notifying":false,"languages":null,"followed_by":false,"blocking":false,"blocked_by":false,"muting":false,"muting_notifications":false,"requested":false,"domain_blocking":false,"endorsed":false,"note":"top
|
|
||||||
ebayer gerne wieder"}'
|
|
||||||
headers:
|
|
||||||
Cache-Control:
|
|
||||||
- no-store
|
|
||||||
Content-Security-Policy:
|
|
||||||
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
|
||||||
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
|
||||||
style-src ''self'' http://localhost:3000 ''nonce-m+JYKcVWVLPax0N7LqNvTg=='';
|
|
||||||
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
|
||||||
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
|
||||||
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
|
||||||
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
|
||||||
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
|
||||||
worker-src ''self'' blob: http://localhost:3000'
|
|
||||||
Content-Type:
|
|
||||||
- application/json; charset=utf-8
|
|
||||||
ETag:
|
|
||||||
- W/"08cbbe52317052ef8ec82a9714a02c24"
|
|
||||||
Referrer-Policy:
|
|
||||||
- strict-origin-when-cross-origin
|
|
||||||
Transfer-Encoding:
|
|
||||||
- chunked
|
|
||||||
Vary:
|
|
||||||
- Accept, Origin
|
|
||||||
X-Content-Type-Options:
|
|
||||||
- nosniff
|
|
||||||
X-Download-Options:
|
|
||||||
- noopen
|
|
||||||
X-Frame-Options:
|
|
||||||
- SAMEORIGIN
|
|
||||||
X-Permitted-Cross-Domain-Policies:
|
|
||||||
- none
|
|
||||||
X-Request-Id:
|
|
||||||
- 0d91aac4-11aa-4ea2-9340-0d7988465036
|
|
||||||
X-Runtime:
|
|
||||||
- '0.014779'
|
|
||||||
X-XSS-Protection:
|
|
||||||
- 1; mode=block
|
|
||||||
status:
|
|
||||||
code: 200
|
|
||||||
message: OK
|
|
||||||
- request:
|
|
||||||
body: null
|
|
||||||
headers:
|
|
||||||
Accept:
|
|
||||||
- '*/*'
|
|
||||||
Accept-Encoding:
|
|
||||||
- gzip, deflate
|
|
||||||
Authorization:
|
|
||||||
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
|
|
||||||
Connection:
|
|
||||||
- keep-alive
|
|
||||||
User-Agent:
|
|
||||||
- tests/v311
|
|
||||||
method: GET
|
|
||||||
uri: http://localhost:3000/api/v1/instance/
|
|
||||||
response:
|
|
||||||
body:
|
|
||||||
string: '{"uri":"localhost:3000","title":"Mastodon","short_description":"","description":"","email":"","version":"4.0.0rc2","urls":{"streaming_api":"ws://localhost:4000"},"stats":{"user_count":4,"status_count":4,"domain_count":0},"thumbnail":"http://localhost:3000/packs/media/images/preview-6399aebd96ccf025654e2977454f168f.png","languages":["en"],"registrations":true,"approval_required":false,"invites_enabled":true,"configuration":{"accounts":{"max_featured_tags":10},"statuses":{"max_characters":500,"max_media_attachments":4,"characters_reserved_per_url":23},"media_attachments":{"supported_mime_types":["image/jpeg","image/png","image/gif","image/heic","image/heif","image/webp","image/avif","video/webm","video/mp4","video/quicktime","video/ogg","audio/wave","audio/wav","audio/x-wav","audio/x-pn-wave","audio/vnd.wave","audio/ogg","audio/vorbis","audio/mpeg","audio/mp3","audio/webm","audio/flac","audio/aac","audio/m4a","audio/x-m4a","audio/mp4","audio/3gpp","video/x-ms-asf"],"image_size_limit":10485760,"image_matrix_limit":16777216,"video_size_limit":41943040,"video_frame_rate_limit":60,"video_matrix_limit":2304000},"polls":{"max_options":4,"max_characters_per_option":50,"min_expiration":300,"max_expiration":2629746}},"contact_account":null,"rules":[]}'
|
|
||||||
headers:
|
|
||||||
Cache-Control:
|
|
||||||
- max-age=180, public
|
|
||||||
Content-Security-Policy:
|
|
||||||
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
|
||||||
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
|
||||||
style-src ''self'' http://localhost:3000 ''nonce-ZUQGY+4miQDPh7ObVRADdQ=='';
|
|
||||||
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
|
||||||
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
|
||||||
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
|
||||||
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
|
||||||
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
|
||||||
worker-src ''self'' blob: http://localhost:3000'
|
|
||||||
Content-Type:
|
|
||||||
- application/json; charset=utf-8
|
|
||||||
Date:
|
|
||||||
- Sat, 19 Nov 2022 00:44:18 GMT
|
|
||||||
ETag:
|
|
||||||
- W/"bccac95ee3a5b2a47f646f4b8052d0de"
|
|
||||||
Referrer-Policy:
|
|
||||||
- strict-origin-when-cross-origin
|
|
||||||
Transfer-Encoding:
|
|
||||||
- chunked
|
|
||||||
Vary:
|
|
||||||
- Accept, Origin
|
|
||||||
X-Content-Type-Options:
|
|
||||||
- nosniff
|
|
||||||
X-Download-Options:
|
|
||||||
- noopen
|
|
||||||
X-Frame-Options:
|
|
||||||
- SAMEORIGIN
|
|
||||||
X-Permitted-Cross-Domain-Policies:
|
|
||||||
- none
|
|
||||||
X-Request-Id:
|
|
||||||
- fcbd5fba-98a8-4732-8f0f-2208d6ad5d1b
|
|
||||||
X-Runtime:
|
|
||||||
- '0.014583'
|
|
||||||
X-XSS-Protection:
|
|
||||||
- 1; mode=block
|
|
||||||
status:
|
|
||||||
code: 200
|
|
||||||
message: OK
|
|
||||||
- request:
|
|
||||||
body: status=only+real+cars+respond.
|
|
||||||
headers:
|
|
||||||
Accept:
|
|
||||||
- '*/*'
|
|
||||||
Accept-Encoding:
|
|
||||||
- gzip, deflate
|
|
||||||
Authorization:
|
|
||||||
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
|
|
||||||
Connection:
|
|
||||||
- keep-alive
|
|
||||||
Content-Length:
|
|
||||||
- '30'
|
|
||||||
Content-Type:
|
|
||||||
- application/x-www-form-urlencoded
|
|
||||||
User-Agent:
|
|
||||||
- tests/v311
|
|
||||||
method: POST
|
|
||||||
uri: http://localhost:3000/api/v1/statuses
|
|
||||||
response:
|
|
||||||
body:
|
|
||||||
string: '{"id":"109367699921291445","created_at":"2022-11-19T00:44:23.351Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"ja","uri":"http://localhost:3000/users/mastodonpy_test/statuses/109367699921291445","url":"http://localhost:3000/@mastodonpy_test/109367699921291445","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"pinned":false,"content":"\u003cp\u003eonly
|
|
||||||
real cars respond.\u003c/p\u003e","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
|
|
||||||
test suite","website":null},"account":{"id":"109367691239664003","username":"mastodonpy_test","acct":"mastodonpy_test","display_name":"John
|
|
||||||
Lennon","locked":true,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-19T00:00:00.000Z","note":"\u003cp\u003eI
|
|
||||||
walk funny\u003c/p\u003e","url":"http://localhost:3000/@mastodonpy_test","avatar":"http://localhost:3000/system/accounts/avatars/109/367/691/239/664/003/original/1063e26998b14a98.jpg","avatar_static":"http://localhost:3000/system/accounts/avatars/109/367/691/239/664/003/original/1063e26998b14a98.jpg","header":"http://localhost:3000/system/accounts/headers/109/367/691/239/664/003/original/a07903ff76e88927.jpg","header_static":"http://localhost:3000/system/accounts/headers/109/367/691/239/664/003/original/a07903ff76e88927.jpg","followers_count":0,"following_count":0,"statuses_count":4,"last_status_at":"2022-11-19","noindex":false,"emojis":[],"fields":[{"name":"bread","value":"toasty.","verified_at":null},{"name":"lasagna","value":"no!!!","verified_at":null}]},"media_attachments":[],"mentions":[],"tags":[],"emojis":[],"card":null,"poll":null}'
|
|
||||||
headers:
|
|
||||||
Cache-Control:
|
|
||||||
- no-store
|
|
||||||
Content-Security-Policy:
|
|
||||||
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
|
||||||
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
|
||||||
style-src ''self'' http://localhost:3000 ''nonce-yaxVWTVsScKR3xUZ4eF6vg=='';
|
|
||||||
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
|
||||||
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
|
||||||
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
|
||||||
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
|
||||||
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
|
||||||
worker-src ''self'' blob: http://localhost:3000'
|
|
||||||
Content-Type:
|
|
||||||
- application/json; charset=utf-8
|
|
||||||
ETag:
|
|
||||||
- W/"34d28289bc71d5b9c6804423f47d6487"
|
|
||||||
Referrer-Policy:
|
|
||||||
- strict-origin-when-cross-origin
|
|
||||||
Transfer-Encoding:
|
|
||||||
- chunked
|
|
||||||
Vary:
|
|
||||||
- Accept, Origin
|
|
||||||
X-Content-Type-Options:
|
|
||||||
- nosniff
|
|
||||||
X-Download-Options:
|
|
||||||
- noopen
|
|
||||||
X-Frame-Options:
|
|
||||||
- SAMEORIGIN
|
|
||||||
X-Permitted-Cross-Domain-Policies:
|
|
||||||
- none
|
|
||||||
X-RateLimit-Limit:
|
|
||||||
- '300'
|
|
||||||
X-RateLimit-Remaining:
|
|
||||||
- '197'
|
|
||||||
X-RateLimit-Reset:
|
|
||||||
- '2022-11-19T03:00:00.373872Z'
|
|
||||||
X-Request-Id:
|
|
||||||
- 11cb9926-88b8-4cea-a8e7-9d789c2caace
|
|
||||||
X-Runtime:
|
|
||||||
- '0.036137'
|
|
||||||
X-XSS-Protection:
|
|
||||||
- 1; mode=block
|
|
||||||
status:
|
|
||||||
code: 200
|
|
||||||
message: OK
|
|
||||||
- request:
|
|
||||||
body: status=%40mastodonpy_test+beep+beep+I%27m+a+jeep
|
|
||||||
headers:
|
|
||||||
Accept:
|
|
||||||
- '*/*'
|
|
||||||
Accept-Encoding:
|
|
||||||
- gzip, deflate
|
|
||||||
Authorization:
|
|
||||||
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN_2
|
|
||||||
Connection:
|
|
||||||
- keep-alive
|
|
||||||
Content-Length:
|
|
||||||
- '48'
|
|
||||||
Content-Type:
|
|
||||||
- application/x-www-form-urlencoded
|
|
||||||
User-Agent:
|
|
||||||
- tests/v311
|
|
||||||
method: POST
|
|
||||||
uri: http://localhost:3000/api/v1/statuses
|
|
||||||
response:
|
|
||||||
body:
|
|
||||||
string: '{"id":"109367699924056287","created_at":"2022-11-19T00:44:23.392Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"http://localhost:3000/users/admin/statuses/109367699924056287","url":"http://localhost:3000/@admin/109367699924056287","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"pinned":false,"content":"\u003cp\u003e\u003cspan
|
|
||||||
class=\"h-card\"\u003e\u003ca href=\"http://localhost:3000/@mastodonpy_test\"
|
|
||||||
class=\"u-url mention\"\u003e@\u003cspan\u003emastodonpy_test\u003c/span\u003e\u003c/a\u003e\u003c/span\u003e
|
|
||||||
beep beep I\u0026#39;m a jeep\u003c/p\u003e","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
|
|
||||||
test suite","website":null},"account":{"id":"109367691027217373","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-19T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":2,"last_status_at":"2022-11-19","noindex":false,"emojis":[],"fields":[]},"media_attachments":[],"mentions":[{"id":"109367691239664003","username":"mastodonpy_test","url":"http://localhost:3000/@mastodonpy_test","acct":"mastodonpy_test"}],"tags":[],"emojis":[],"card":null,"poll":null}'
|
|
||||||
headers:
|
|
||||||
Cache-Control:
|
|
||||||
- no-store
|
|
||||||
Content-Security-Policy:
|
|
||||||
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
|
||||||
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
|
||||||
style-src ''self'' http://localhost:3000 ''nonce-ikjD+DBbQitYrSnFeAsFpQ=='';
|
|
||||||
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
|
||||||
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
|
||||||
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
|
||||||
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
|
||||||
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
|
||||||
worker-src ''self'' blob: http://localhost:3000'
|
|
||||||
Content-Type:
|
|
||||||
- application/json; charset=utf-8
|
|
||||||
ETag:
|
|
||||||
- W/"dea24ce5a1114ebcc070153368ae7c87"
|
|
||||||
Referrer-Policy:
|
|
||||||
- strict-origin-when-cross-origin
|
|
||||||
Transfer-Encoding:
|
|
||||||
- chunked
|
|
||||||
Vary:
|
|
||||||
- Accept, Origin
|
|
||||||
X-Content-Type-Options:
|
|
||||||
- nosniff
|
|
||||||
X-Download-Options:
|
|
||||||
- noopen
|
|
||||||
X-Frame-Options:
|
|
||||||
- SAMEORIGIN
|
|
||||||
X-Permitted-Cross-Domain-Policies:
|
|
||||||
- none
|
|
||||||
X-RateLimit-Limit:
|
|
||||||
- '300'
|
|
||||||
X-RateLimit-Remaining:
|
|
||||||
- '292'
|
|
||||||
X-RateLimit-Reset:
|
|
||||||
- '2022-11-19T03:00:00.420318Z'
|
|
||||||
X-Request-Id:
|
|
||||||
- 09808480-5f85-4056-a5cf-66d77d39387f
|
|
||||||
X-Runtime:
|
|
||||||
- '0.041923'
|
|
||||||
X-XSS-Protection:
|
|
||||||
- 1; mode=block
|
|
||||||
status:
|
|
||||||
code: 200
|
|
||||||
message: OK
|
|
||||||
- request:
|
|
||||||
body: status=on+the+internet%2C+nobody+knows+you%27re+a+plane
|
|
||||||
headers:
|
|
||||||
Accept:
|
|
||||||
- '*/*'
|
|
||||||
Accept-Encoding:
|
|
||||||
- gzip, deflate
|
|
||||||
Authorization:
|
|
||||||
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN_2
|
|
||||||
Connection:
|
|
||||||
- keep-alive
|
|
||||||
Content-Length:
|
|
||||||
- '55'
|
|
||||||
Content-Type:
|
|
||||||
- application/x-www-form-urlencoded
|
|
||||||
User-Agent:
|
|
||||||
- tests/v311
|
|
||||||
method: POST
|
|
||||||
uri: http://localhost:3000/api/v1/statuses
|
|
||||||
response:
|
|
||||||
body:
|
|
||||||
string: '{"id":"109367699926909097","created_at":"2022-11-19T00:44:23.437Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"http://localhost:3000/users/admin/statuses/109367699926909097","url":"http://localhost:3000/@admin/109367699926909097","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"pinned":false,"content":"\u003cp\u003eon
|
|
||||||
the internet, nobody knows you\u0026#39;re a plane\u003c/p\u003e","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
|
|
||||||
test suite","website":null},"account":{"id":"109367691027217373","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-19T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":3,"last_status_at":"2022-11-19","noindex":false,"emojis":[],"fields":[]},"media_attachments":[],"mentions":[],"tags":[],"emojis":[],"card":null,"poll":null}'
|
|
||||||
headers:
|
|
||||||
Cache-Control:
|
|
||||||
- no-store
|
|
||||||
Content-Security-Policy:
|
|
||||||
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
|
||||||
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
|
||||||
style-src ''self'' http://localhost:3000 ''nonce-QISgLKOQMPvBkfABjB8gDg=='';
|
|
||||||
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
|
||||||
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
|
||||||
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
|
||||||
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
|
||||||
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
|
||||||
worker-src ''self'' blob: http://localhost:3000'
|
|
||||||
Content-Type:
|
|
||||||
- application/json; charset=utf-8
|
|
||||||
ETag:
|
|
||||||
- W/"a7417f75daa14f0c89ad7b07ba17b650"
|
|
||||||
Referrer-Policy:
|
|
||||||
- strict-origin-when-cross-origin
|
|
||||||
Transfer-Encoding:
|
|
||||||
- chunked
|
|
||||||
Vary:
|
|
||||||
- Accept, Origin
|
|
||||||
X-Content-Type-Options:
|
|
||||||
- nosniff
|
|
||||||
X-Download-Options:
|
|
||||||
- noopen
|
|
||||||
X-Frame-Options:
|
|
||||||
- SAMEORIGIN
|
|
||||||
X-Permitted-Cross-Domain-Policies:
|
|
||||||
- none
|
|
||||||
X-RateLimit-Limit:
|
|
||||||
- '300'
|
|
||||||
X-RateLimit-Remaining:
|
|
||||||
- '291'
|
|
||||||
X-RateLimit-Reset:
|
|
||||||
- '2022-11-19T03:00:00.458817Z'
|
|
||||||
X-Request-Id:
|
|
||||||
- 8a0b34ba-9b12-48fd-8537-95e26592ac9b
|
|
||||||
X-Runtime:
|
|
||||||
- '0.033981'
|
|
||||||
X-XSS-Protection:
|
|
||||||
- 1; mode=block
|
|
||||||
status:
|
|
||||||
code: 200
|
|
||||||
message: OK
|
|
||||||
- request:
|
|
||||||
body: null
|
|
||||||
headers:
|
|
||||||
Accept:
|
|
||||||
- '*/*'
|
|
||||||
Accept-Encoding:
|
|
||||||
- gzip, deflate
|
|
||||||
Authorization:
|
|
||||||
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
|
|
||||||
Connection:
|
|
||||||
- keep-alive
|
|
||||||
Content-Length:
|
|
||||||
- '0'
|
|
||||||
User-Agent:
|
|
||||||
- tests/v311
|
|
||||||
method: DELETE
|
|
||||||
uri: http://localhost:3000/api/v1/statuses/109367699921291445
|
|
||||||
response:
|
|
||||||
body:
|
|
||||||
string: '{"id":"109367699921291445","created_at":"2022-11-19T00:44:23.351Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"ja","uri":"http://localhost:3000/users/mastodonpy_test/statuses/109367699921291445","url":"http://localhost:3000/@mastodonpy_test/109367699921291445","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"pinned":false,"text":"only
|
|
||||||
real cars respond.","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
|
|
||||||
test suite","website":null},"account":{"id":"109367691239664003","username":"mastodonpy_test","acct":"mastodonpy_test","display_name":"John
|
|
||||||
Lennon","locked":true,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-19T00:00:00.000Z","note":"\u003cp\u003eI
|
|
||||||
walk funny\u003c/p\u003e","url":"http://localhost:3000/@mastodonpy_test","avatar":"http://localhost:3000/system/accounts/avatars/109/367/691/239/664/003/original/1063e26998b14a98.jpg","avatar_static":"http://localhost:3000/system/accounts/avatars/109/367/691/239/664/003/original/1063e26998b14a98.jpg","header":"http://localhost:3000/system/accounts/headers/109/367/691/239/664/003/original/a07903ff76e88927.jpg","header_static":"http://localhost:3000/system/accounts/headers/109/367/691/239/664/003/original/a07903ff76e88927.jpg","followers_count":0,"following_count":0,"statuses_count":3,"last_status_at":"2022-11-19","noindex":false,"emojis":[],"fields":[{"name":"bread","value":"toasty.","verified_at":null},{"name":"lasagna","value":"no!!!","verified_at":null}]},"media_attachments":[],"mentions":[],"tags":[],"emojis":[],"card":null,"poll":null}'
|
|
||||||
headers:
|
|
||||||
Cache-Control:
|
|
||||||
- no-store
|
|
||||||
Content-Security-Policy:
|
|
||||||
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
|
||||||
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
|
||||||
style-src ''self'' http://localhost:3000 ''nonce-aDzpwxogW5FIyDBCXY45YA=='';
|
|
||||||
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
|
||||||
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
|
||||||
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
|
||||||
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
|
||||||
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
|
||||||
worker-src ''self'' blob: http://localhost:3000'
|
|
||||||
Content-Type:
|
|
||||||
- application/json; charset=utf-8
|
|
||||||
ETag:
|
|
||||||
- W/"caecd1af13a79dfcf8be78c44af330fc"
|
|
||||||
Referrer-Policy:
|
|
||||||
- strict-origin-when-cross-origin
|
|
||||||
Transfer-Encoding:
|
|
||||||
- chunked
|
|
||||||
Vary:
|
|
||||||
- Accept, Origin
|
|
||||||
X-Content-Type-Options:
|
|
||||||
- nosniff
|
|
||||||
X-Download-Options:
|
|
||||||
- noopen
|
|
||||||
X-Frame-Options:
|
|
||||||
- SAMEORIGIN
|
|
||||||
X-Permitted-Cross-Domain-Policies:
|
|
||||||
- none
|
|
||||||
X-Request-Id:
|
|
||||||
- ec084bf8-c76b-469e-b1fd-135c04b71403
|
|
||||||
X-Runtime:
|
|
||||||
- '0.035232'
|
|
||||||
X-XSS-Protection:
|
|
||||||
- 1; mode=block
|
|
||||||
status:
|
|
||||||
code: 200
|
|
||||||
message: OK
|
|
||||||
- request:
|
|
||||||
body: null
|
|
||||||
headers:
|
|
||||||
Accept:
|
|
||||||
- '*/*'
|
|
||||||
Accept-Encoding:
|
|
||||||
- gzip, deflate
|
|
||||||
Authorization:
|
|
||||||
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
|
|
||||||
Connection:
|
|
||||||
- keep-alive
|
|
||||||
User-Agent:
|
|
||||||
- tests/v311
|
|
||||||
method: GET
|
|
||||||
uri: http://localhost:4000/api/v1/streaming/user
|
|
||||||
response:
|
|
||||||
body:
|
|
||||||
string: ':)
|
|
||||||
|
|
||||||
event: update
|
|
||||||
|
|
||||||
data: {"id":"109367699921291445","created_at":"2022-11-19T00:44:23.351Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"ja","uri":"http://localhost:3000/users/mastodonpy_test/statuses/109367699921291445","url":"http://localhost:3000/@mastodonpy_test/109367699921291445","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"content":"<p>only
|
|
||||||
real cars respond.</p>","reblog":null,"application":{"name":"Mastodon.py test
|
|
||||||
suite","website":null},"account":{"id":"109367691239664003","username":"mastodonpy_test","acct":"mastodonpy_test","display_name":"John
|
|
||||||
Lennon","locked":true,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-19T00:00:00.000Z","note":"<p>I
|
|
||||||
walk funny</p>","url":"http://localhost:3000/@mastodonpy_test","avatar":"http://localhost:3000/system/accounts/avatars/109/367/691/239/664/003/original/1063e26998b14a98.jpg","avatar_static":"http://localhost:3000/system/accounts/avatars/109/367/691/239/664/003/original/1063e26998b14a98.jpg","header":"http://localhost:3000/system/accounts/headers/109/367/691/239/664/003/original/a07903ff76e88927.jpg","header_static":"http://localhost:3000/system/accounts/headers/109/367/691/239/664/003/original/a07903ff76e88927.jpg","followers_count":0,"following_count":0,"statuses_count":4,"last_status_at":"2022-11-19","noindex":false,"emojis":[],"fields":[{"name":"bread","value":"toasty.","verified_at":null},{"name":"lasagna","value":"no!!!","verified_at":null}]},"media_attachments":[],"mentions":[],"tags":[],"emojis":[],"card":null,"poll":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"pinned":false,"filtered":[]}
|
|
||||||
|
|
||||||
|
|
||||||
event: notification
|
|
||||||
|
|
||||||
data: {"id":"17","type":"mention","created_at":"2022-11-19T00:44:23.807Z","account":{"id":"109367691027217373","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-19T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":3,"last_status_at":"2022-11-19","noindex":false,"emojis":[],"fields":[]},"status":{"id":"109367699924056287","created_at":"2022-11-19T00:44:23.392Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"http://localhost:3000/users/admin/statuses/109367699924056287","url":"http://localhost:3000/@admin/109367699924056287","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"content":"<p><span
|
|
||||||
class=\"h-card\"><a href=\"http://localhost:3000/@mastodonpy_test\" class=\"u-url
|
|
||||||
mention\">@<span>mastodonpy_test</span></a></span> beep beep I'm a jeep</p>","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
|
|
||||||
test suite","website":null},"account":{"id":"109367691027217373","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-19T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":3,"last_status_at":"2022-11-19","noindex":false,"emojis":[],"fields":[]},"media_attachments":[],"mentions":[{"id":"109367691239664003","username":"mastodonpy_test","url":"http://localhost:3000/@mastodonpy_test","acct":"mastodonpy_test"}],"tags":[],"emojis":[],"card":null,"poll":null}}
|
|
||||||
|
|
||||||
|
|
||||||
event: delete
|
|
||||||
|
|
||||||
data: 109367699921291445
|
|
||||||
|
|
||||||
|
|
||||||
:'
|
|
||||||
headers:
|
|
||||||
Access-Control-Allow-Headers:
|
|
||||||
- Authorization, Accept, Cache-Control
|
|
||||||
Access-Control-Allow-Methods:
|
|
||||||
- GET, OPTIONS
|
|
||||||
Access-Control-Allow-Origin:
|
|
||||||
- '*'
|
|
||||||
Cache-Control:
|
|
||||||
- no-store
|
|
||||||
Connection:
|
|
||||||
- keep-alive
|
|
||||||
Content-Type:
|
|
||||||
- text/event-stream
|
|
||||||
Date:
|
|
||||||
- Sat, 19 Nov 2022 00:44:18 GMT
|
|
||||||
Keep-Alive:
|
|
||||||
- timeout=5
|
|
||||||
Transfer-Encoding:
|
|
||||||
- chunked
|
|
||||||
X-Powered-By:
|
|
||||||
- Express
|
|
||||||
X-Request-Id:
|
|
||||||
- a22d2bc5-865d-4c8d-a980-1d7da5af8e95
|
|
||||||
status:
|
|
||||||
code: 200
|
|
||||||
message: OK
|
|
||||||
version: 1
|
|
720
tests/cassettes/test_stream_user_direct.yaml
Normal file
720
tests/cassettes/test_stream_user_direct.yaml
Normal file
@ -0,0 +1,720 @@
|
|||||||
|
interactions:
|
||||||
|
- request:
|
||||||
|
body: null
|
||||||
|
headers:
|
||||||
|
Accept:
|
||||||
|
- '*/*'
|
||||||
|
Accept-Encoding:
|
||||||
|
- gzip, deflate
|
||||||
|
Authorization:
|
||||||
|
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN_2
|
||||||
|
Connection:
|
||||||
|
- keep-alive
|
||||||
|
User-Agent:
|
||||||
|
- tests/v311
|
||||||
|
method: GET
|
||||||
|
uri: http://localhost:3000/api/v1/accounts/verify_credentials
|
||||||
|
response:
|
||||||
|
body:
|
||||||
|
string: '{"id":"109383529410918485","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-21T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":16,"last_status_at":"2022-11-21","noindex":false,"source":{"privacy":"public","sensitive":false,"language":null,"note":"","fields":[],"follow_requests_count":0},"emojis":[],"fields":[],"role":{"id":"3","name":"Owner","permissions":"1048575","color":"","highlighted":true}}'
|
||||||
|
headers:
|
||||||
|
Cache-Control:
|
||||||
|
- no-store
|
||||||
|
Content-Security-Policy:
|
||||||
|
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
||||||
|
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
||||||
|
style-src ''self'' http://localhost:3000 ''nonce-ET94sC1kcWUi3ZBoLTM2wg=='';
|
||||||
|
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
||||||
|
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
||||||
|
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
||||||
|
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
||||||
|
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
||||||
|
worker-src ''self'' blob: http://localhost:3000'
|
||||||
|
Content-Type:
|
||||||
|
- application/json; charset=utf-8
|
||||||
|
ETag:
|
||||||
|
- W/"144b02ef94a45f45c374fb3a8922aaec"
|
||||||
|
Referrer-Policy:
|
||||||
|
- strict-origin-when-cross-origin
|
||||||
|
Transfer-Encoding:
|
||||||
|
- chunked
|
||||||
|
Vary:
|
||||||
|
- Accept, Origin
|
||||||
|
X-Content-Type-Options:
|
||||||
|
- nosniff
|
||||||
|
X-Download-Options:
|
||||||
|
- noopen
|
||||||
|
X-Frame-Options:
|
||||||
|
- SAMEORIGIN
|
||||||
|
X-Permitted-Cross-Domain-Policies:
|
||||||
|
- none
|
||||||
|
X-Request-Id:
|
||||||
|
- 25cbb607-979c-4224-9225-03d1a3d1457c
|
||||||
|
X-Runtime:
|
||||||
|
- '0.013782'
|
||||||
|
X-XSS-Protection:
|
||||||
|
- 1; mode=block
|
||||||
|
status:
|
||||||
|
code: 200
|
||||||
|
message: OK
|
||||||
|
- request:
|
||||||
|
body: null
|
||||||
|
headers:
|
||||||
|
Accept:
|
||||||
|
- '*/*'
|
||||||
|
Accept-Encoding:
|
||||||
|
- gzip, deflate
|
||||||
|
Authorization:
|
||||||
|
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
|
||||||
|
Connection:
|
||||||
|
- keep-alive
|
||||||
|
Content-Length:
|
||||||
|
- '0'
|
||||||
|
User-Agent:
|
||||||
|
- tests/v311
|
||||||
|
method: POST
|
||||||
|
uri: http://localhost:3000/api/v1/accounts/109383529410918485/unfollow
|
||||||
|
response:
|
||||||
|
body:
|
||||||
|
string: '{"id":"109383529410918485","following":false,"showing_reblogs":false,"notifying":false,"languages":null,"followed_by":false,"blocking":false,"blocked_by":false,"muting":false,"muting_notifications":false,"requested":false,"domain_blocking":false,"endorsed":false,"note":""}'
|
||||||
|
headers:
|
||||||
|
Cache-Control:
|
||||||
|
- no-store
|
||||||
|
Content-Security-Policy:
|
||||||
|
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
||||||
|
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
||||||
|
style-src ''self'' http://localhost:3000 ''nonce-+u1X84vonzotT6Qef/iMHw=='';
|
||||||
|
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
||||||
|
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
||||||
|
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
||||||
|
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
||||||
|
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
||||||
|
worker-src ''self'' blob: http://localhost:3000'
|
||||||
|
Content-Type:
|
||||||
|
- application/json; charset=utf-8
|
||||||
|
ETag:
|
||||||
|
- W/"7efb245175d0201afa91b82fea1ccd29"
|
||||||
|
Referrer-Policy:
|
||||||
|
- strict-origin-when-cross-origin
|
||||||
|
Transfer-Encoding:
|
||||||
|
- chunked
|
||||||
|
Vary:
|
||||||
|
- Accept, Origin
|
||||||
|
X-Content-Type-Options:
|
||||||
|
- nosniff
|
||||||
|
X-Download-Options:
|
||||||
|
- noopen
|
||||||
|
X-Frame-Options:
|
||||||
|
- SAMEORIGIN
|
||||||
|
X-Permitted-Cross-Domain-Policies:
|
||||||
|
- none
|
||||||
|
X-Request-Id:
|
||||||
|
- 0ca7ed70-c4df-4871-a7ec-113d51508d49
|
||||||
|
X-Runtime:
|
||||||
|
- '0.012556'
|
||||||
|
X-XSS-Protection:
|
||||||
|
- 1; mode=block
|
||||||
|
status:
|
||||||
|
code: 200
|
||||||
|
message: OK
|
||||||
|
- request:
|
||||||
|
body: null
|
||||||
|
headers:
|
||||||
|
Accept:
|
||||||
|
- '*/*'
|
||||||
|
Accept-Encoding:
|
||||||
|
- gzip, deflate
|
||||||
|
Authorization:
|
||||||
|
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
|
||||||
|
Connection:
|
||||||
|
- keep-alive
|
||||||
|
User-Agent:
|
||||||
|
- tests/v311
|
||||||
|
method: GET
|
||||||
|
uri: http://localhost:3000/api/v1/instance/
|
||||||
|
response:
|
||||||
|
body:
|
||||||
|
string: '{"uri":"localhost:3000","title":"Mastodon","short_description":"","description":"","email":"","version":"4.0.0rc2","urls":{"streaming_api":"ws://localhost:4000"},"stats":{"user_count":4,"status_count":17,"domain_count":0},"thumbnail":"http://localhost:3000/packs/media/images/preview-6399aebd96ccf025654e2977454f168f.png","languages":["en"],"registrations":true,"approval_required":false,"invites_enabled":true,"configuration":{"accounts":{"max_featured_tags":10},"statuses":{"max_characters":500,"max_media_attachments":4,"characters_reserved_per_url":23},"media_attachments":{"supported_mime_types":["image/jpeg","image/png","image/gif","image/heic","image/heif","image/webp","image/avif","video/webm","video/mp4","video/quicktime","video/ogg","audio/wave","audio/wav","audio/x-wav","audio/x-pn-wave","audio/vnd.wave","audio/ogg","audio/vorbis","audio/mpeg","audio/mp3","audio/webm","audio/flac","audio/aac","audio/m4a","audio/x-m4a","audio/mp4","audio/3gpp","video/x-ms-asf"],"image_size_limit":10485760,"image_matrix_limit":16777216,"video_size_limit":41943040,"video_frame_rate_limit":60,"video_matrix_limit":2304000},"polls":{"max_options":4,"max_characters_per_option":50,"min_expiration":300,"max_expiration":2629746}},"contact_account":null,"rules":[]}'
|
||||||
|
headers:
|
||||||
|
Cache-Control:
|
||||||
|
- max-age=180, public
|
||||||
|
Content-Security-Policy:
|
||||||
|
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
||||||
|
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
||||||
|
style-src ''self'' http://localhost:3000 ''nonce-5JMlVRDK8VKwBMhHf7JP8A=='';
|
||||||
|
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
||||||
|
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
||||||
|
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
||||||
|
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
||||||
|
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
||||||
|
worker-src ''self'' blob: http://localhost:3000'
|
||||||
|
Content-Type:
|
||||||
|
- application/json; charset=utf-8
|
||||||
|
Date:
|
||||||
|
- Mon, 21 Nov 2022 20:13:56 GMT
|
||||||
|
ETag:
|
||||||
|
- W/"7792b9fe75ecfce5f9baf0e462140af6"
|
||||||
|
Referrer-Policy:
|
||||||
|
- strict-origin-when-cross-origin
|
||||||
|
Transfer-Encoding:
|
||||||
|
- chunked
|
||||||
|
Vary:
|
||||||
|
- Accept, Origin
|
||||||
|
X-Content-Type-Options:
|
||||||
|
- nosniff
|
||||||
|
X-Download-Options:
|
||||||
|
- noopen
|
||||||
|
X-Frame-Options:
|
||||||
|
- SAMEORIGIN
|
||||||
|
X-Permitted-Cross-Domain-Policies:
|
||||||
|
- none
|
||||||
|
X-Request-Id:
|
||||||
|
- 2a6765ba-92fa-4fa5-adfa-29f4a073fd8c
|
||||||
|
X-Runtime:
|
||||||
|
- '0.014781'
|
||||||
|
X-XSS-Protection:
|
||||||
|
- 1; mode=block
|
||||||
|
status:
|
||||||
|
code: 200
|
||||||
|
message: OK
|
||||||
|
- request:
|
||||||
|
body: null
|
||||||
|
headers:
|
||||||
|
Accept:
|
||||||
|
- '*/*'
|
||||||
|
Accept-Encoding:
|
||||||
|
- gzip, deflate
|
||||||
|
Authorization:
|
||||||
|
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
|
||||||
|
Connection:
|
||||||
|
- keep-alive
|
||||||
|
User-Agent:
|
||||||
|
- tests/v311
|
||||||
|
method: GET
|
||||||
|
uri: http://localhost:3000/api/v1/instance/
|
||||||
|
response:
|
||||||
|
body:
|
||||||
|
string: '{"uri":"localhost:3000","title":"Mastodon","short_description":"","description":"","email":"","version":"4.0.0rc2","urls":{"streaming_api":"ws://localhost:4000"},"stats":{"user_count":4,"status_count":17,"domain_count":0},"thumbnail":"http://localhost:3000/packs/media/images/preview-6399aebd96ccf025654e2977454f168f.png","languages":["en"],"registrations":true,"approval_required":false,"invites_enabled":true,"configuration":{"accounts":{"max_featured_tags":10},"statuses":{"max_characters":500,"max_media_attachments":4,"characters_reserved_per_url":23},"media_attachments":{"supported_mime_types":["image/jpeg","image/png","image/gif","image/heic","image/heif","image/webp","image/avif","video/webm","video/mp4","video/quicktime","video/ogg","audio/wave","audio/wav","audio/x-wav","audio/x-pn-wave","audio/vnd.wave","audio/ogg","audio/vorbis","audio/mpeg","audio/mp3","audio/webm","audio/flac","audio/aac","audio/m4a","audio/x-m4a","audio/mp4","audio/3gpp","video/x-ms-asf"],"image_size_limit":10485760,"image_matrix_limit":16777216,"video_size_limit":41943040,"video_frame_rate_limit":60,"video_matrix_limit":2304000},"polls":{"max_options":4,"max_characters_per_option":50,"min_expiration":300,"max_expiration":2629746}},"contact_account":null,"rules":[]}'
|
||||||
|
headers:
|
||||||
|
Cache-Control:
|
||||||
|
- max-age=180, public
|
||||||
|
Content-Security-Policy:
|
||||||
|
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
||||||
|
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
||||||
|
style-src ''self'' http://localhost:3000 ''nonce-TavEqr9+UNgt+zhP741V1w=='';
|
||||||
|
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
||||||
|
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
||||||
|
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
||||||
|
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
||||||
|
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
||||||
|
worker-src ''self'' blob: http://localhost:3000'
|
||||||
|
Content-Type:
|
||||||
|
- application/json; charset=utf-8
|
||||||
|
Date:
|
||||||
|
- Mon, 21 Nov 2022 20:13:56 GMT
|
||||||
|
ETag:
|
||||||
|
- W/"7792b9fe75ecfce5f9baf0e462140af6"
|
||||||
|
Referrer-Policy:
|
||||||
|
- strict-origin-when-cross-origin
|
||||||
|
Transfer-Encoding:
|
||||||
|
- chunked
|
||||||
|
Vary:
|
||||||
|
- Accept, Origin
|
||||||
|
X-Content-Type-Options:
|
||||||
|
- nosniff
|
||||||
|
X-Download-Options:
|
||||||
|
- noopen
|
||||||
|
X-Frame-Options:
|
||||||
|
- SAMEORIGIN
|
||||||
|
X-Permitted-Cross-Domain-Policies:
|
||||||
|
- none
|
||||||
|
X-Request-Id:
|
||||||
|
- 402737ac-96c3-4d4a-91a4-a1b804de990f
|
||||||
|
X-Runtime:
|
||||||
|
- '0.015024'
|
||||||
|
X-XSS-Protection:
|
||||||
|
- 1; mode=block
|
||||||
|
status:
|
||||||
|
code: 200
|
||||||
|
message: OK
|
||||||
|
- request:
|
||||||
|
body: status=only+real+cars+respond.
|
||||||
|
headers:
|
||||||
|
Accept:
|
||||||
|
- '*/*'
|
||||||
|
Accept-Encoding:
|
||||||
|
- gzip, deflate
|
||||||
|
Authorization:
|
||||||
|
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
|
||||||
|
Connection:
|
||||||
|
- keep-alive
|
||||||
|
Content-Length:
|
||||||
|
- '30'
|
||||||
|
Content-Type:
|
||||||
|
- application/x-www-form-urlencoded
|
||||||
|
User-Agent:
|
||||||
|
- tests/v311
|
||||||
|
method: POST
|
||||||
|
uri: http://localhost:3000/api/v1/statuses
|
||||||
|
response:
|
||||||
|
body:
|
||||||
|
string: '{"id":"109383623709269987","created_at":"2022-11-21T20:14:01.073Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"ja","uri":"http://localhost:3000/users/mastodonpy_test/statuses/109383623709269987","url":"http://localhost:3000/@mastodonpy_test/109383623709269987","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"pinned":false,"content":"\u003cp\u003eonly
|
||||||
|
real cars respond.\u003c/p\u003e","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
|
||||||
|
test suite","website":null},"account":{"id":"109383529633422716","username":"mastodonpy_test","acct":"mastodonpy_test","display_name":"","locked":true,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-21T00:00:00.000Z","note":"","url":"http://localhost:3000/@mastodonpy_test","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":2,"last_status_at":"2022-11-21","noindex":false,"emojis":[],"fields":[]},"media_attachments":[],"mentions":[],"tags":[],"emojis":[],"card":null,"poll":null}'
|
||||||
|
headers:
|
||||||
|
Cache-Control:
|
||||||
|
- no-store
|
||||||
|
Content-Security-Policy:
|
||||||
|
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
||||||
|
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
||||||
|
style-src ''self'' http://localhost:3000 ''nonce-Zsmmvt1eANHAkGfCQKOf6g=='';
|
||||||
|
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
||||||
|
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
||||||
|
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
||||||
|
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
||||||
|
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
||||||
|
worker-src ''self'' blob: http://localhost:3000'
|
||||||
|
Content-Type:
|
||||||
|
- application/json; charset=utf-8
|
||||||
|
ETag:
|
||||||
|
- W/"e71985ba86e5e8d1bc4bcdab8da2c25d"
|
||||||
|
Referrer-Policy:
|
||||||
|
- strict-origin-when-cross-origin
|
||||||
|
Transfer-Encoding:
|
||||||
|
- chunked
|
||||||
|
Vary:
|
||||||
|
- Accept, Origin
|
||||||
|
X-Content-Type-Options:
|
||||||
|
- nosniff
|
||||||
|
X-Download-Options:
|
||||||
|
- noopen
|
||||||
|
X-Frame-Options:
|
||||||
|
- SAMEORIGIN
|
||||||
|
X-Permitted-Cross-Domain-Policies:
|
||||||
|
- none
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
- '300'
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
- '285'
|
||||||
|
X-RateLimit-Reset:
|
||||||
|
- '2022-11-21T21:00:00.103374Z'
|
||||||
|
X-Request-Id:
|
||||||
|
- 157d7170-a9f4-497f-ba94-dbd4ab917866
|
||||||
|
X-Runtime:
|
||||||
|
- '0.043576'
|
||||||
|
X-XSS-Protection:
|
||||||
|
- 1; mode=block
|
||||||
|
status:
|
||||||
|
code: 200
|
||||||
|
message: OK
|
||||||
|
- request:
|
||||||
|
body: status=%40mastodonpy_test+beep+beep+I%27m+a+jeep
|
||||||
|
headers:
|
||||||
|
Accept:
|
||||||
|
- '*/*'
|
||||||
|
Accept-Encoding:
|
||||||
|
- gzip, deflate
|
||||||
|
Authorization:
|
||||||
|
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN_2
|
||||||
|
Connection:
|
||||||
|
- keep-alive
|
||||||
|
Content-Length:
|
||||||
|
- '48'
|
||||||
|
Content-Type:
|
||||||
|
- application/x-www-form-urlencoded
|
||||||
|
User-Agent:
|
||||||
|
- tests/v311
|
||||||
|
method: POST
|
||||||
|
uri: http://localhost:3000/api/v1/statuses
|
||||||
|
response:
|
||||||
|
body:
|
||||||
|
string: '{"id":"109383623712389313","created_at":"2022-11-21T20:14:01.120Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"http://localhost:3000/users/admin/statuses/109383623712389313","url":"http://localhost:3000/@admin/109383623712389313","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"pinned":false,"content":"\u003cp\u003e\u003cspan
|
||||||
|
class=\"h-card\"\u003e\u003ca href=\"http://localhost:3000/@mastodonpy_test\"
|
||||||
|
class=\"u-url mention\"\u003e@\u003cspan\u003emastodonpy_test\u003c/span\u003e\u003c/a\u003e\u003c/span\u003e
|
||||||
|
beep beep I\u0026#39;m a jeep\u003c/p\u003e","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
|
||||||
|
test suite","website":null},"account":{"id":"109383529410918485","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-21T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":17,"last_status_at":"2022-11-21","noindex":false,"emojis":[],"fields":[]},"media_attachments":[],"mentions":[{"id":"109383529633422716","username":"mastodonpy_test","url":"http://localhost:3000/@mastodonpy_test","acct":"mastodonpy_test"}],"tags":[],"emojis":[],"card":null,"poll":null}'
|
||||||
|
headers:
|
||||||
|
Cache-Control:
|
||||||
|
- no-store
|
||||||
|
Content-Security-Policy:
|
||||||
|
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
||||||
|
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
||||||
|
style-src ''self'' http://localhost:3000 ''nonce-k7kmLJMj7sp9WP2u0pnraQ=='';
|
||||||
|
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
||||||
|
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
||||||
|
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
||||||
|
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
||||||
|
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
||||||
|
worker-src ''self'' blob: http://localhost:3000'
|
||||||
|
Content-Type:
|
||||||
|
- application/json; charset=utf-8
|
||||||
|
ETag:
|
||||||
|
- W/"b35f9915f1cece26792c44debca04eba"
|
||||||
|
Referrer-Policy:
|
||||||
|
- strict-origin-when-cross-origin
|
||||||
|
Transfer-Encoding:
|
||||||
|
- chunked
|
||||||
|
Vary:
|
||||||
|
- Accept, Origin
|
||||||
|
X-Content-Type-Options:
|
||||||
|
- nosniff
|
||||||
|
X-Download-Options:
|
||||||
|
- noopen
|
||||||
|
X-Frame-Options:
|
||||||
|
- SAMEORIGIN
|
||||||
|
X-Permitted-Cross-Domain-Policies:
|
||||||
|
- none
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
- '300'
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
- '280'
|
||||||
|
X-RateLimit-Reset:
|
||||||
|
- '2022-11-21T21:00:00.149734Z'
|
||||||
|
X-Request-Id:
|
||||||
|
- d3d2d232-2fa5-49fa-8772-3b3b67064f54
|
||||||
|
X-Runtime:
|
||||||
|
- '0.041829'
|
||||||
|
X-XSS-Protection:
|
||||||
|
- 1; mode=block
|
||||||
|
status:
|
||||||
|
code: 200
|
||||||
|
message: OK
|
||||||
|
- request:
|
||||||
|
body: status=on+the+internet%2C+nobody+knows+you%27re+a+plane
|
||||||
|
headers:
|
||||||
|
Accept:
|
||||||
|
- '*/*'
|
||||||
|
Accept-Encoding:
|
||||||
|
- gzip, deflate
|
||||||
|
Authorization:
|
||||||
|
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN_2
|
||||||
|
Connection:
|
||||||
|
- keep-alive
|
||||||
|
Content-Length:
|
||||||
|
- '55'
|
||||||
|
Content-Type:
|
||||||
|
- application/x-www-form-urlencoded
|
||||||
|
User-Agent:
|
||||||
|
- tests/v311
|
||||||
|
method: POST
|
||||||
|
uri: http://localhost:3000/api/v1/statuses
|
||||||
|
response:
|
||||||
|
body:
|
||||||
|
string: '{"id":"109383623715420903","created_at":"2022-11-21T20:14:01.169Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"http://localhost:3000/users/admin/statuses/109383623715420903","url":"http://localhost:3000/@admin/109383623715420903","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"pinned":false,"content":"\u003cp\u003eon
|
||||||
|
the internet, nobody knows you\u0026#39;re a plane\u003c/p\u003e","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
|
||||||
|
test suite","website":null},"account":{"id":"109383529410918485","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-21T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":18,"last_status_at":"2022-11-21","noindex":false,"emojis":[],"fields":[]},"media_attachments":[],"mentions":[],"tags":[],"emojis":[],"card":null,"poll":null}'
|
||||||
|
headers:
|
||||||
|
Cache-Control:
|
||||||
|
- no-store
|
||||||
|
Content-Security-Policy:
|
||||||
|
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
||||||
|
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
||||||
|
style-src ''self'' http://localhost:3000 ''nonce-9+Q9FOAegtpbnJdbGAkEug=='';
|
||||||
|
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
||||||
|
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
||||||
|
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
||||||
|
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
||||||
|
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
||||||
|
worker-src ''self'' blob: http://localhost:3000'
|
||||||
|
Content-Type:
|
||||||
|
- application/json; charset=utf-8
|
||||||
|
ETag:
|
||||||
|
- W/"3c61174bb890d47140b41b069ab12ac9"
|
||||||
|
Referrer-Policy:
|
||||||
|
- strict-origin-when-cross-origin
|
||||||
|
Transfer-Encoding:
|
||||||
|
- chunked
|
||||||
|
Vary:
|
||||||
|
- Accept, Origin
|
||||||
|
X-Content-Type-Options:
|
||||||
|
- nosniff
|
||||||
|
X-Download-Options:
|
||||||
|
- noopen
|
||||||
|
X-Frame-Options:
|
||||||
|
- SAMEORIGIN
|
||||||
|
X-Permitted-Cross-Domain-Policies:
|
||||||
|
- none
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
- '300'
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
- '279'
|
||||||
|
X-RateLimit-Reset:
|
||||||
|
- '2022-11-21T21:00:00.191358Z'
|
||||||
|
X-Request-Id:
|
||||||
|
- ed13758c-2add-437f-b536-aa2ae20a5053
|
||||||
|
X-Runtime:
|
||||||
|
- '0.037447'
|
||||||
|
X-XSS-Protection:
|
||||||
|
- 1; mode=block
|
||||||
|
status:
|
||||||
|
code: 200
|
||||||
|
message: OK
|
||||||
|
- request:
|
||||||
|
body: status=%40mastodonpy_test_2+pssssst&visibility=direct
|
||||||
|
headers:
|
||||||
|
Accept:
|
||||||
|
- '*/*'
|
||||||
|
Accept-Encoding:
|
||||||
|
- gzip, deflate
|
||||||
|
Authorization:
|
||||||
|
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
|
||||||
|
Connection:
|
||||||
|
- keep-alive
|
||||||
|
Content-Length:
|
||||||
|
- '53'
|
||||||
|
Content-Type:
|
||||||
|
- application/x-www-form-urlencoded
|
||||||
|
User-Agent:
|
||||||
|
- tests/v311
|
||||||
|
method: POST
|
||||||
|
uri: http://localhost:3000/api/v1/statuses
|
||||||
|
response:
|
||||||
|
body:
|
||||||
|
string: '{"id":"109383623718220008","created_at":"2022-11-21T20:14:01.210Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"direct","language":"ja","uri":"http://localhost:3000/users/mastodonpy_test/statuses/109383623718220008","url":"http://localhost:3000/@mastodonpy_test/109383623718220008","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"content":"\u003cp\u003e\u003cspan
|
||||||
|
class=\"h-card\"\u003e\u003ca href=\"http://localhost:3000/@mastodonpy_test_2\"
|
||||||
|
class=\"u-url mention\"\u003e@\u003cspan\u003emastodonpy_test_2\u003c/span\u003e\u003c/a\u003e\u003c/span\u003e
|
||||||
|
pssssst\u003c/p\u003e","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
|
||||||
|
test suite","website":null},"account":{"id":"109383529633422716","username":"mastodonpy_test","acct":"mastodonpy_test","display_name":"","locked":true,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-21T00:00:00.000Z","note":"","url":"http://localhost:3000/@mastodonpy_test","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":2,"last_status_at":"2022-11-21","noindex":false,"emojis":[],"fields":[]},"media_attachments":[],"mentions":[{"id":"109383529748114399","username":"mastodonpy_test_2","url":"http://localhost:3000/@mastodonpy_test_2","acct":"mastodonpy_test_2"}],"tags":[],"emojis":[],"card":null,"poll":null}'
|
||||||
|
headers:
|
||||||
|
Cache-Control:
|
||||||
|
- no-store
|
||||||
|
Content-Security-Policy:
|
||||||
|
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
||||||
|
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
||||||
|
style-src ''self'' http://localhost:3000 ''nonce-NMEtgbxDe9RTVEV5T0VkFQ=='';
|
||||||
|
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
||||||
|
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
||||||
|
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
||||||
|
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
||||||
|
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
||||||
|
worker-src ''self'' blob: http://localhost:3000'
|
||||||
|
Content-Type:
|
||||||
|
- application/json; charset=utf-8
|
||||||
|
ETag:
|
||||||
|
- W/"a1283cb3e5a11bb0564976ccbb7ebff5"
|
||||||
|
Referrer-Policy:
|
||||||
|
- strict-origin-when-cross-origin
|
||||||
|
Transfer-Encoding:
|
||||||
|
- chunked
|
||||||
|
Vary:
|
||||||
|
- Accept, Origin
|
||||||
|
X-Content-Type-Options:
|
||||||
|
- nosniff
|
||||||
|
X-Download-Options:
|
||||||
|
- noopen
|
||||||
|
X-Frame-Options:
|
||||||
|
- SAMEORIGIN
|
||||||
|
X-Permitted-Cross-Domain-Policies:
|
||||||
|
- none
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
- '300'
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
- '284'
|
||||||
|
X-RateLimit-Reset:
|
||||||
|
- '2022-11-21T21:00:00.235386Z'
|
||||||
|
X-Request-Id:
|
||||||
|
- dc8e6c3d-f368-47a0-88cc-cd1a7c48ad46
|
||||||
|
X-Runtime:
|
||||||
|
- '0.039590'
|
||||||
|
X-XSS-Protection:
|
||||||
|
- 1; mode=block
|
||||||
|
status:
|
||||||
|
code: 200
|
||||||
|
message: OK
|
||||||
|
- request:
|
||||||
|
body: status=%40mastodonpy_test+pssssst%21&in_reply_to_id=109383623718220008&visibility=direct
|
||||||
|
headers:
|
||||||
|
Accept:
|
||||||
|
- '*/*'
|
||||||
|
Accept-Encoding:
|
||||||
|
- gzip, deflate
|
||||||
|
Authorization:
|
||||||
|
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN_3
|
||||||
|
Connection:
|
||||||
|
- keep-alive
|
||||||
|
Content-Length:
|
||||||
|
- '88'
|
||||||
|
Content-Type:
|
||||||
|
- application/x-www-form-urlencoded
|
||||||
|
User-Agent:
|
||||||
|
- tests/v311
|
||||||
|
method: POST
|
||||||
|
uri: http://localhost:3000/api/v1/statuses
|
||||||
|
response:
|
||||||
|
body:
|
||||||
|
string: '{"id":"109383623721213270","created_at":"2022-11-21T20:14:01.254Z","in_reply_to_id":"109383623718220008","in_reply_to_account_id":"109383529633422716","sensitive":false,"spoiler_text":"","visibility":"direct","language":"ja","uri":"http://localhost:3000/users/mastodonpy_test_2/statuses/109383623721213270","url":"http://localhost:3000/@mastodonpy_test_2/109383623721213270","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"content":"\u003cp\u003e\u003cspan
|
||||||
|
class=\"h-card\"\u003e\u003ca href=\"http://localhost:3000/@mastodonpy_test\"
|
||||||
|
class=\"u-url mention\"\u003e@\u003cspan\u003emastodonpy_test\u003c/span\u003e\u003c/a\u003e\u003c/span\u003e
|
||||||
|
pssssst!\u003c/p\u003e","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
|
||||||
|
test suite","website":null},"account":{"id":"109383529748114399","username":"mastodonpy_test_2","acct":"mastodonpy_test_2","display_name":"","locked":false,"bot":false,"discoverable":true,"group":false,"created_at":"2022-11-21T00:00:00.000Z","note":"","url":"http://localhost:3000/@mastodonpy_test_2","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":0,"last_status_at":null,"noindex":false,"emojis":[],"fields":[]},"media_attachments":[],"mentions":[{"id":"109383529633422716","username":"mastodonpy_test","url":"http://localhost:3000/@mastodonpy_test","acct":"mastodonpy_test"}],"tags":[],"emojis":[],"card":null,"poll":null}'
|
||||||
|
headers:
|
||||||
|
Cache-Control:
|
||||||
|
- no-store
|
||||||
|
Content-Security-Policy:
|
||||||
|
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
||||||
|
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
||||||
|
style-src ''self'' http://localhost:3000 ''nonce-7YEjO6vMIqTvJKy3sj/xIA=='';
|
||||||
|
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
||||||
|
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
||||||
|
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
||||||
|
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
||||||
|
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
||||||
|
worker-src ''self'' blob: http://localhost:3000'
|
||||||
|
Content-Type:
|
||||||
|
- application/json; charset=utf-8
|
||||||
|
ETag:
|
||||||
|
- W/"59913e3afba82470c492a1dc9244a397"
|
||||||
|
Referrer-Policy:
|
||||||
|
- strict-origin-when-cross-origin
|
||||||
|
Transfer-Encoding:
|
||||||
|
- chunked
|
||||||
|
Vary:
|
||||||
|
- Accept, Origin
|
||||||
|
X-Content-Type-Options:
|
||||||
|
- nosniff
|
||||||
|
X-Download-Options:
|
||||||
|
- noopen
|
||||||
|
X-Frame-Options:
|
||||||
|
- SAMEORIGIN
|
||||||
|
X-Permitted-Cross-Domain-Policies:
|
||||||
|
- none
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
- '300'
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
- '294'
|
||||||
|
X-RateLimit-Reset:
|
||||||
|
- '2022-11-21T21:00:00.280471Z'
|
||||||
|
X-Request-Id:
|
||||||
|
- 8680daf1-f5f8-479a-a914-eff562c2e6e6
|
||||||
|
X-Runtime:
|
||||||
|
- '0.039804'
|
||||||
|
X-XSS-Protection:
|
||||||
|
- 1; mode=block
|
||||||
|
status:
|
||||||
|
code: 200
|
||||||
|
message: OK
|
||||||
|
- request:
|
||||||
|
body: null
|
||||||
|
headers:
|
||||||
|
Accept:
|
||||||
|
- '*/*'
|
||||||
|
Accept-Encoding:
|
||||||
|
- gzip, deflate
|
||||||
|
Authorization:
|
||||||
|
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
|
||||||
|
Connection:
|
||||||
|
- keep-alive
|
||||||
|
Content-Length:
|
||||||
|
- '0'
|
||||||
|
User-Agent:
|
||||||
|
- tests/v311
|
||||||
|
method: DELETE
|
||||||
|
uri: http://localhost:3000/api/v1/statuses/109383623709269987
|
||||||
|
response:
|
||||||
|
body:
|
||||||
|
string: '{"id":"109383623709269987","created_at":"2022-11-21T20:14:01.073Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"ja","uri":"http://localhost:3000/users/mastodonpy_test/statuses/109383623709269987","url":"http://localhost:3000/@mastodonpy_test/109383623709269987","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"pinned":false,"text":"only
|
||||||
|
real cars respond.","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
|
||||||
|
test suite","website":null},"account":{"id":"109383529633422716","username":"mastodonpy_test","acct":"mastodonpy_test","display_name":"","locked":true,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-21T00:00:00.000Z","note":"","url":"http://localhost:3000/@mastodonpy_test","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":1,"last_status_at":"2022-11-21","noindex":false,"emojis":[],"fields":[]},"media_attachments":[],"mentions":[],"tags":[],"emojis":[],"card":null,"poll":null}'
|
||||||
|
headers:
|
||||||
|
Cache-Control:
|
||||||
|
- no-store
|
||||||
|
Content-Security-Policy:
|
||||||
|
- 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src
|
||||||
|
''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000;
|
||||||
|
style-src ''self'' http://localhost:3000 ''nonce-1cfdgJeSR3MyZA7YkUvM6A=='';
|
||||||
|
media-src ''self'' https: data: http://localhost:3000; frame-src ''self''
|
||||||
|
https:; manifest-src ''self'' http://localhost:3000; connect-src ''self''
|
||||||
|
data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000
|
||||||
|
ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline''
|
||||||
|
''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000;
|
||||||
|
worker-src ''self'' blob: http://localhost:3000'
|
||||||
|
Content-Type:
|
||||||
|
- application/json; charset=utf-8
|
||||||
|
ETag:
|
||||||
|
- W/"d42a2551941b52102f8958f3e13b0f6b"
|
||||||
|
Referrer-Policy:
|
||||||
|
- strict-origin-when-cross-origin
|
||||||
|
Transfer-Encoding:
|
||||||
|
- chunked
|
||||||
|
Vary:
|
||||||
|
- Accept, Origin
|
||||||
|
X-Content-Type-Options:
|
||||||
|
- nosniff
|
||||||
|
X-Download-Options:
|
||||||
|
- noopen
|
||||||
|
X-Frame-Options:
|
||||||
|
- SAMEORIGIN
|
||||||
|
X-Permitted-Cross-Domain-Policies:
|
||||||
|
- none
|
||||||
|
X-Request-Id:
|
||||||
|
- 4afaa85a-3032-4072-95b5-e39f5c021080
|
||||||
|
X-Runtime:
|
||||||
|
- '0.025629'
|
||||||
|
X-XSS-Protection:
|
||||||
|
- 1; mode=block
|
||||||
|
status:
|
||||||
|
code: 200
|
||||||
|
message: OK
|
||||||
|
- request:
|
||||||
|
body: null
|
||||||
|
headers:
|
||||||
|
Accept:
|
||||||
|
- '*/*'
|
||||||
|
Accept-Encoding:
|
||||||
|
- gzip, deflate
|
||||||
|
Authorization:
|
||||||
|
- Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
|
||||||
|
Connection:
|
||||||
|
- keep-alive
|
||||||
|
User-Agent:
|
||||||
|
- tests/v311
|
||||||
|
method: GET
|
||||||
|
uri: http://localhost:4000/api/v1/streaming/direct
|
||||||
|
response:
|
||||||
|
body:
|
||||||
|
string: ':)
|
||||||
|
|
||||||
|
event: conversation
|
||||||
|
|
||||||
|
data: {"id":"17","unread":false,"accounts":[{"id":"109383529748114399","username":"mastodonpy_test_2","acct":"mastodonpy_test_2","display_name":"","locked":false,"bot":false,"discoverable":true,"group":false,"created_at":"2022-11-21T00:00:00.000Z","note":"","url":"http://localhost:3000/@mastodonpy_test_2","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":0,"last_status_at":null,"noindex":false,"emojis":[],"fields":[]}],"last_status":{"id":"109383623718220008","created_at":"2022-11-21T20:14:01.210Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"direct","language":"ja","uri":"http://localhost:3000/users/mastodonpy_test/statuses/109383623718220008","url":"http://localhost:3000/@mastodonpy_test/109383623718220008","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"content":"<p><span
|
||||||
|
class=\"h-card\"><a href=\"http://localhost:3000/@mastodonpy_test_2\" class=\"u-url
|
||||||
|
mention\">@<span>mastodonpy_test_2</span></a></span> pssssst</p>","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
|
||||||
|
test suite","website":null},"account":{"id":"109383529633422716","username":"mastodonpy_test","acct":"mastodonpy_test","display_name":"","locked":true,"bot":false,"discoverable":null,"group":false,"created_at":"2022-11-21T00:00:00.000Z","note":"","url":"http://localhost:3000/@mastodonpy_test","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":2,"last_status_at":"2022-11-21","noindex":false,"emojis":[],"fields":[]},"media_attachments":[],"mentions":[{"id":"109383529748114399","username":"mastodonpy_test_2","url":"http://localhost:3000/@mastodonpy_test_2","acct":"mastodonpy_test_2"}],"tags":[],"emojis":[],"card":null,"poll":null}}
|
||||||
|
|
||||||
|
|
||||||
|
event: conversation
|
||||||
|
|
||||||
|
data: {"id":"17","unread":true,"accounts":[{"id":"109383529748114399","username":"mastodonpy_test_2","acct":"mastodonpy_test_2","display_name":"","locked":false,"bot":false,"discoverable":true,"group":false,"created_at":"2022-11-21T00:00:00.000Z","note":"","url":"http://localhost:3000/@mastodonpy_test_2","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":0,"last_status_at":null,"noindex":false,"emojis":[],"fields":[]}],"last_status":{"id":"109383623721213270","created_at":"2022-11-21T20:14:01.254Z","in_reply_to_id":"109383623718220008","in_reply_to_account_id":"109383529633422716","sensitive":false,"spoiler_text":"","visibility":"direct","language":"ja","uri":"http://localhost:3000/users/mastodonpy_test_2/statuses/109383623721213270","url":"http://localhost:3000/@mastodonpy_test_2/109383623721213270","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"content":"<p><span
|
||||||
|
class=\"h-card\"><a href=\"http://localhost:3000/@mastodonpy_test\" class=\"u-url
|
||||||
|
mention\">@<span>mastodonpy_test</span></a></span> pssssst!</p>","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
|
||||||
|
test suite","website":null},"account":{"id":"109383529748114399","username":"mastodonpy_test_2","acct":"mastodonpy_test_2","display_name":"","locked":false,"bot":false,"discoverable":true,"group":false,"created_at":"2022-11-21T00:00:00.000Z","note":"","url":"http://localhost:3000/@mastodonpy_test_2","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":0,"last_status_at":null,"noindex":false,"emojis":[],"fields":[]},"media_attachments":[],"mentions":[{"id":"109383529633422716","username":"mastodonpy_test","url":"http://localhost:3000/@mastodonpy_test","acct":"mastodonpy_test"}],"tags":[],"emojis":[],"card":null,"poll":null}}
|
||||||
|
|
||||||
|
|
||||||
|
:'
|
||||||
|
headers:
|
||||||
|
Access-Control-Allow-Headers:
|
||||||
|
- Authorization, Accept, Cache-Control
|
||||||
|
Access-Control-Allow-Methods:
|
||||||
|
- GET, OPTIONS
|
||||||
|
Access-Control-Allow-Origin:
|
||||||
|
- '*'
|
||||||
|
Cache-Control:
|
||||||
|
- no-store
|
||||||
|
Connection:
|
||||||
|
- keep-alive
|
||||||
|
Content-Type:
|
||||||
|
- text/event-stream
|
||||||
|
Date:
|
||||||
|
- Mon, 21 Nov 2022 20:13:56 GMT
|
||||||
|
Keep-Alive:
|
||||||
|
- timeout=5
|
||||||
|
Transfer-Encoding:
|
||||||
|
- chunked
|
||||||
|
X-Powered-By:
|
||||||
|
- Express
|
||||||
|
X-Request-Id:
|
||||||
|
- f1606fe5-1e3e-4204-9a7a-e0a16cb080f1
|
||||||
|
status:
|
||||||
|
code: 200
|
||||||
|
message: OK
|
||||||
|
version: 1
|
@ -308,21 +308,31 @@ def test_multiline_payload():
|
|||||||
assert listener.updates == [{"foo": "bar"}]
|
assert listener.updates == [{"foo": "bar"}]
|
||||||
|
|
||||||
@pytest.mark.vcr(match_on=['path'])
|
@pytest.mark.vcr(match_on=['path'])
|
||||||
def test_stream_user(api, api2):
|
def test_stream_user_direct(api, api2, api3):
|
||||||
patch_streaming()
|
patch_streaming()
|
||||||
|
|
||||||
# Make sure we are in the right state to not receive updates from api2
|
# Make sure we are in the right state to not receive updates from api2
|
||||||
user = api2.account_verify_credentials()
|
user = api2.account_verify_credentials()
|
||||||
api.account_unfollow(user)
|
api.account_unfollow(user)
|
||||||
time.sleep(2)
|
time.sleep(2)
|
||||||
|
|
||||||
updates = []
|
updates = []
|
||||||
|
local_updates = []
|
||||||
notifications = []
|
notifications = []
|
||||||
deletes = []
|
deletes = []
|
||||||
|
conversations = []
|
||||||
listener = CallbackStreamListener(
|
listener = CallbackStreamListener(
|
||||||
update_handler = lambda x: updates.append(x),
|
update_handler = lambda x: updates.append(x),
|
||||||
|
local_update_handler = lambda x: local_updates.append(x),
|
||||||
notification_handler = lambda x: notifications.append(x),
|
notification_handler = lambda x: notifications.append(x),
|
||||||
delete_handler = lambda x: deletes.append(x)
|
delete_handler = lambda x: deletes.append(x),
|
||||||
|
conversation_handler = lambda x: conversations.append(x),
|
||||||
|
status_update_handler = lambda x: 0, # TODO
|
||||||
|
filters_changed_handler = lambda x: 0,
|
||||||
|
announcement_handler = lambda x: 0,
|
||||||
|
announcement_reaction_handler = lambda x: 0,
|
||||||
|
announcement_delete_handler = lambda x: 0,
|
||||||
|
encryted_message_handler = lambda x: 0,
|
||||||
)
|
)
|
||||||
|
|
||||||
posted = []
|
posted = []
|
||||||
@ -331,6 +341,8 @@ def test_stream_user(api, api2):
|
|||||||
posted.append(api.status_post("only real cars respond."))
|
posted.append(api.status_post("only real cars respond."))
|
||||||
posted.append(api2.status_post("@mastodonpy_test beep beep I'm a jeep"))
|
posted.append(api2.status_post("@mastodonpy_test beep beep I'm a jeep"))
|
||||||
posted.append(api2.status_post("on the internet, nobody knows you're a plane"))
|
posted.append(api2.status_post("on the internet, nobody knows you're a plane"))
|
||||||
|
posted.append(api.status_post("@mastodonpy_test_2 pssssst", visibility="direct"))
|
||||||
|
posted.append(api3.status_post("@mastodonpy_test pssssst!", visibility="direct", in_reply_to_id=posted[-1]))
|
||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
api.status_delete(posted[0])
|
api.status_delete(posted[0])
|
||||||
time.sleep(10)
|
time.sleep(10)
|
||||||
@ -340,13 +352,17 @@ def test_stream_user(api, api2):
|
|||||||
t.start()
|
t.start()
|
||||||
|
|
||||||
stream = api.stream_user(listener, run_async=True)
|
stream = api.stream_user(listener, run_async=True)
|
||||||
|
stream2 = api.stream_direct(listener, run_async=True)
|
||||||
time.sleep(20)
|
time.sleep(20)
|
||||||
stream.close()
|
stream.close()
|
||||||
|
stream2.close()
|
||||||
|
|
||||||
assert len(updates) == 1
|
assert len(updates) == 2
|
||||||
assert len(notifications) == 1
|
assert len(local_updates) == 2
|
||||||
|
assert len(notifications) == 2
|
||||||
assert len(deletes) == 1
|
assert len(deletes) == 1
|
||||||
|
assert len(conversations) == 2
|
||||||
|
|
||||||
assert updates[0].id == posted[0].id
|
assert updates[0].id == posted[0].id
|
||||||
assert deletes[0] == posted[0].id
|
assert deletes[0] == posted[0].id
|
||||||
assert notifications[0].status.id == posted[1].id
|
assert notifications[0].status.id == posted[1].id
|
||||||
|
Loading…
x
Reference in New Issue
Block a user