mirror of
https://mau.dev/maunium/synapse.git
synced 2024-10-01 01:36:05 -04:00
Create a constant for a small png image in tests. (#10834)
To avoid duplicating it between a few tests.
This commit is contained in:
parent
3eba047d38
commit
bfb4b858a9
1
changelog.d/10834.misc
Normal file
1
changelog.d/10834.misc
Normal file
@ -0,0 +1 @@
|
|||||||
|
Factor out PNG image data to a constant to be used in several tests.
|
@ -1,4 +1,4 @@
|
|||||||
# Copyright 2020 The Matrix.org Foundation C.I.C.
|
# Copyright 2020-2021 The Matrix.org Foundation C.I.C.
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
# you may not use this file except in compliance with the License.
|
# you may not use this file except in compliance with the License.
|
||||||
@ -13,7 +13,6 @@
|
|||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
from binascii import unhexlify
|
|
||||||
from typing import Optional, Tuple
|
from typing import Optional, Tuple
|
||||||
|
|
||||||
from twisted.internet.protocol import Factory
|
from twisted.internet.protocol import Factory
|
||||||
@ -28,6 +27,7 @@ from synapse.server import HomeServer
|
|||||||
from tests.http import TestServerTLSConnectionFactory, get_test_ca_cert_file
|
from tests.http import TestServerTLSConnectionFactory, get_test_ca_cert_file
|
||||||
from tests.replication._base import BaseMultiWorkerStreamTestCase
|
from tests.replication._base import BaseMultiWorkerStreamTestCase
|
||||||
from tests.server import FakeChannel, FakeSite, FakeTransport, make_request
|
from tests.server import FakeChannel, FakeSite, FakeTransport, make_request
|
||||||
|
from tests.test_utils import SMALL_PNG
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
@ -190,31 +190,25 @@ class MediaRepoShardTestCase(BaseMultiWorkerStreamTestCase):
|
|||||||
channel1, request1 = self._get_media_req(hs1, "example.com:443", "PIC1")
|
channel1, request1 = self._get_media_req(hs1, "example.com:443", "PIC1")
|
||||||
channel2, request2 = self._get_media_req(hs2, "example.com:443", "PIC1")
|
channel2, request2 = self._get_media_req(hs2, "example.com:443", "PIC1")
|
||||||
|
|
||||||
png_data = unhexlify(
|
|
||||||
b"89504e470d0a1a0a0000000d4948445200000001000000010806"
|
|
||||||
b"0000001f15c4890000000a49444154789c63000100000500010d"
|
|
||||||
b"0a2db40000000049454e44ae426082"
|
|
||||||
)
|
|
||||||
|
|
||||||
request1.setResponseCode(200)
|
request1.setResponseCode(200)
|
||||||
request1.responseHeaders.setRawHeaders(b"Content-Type", [b"image/png"])
|
request1.responseHeaders.setRawHeaders(b"Content-Type", [b"image/png"])
|
||||||
request1.write(png_data)
|
request1.write(SMALL_PNG)
|
||||||
request1.finish()
|
request1.finish()
|
||||||
|
|
||||||
self.pump(0.1)
|
self.pump(0.1)
|
||||||
|
|
||||||
self.assertEqual(channel1.code, 200, channel1.result["body"])
|
self.assertEqual(channel1.code, 200, channel1.result["body"])
|
||||||
self.assertEqual(channel1.result["body"], png_data)
|
self.assertEqual(channel1.result["body"], SMALL_PNG)
|
||||||
|
|
||||||
request2.setResponseCode(200)
|
request2.setResponseCode(200)
|
||||||
request2.responseHeaders.setRawHeaders(b"Content-Type", [b"image/png"])
|
request2.responseHeaders.setRawHeaders(b"Content-Type", [b"image/png"])
|
||||||
request2.write(png_data)
|
request2.write(SMALL_PNG)
|
||||||
request2.finish()
|
request2.finish()
|
||||||
|
|
||||||
self.pump(0.1)
|
self.pump(0.1)
|
||||||
|
|
||||||
self.assertEqual(channel2.code, 200, channel2.result["body"])
|
self.assertEqual(channel2.code, 200, channel2.result["body"])
|
||||||
self.assertEqual(channel2.result["body"], png_data)
|
self.assertEqual(channel2.result["body"], SMALL_PNG)
|
||||||
|
|
||||||
# We expect only three new thumbnails to have been persisted.
|
# We expect only three new thumbnails to have been persisted.
|
||||||
self.assertEqual(start_count + 3, self._count_remote_thumbnails())
|
self.assertEqual(start_count + 3, self._count_remote_thumbnails())
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Copyright 2018 New Vector Ltd
|
# Copyright 2018-2021 The Matrix.org Foundation C.I.C.
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
# you may not use this file except in compliance with the License.
|
# you may not use this file except in compliance with the License.
|
||||||
@ -15,7 +15,6 @@
|
|||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
import urllib.parse
|
import urllib.parse
|
||||||
from binascii import unhexlify
|
|
||||||
from unittest.mock import Mock
|
from unittest.mock import Mock
|
||||||
|
|
||||||
from twisted.internet.defer import Deferred
|
from twisted.internet.defer import Deferred
|
||||||
@ -28,6 +27,7 @@ from synapse.rest.client import groups, login, room
|
|||||||
|
|
||||||
from tests import unittest
|
from tests import unittest
|
||||||
from tests.server import FakeSite, make_request
|
from tests.server import FakeSite, make_request
|
||||||
|
from tests.test_utils import SMALL_PNG
|
||||||
|
|
||||||
|
|
||||||
class VersionTestCase(unittest.HomeserverTestCase):
|
class VersionTestCase(unittest.HomeserverTestCase):
|
||||||
@ -150,11 +150,6 @@ class QuarantineMediaTestCase(unittest.HomeserverTestCase):
|
|||||||
self.media_repo = hs.get_media_repository_resource()
|
self.media_repo = hs.get_media_repository_resource()
|
||||||
self.download_resource = self.media_repo.children[b"download"]
|
self.download_resource = self.media_repo.children[b"download"]
|
||||||
self.upload_resource = self.media_repo.children[b"upload"]
|
self.upload_resource = self.media_repo.children[b"upload"]
|
||||||
self.image_data = unhexlify(
|
|
||||||
b"89504e470d0a1a0a0000000d4948445200000001000000010806"
|
|
||||||
b"0000001f15c4890000000a49444154789c63000100000500010d"
|
|
||||||
b"0a2db40000000049454e44ae426082"
|
|
||||||
)
|
|
||||||
|
|
||||||
def make_homeserver(self, reactor, clock):
|
def make_homeserver(self, reactor, clock):
|
||||||
|
|
||||||
@ -266,7 +261,7 @@ class QuarantineMediaTestCase(unittest.HomeserverTestCase):
|
|||||||
|
|
||||||
# Upload some media into the room
|
# Upload some media into the room
|
||||||
response = self.helper.upload_media(
|
response = self.helper.upload_media(
|
||||||
self.upload_resource, self.image_data, tok=admin_user_tok
|
self.upload_resource, SMALL_PNG, tok=admin_user_tok
|
||||||
)
|
)
|
||||||
|
|
||||||
# Extract media ID from the response
|
# Extract media ID from the response
|
||||||
@ -314,10 +309,10 @@ class QuarantineMediaTestCase(unittest.HomeserverTestCase):
|
|||||||
|
|
||||||
# Upload some media
|
# Upload some media
|
||||||
response_1 = self.helper.upload_media(
|
response_1 = self.helper.upload_media(
|
||||||
self.upload_resource, self.image_data, tok=non_admin_user_tok
|
self.upload_resource, SMALL_PNG, tok=non_admin_user_tok
|
||||||
)
|
)
|
||||||
response_2 = self.helper.upload_media(
|
response_2 = self.helper.upload_media(
|
||||||
self.upload_resource, self.image_data, tok=non_admin_user_tok
|
self.upload_resource, SMALL_PNG, tok=non_admin_user_tok
|
||||||
)
|
)
|
||||||
|
|
||||||
# Extract mxcs
|
# Extract mxcs
|
||||||
@ -381,10 +376,10 @@ class QuarantineMediaTestCase(unittest.HomeserverTestCase):
|
|||||||
|
|
||||||
# Upload some media
|
# Upload some media
|
||||||
response_1 = self.helper.upload_media(
|
response_1 = self.helper.upload_media(
|
||||||
self.upload_resource, self.image_data, tok=non_admin_user_tok
|
self.upload_resource, SMALL_PNG, tok=non_admin_user_tok
|
||||||
)
|
)
|
||||||
response_2 = self.helper.upload_media(
|
response_2 = self.helper.upload_media(
|
||||||
self.upload_resource, self.image_data, tok=non_admin_user_tok
|
self.upload_resource, SMALL_PNG, tok=non_admin_user_tok
|
||||||
)
|
)
|
||||||
|
|
||||||
# Extract media IDs
|
# Extract media IDs
|
||||||
@ -421,10 +416,10 @@ class QuarantineMediaTestCase(unittest.HomeserverTestCase):
|
|||||||
|
|
||||||
# Upload some media
|
# Upload some media
|
||||||
response_1 = self.helper.upload_media(
|
response_1 = self.helper.upload_media(
|
||||||
self.upload_resource, self.image_data, tok=non_admin_user_tok
|
self.upload_resource, SMALL_PNG, tok=non_admin_user_tok
|
||||||
)
|
)
|
||||||
response_2 = self.helper.upload_media(
|
response_2 = self.helper.upload_media(
|
||||||
self.upload_resource, self.image_data, tok=non_admin_user_tok
|
self.upload_resource, SMALL_PNG, tok=non_admin_user_tok
|
||||||
)
|
)
|
||||||
|
|
||||||
# Extract media IDs
|
# Extract media IDs
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
# Copyright 2020 Dirk Klimpel
|
# Copyright 2020 Dirk Klimpel
|
||||||
|
# Copyright 2021 The Matrix.org Foundation C.I.C.
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
# you may not use this file except in compliance with the License.
|
# you may not use this file except in compliance with the License.
|
||||||
@ -14,7 +15,6 @@
|
|||||||
|
|
||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
from binascii import unhexlify
|
|
||||||
|
|
||||||
from parameterized import parameterized
|
from parameterized import parameterized
|
||||||
|
|
||||||
@ -25,6 +25,7 @@ from synapse.rest.media.v1.filepath import MediaFilePaths
|
|||||||
|
|
||||||
from tests import unittest
|
from tests import unittest
|
||||||
from tests.server import FakeSite, make_request
|
from tests.server import FakeSite, make_request
|
||||||
|
from tests.test_utils import SMALL_PNG
|
||||||
|
|
||||||
|
|
||||||
class DeleteMediaByIDTestCase(unittest.HomeserverTestCase):
|
class DeleteMediaByIDTestCase(unittest.HomeserverTestCase):
|
||||||
@ -110,15 +111,10 @@ class DeleteMediaByIDTestCase(unittest.HomeserverTestCase):
|
|||||||
|
|
||||||
download_resource = self.media_repo.children[b"download"]
|
download_resource = self.media_repo.children[b"download"]
|
||||||
upload_resource = self.media_repo.children[b"upload"]
|
upload_resource = self.media_repo.children[b"upload"]
|
||||||
image_data = unhexlify(
|
|
||||||
b"89504e470d0a1a0a0000000d4948445200000001000000010806"
|
|
||||||
b"0000001f15c4890000000a49444154789c63000100000500010d"
|
|
||||||
b"0a2db40000000049454e44ae426082"
|
|
||||||
)
|
|
||||||
|
|
||||||
# Upload some media into the room
|
# Upload some media into the room
|
||||||
response = self.helper.upload_media(
|
response = self.helper.upload_media(
|
||||||
upload_resource, image_data, tok=self.admin_user_tok, expect_code=200
|
upload_resource, SMALL_PNG, tok=self.admin_user_tok, expect_code=200
|
||||||
)
|
)
|
||||||
# Extract media ID from the response
|
# Extract media ID from the response
|
||||||
server_and_media_id = response["content_uri"][6:] # Cut off 'mxc://'
|
server_and_media_id = response["content_uri"][6:] # Cut off 'mxc://'
|
||||||
@ -504,16 +500,10 @@ class DeleteMediaByDateSizeTestCase(unittest.HomeserverTestCase):
|
|||||||
Create a media and return media_id and server_and_media_id
|
Create a media and return media_id and server_and_media_id
|
||||||
"""
|
"""
|
||||||
upload_resource = self.media_repo.children[b"upload"]
|
upload_resource = self.media_repo.children[b"upload"]
|
||||||
# file size is 67 Byte
|
|
||||||
image_data = unhexlify(
|
|
||||||
b"89504e470d0a1a0a0000000d4948445200000001000000010806"
|
|
||||||
b"0000001f15c4890000000a49444154789c63000100000500010d"
|
|
||||||
b"0a2db40000000049454e44ae426082"
|
|
||||||
)
|
|
||||||
|
|
||||||
# Upload some media into the room
|
# Upload some media into the room
|
||||||
response = self.helper.upload_media(
|
response = self.helper.upload_media(
|
||||||
upload_resource, image_data, tok=self.admin_user_tok, expect_code=200
|
upload_resource, SMALL_PNG, tok=self.admin_user_tok, expect_code=200
|
||||||
)
|
)
|
||||||
# Extract media ID from the response
|
# Extract media ID from the response
|
||||||
server_and_media_id = response["content_uri"][6:] # Cut off 'mxc://'
|
server_and_media_id = response["content_uri"][6:] # Cut off 'mxc://'
|
||||||
@ -584,16 +574,10 @@ class QuarantineMediaByIDTestCase(unittest.HomeserverTestCase):
|
|||||||
|
|
||||||
# Create media
|
# Create media
|
||||||
upload_resource = media_repo.children[b"upload"]
|
upload_resource = media_repo.children[b"upload"]
|
||||||
# file size is 67 Byte
|
|
||||||
image_data = unhexlify(
|
|
||||||
b"89504e470d0a1a0a0000000d4948445200000001000000010806"
|
|
||||||
b"0000001f15c4890000000a49444154789c63000100000500010d"
|
|
||||||
b"0a2db40000000049454e44ae426082"
|
|
||||||
)
|
|
||||||
|
|
||||||
# Upload some media into the room
|
# Upload some media into the room
|
||||||
response = self.helper.upload_media(
|
response = self.helper.upload_media(
|
||||||
upload_resource, image_data, tok=self.admin_user_tok, expect_code=200
|
upload_resource, SMALL_PNG, tok=self.admin_user_tok, expect_code=200
|
||||||
)
|
)
|
||||||
# Extract media ID from the response
|
# Extract media ID from the response
|
||||||
server_and_media_id = response["content_uri"][6:] # Cut off 'mxc://'
|
server_and_media_id = response["content_uri"][6:] # Cut off 'mxc://'
|
||||||
@ -711,16 +695,10 @@ class ProtectMediaByIDTestCase(unittest.HomeserverTestCase):
|
|||||||
|
|
||||||
# Create media
|
# Create media
|
||||||
upload_resource = media_repo.children[b"upload"]
|
upload_resource = media_repo.children[b"upload"]
|
||||||
# file size is 67 Byte
|
|
||||||
image_data = unhexlify(
|
|
||||||
b"89504e470d0a1a0a0000000d4948445200000001000000010806"
|
|
||||||
b"0000001f15c4890000000a49444154789c63000100000500010d"
|
|
||||||
b"0a2db40000000049454e44ae426082"
|
|
||||||
)
|
|
||||||
|
|
||||||
# Upload some media into the room
|
# Upload some media into the room
|
||||||
response = self.helper.upload_media(
|
response = self.helper.upload_media(
|
||||||
upload_resource, image_data, tok=self.admin_user_tok, expect_code=200
|
upload_resource, SMALL_PNG, tok=self.admin_user_tok, expect_code=200
|
||||||
)
|
)
|
||||||
# Extract media ID from the response
|
# Extract media ID from the response
|
||||||
server_and_media_id = response["content_uri"][6:] # Cut off 'mxc://'
|
server_and_media_id = response["content_uri"][6:] # Cut off 'mxc://'
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
# Copyright 2020 Dirk Klimpel
|
# Copyright 2020 Dirk Klimpel
|
||||||
|
# Copyright 2021 The Matrix.org Foundation C.I.C.
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
# you may not use this file except in compliance with the License.
|
# you may not use this file except in compliance with the License.
|
||||||
@ -13,7 +14,6 @@
|
|||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
import json
|
import json
|
||||||
from binascii import unhexlify
|
|
||||||
from typing import Any, Dict, List, Optional
|
from typing import Any, Dict, List, Optional
|
||||||
|
|
||||||
import synapse.rest.admin
|
import synapse.rest.admin
|
||||||
@ -21,6 +21,7 @@ from synapse.api.errors import Codes
|
|||||||
from synapse.rest.client import login
|
from synapse.rest.client import login
|
||||||
|
|
||||||
from tests import unittest
|
from tests import unittest
|
||||||
|
from tests.test_utils import SMALL_PNG
|
||||||
|
|
||||||
|
|
||||||
class UserMediaStatisticsTestCase(unittest.HomeserverTestCase):
|
class UserMediaStatisticsTestCase(unittest.HomeserverTestCase):
|
||||||
@ -468,16 +469,9 @@ class UserMediaStatisticsTestCase(unittest.HomeserverTestCase):
|
|||||||
"""
|
"""
|
||||||
upload_resource = self.media_repo.children[b"upload"]
|
upload_resource = self.media_repo.children[b"upload"]
|
||||||
for _ in range(number_media):
|
for _ in range(number_media):
|
||||||
# file size is 67 Byte
|
|
||||||
image_data = unhexlify(
|
|
||||||
b"89504e470d0a1a0a0000000d4948445200000001000000010806"
|
|
||||||
b"0000001f15c4890000000a49444154789c63000100000500010d"
|
|
||||||
b"0a2db40000000049454e44ae426082"
|
|
||||||
)
|
|
||||||
|
|
||||||
# Upload some media into the room
|
# Upload some media into the room
|
||||||
self.helper.upload_media(
|
self.helper.upload_media(
|
||||||
upload_resource, image_data, tok=user_token, expect_code=200
|
upload_resource, SMALL_PNG, tok=user_token, expect_code=200
|
||||||
)
|
)
|
||||||
|
|
||||||
def _check_fields(self, content: List[Dict[str, Any]]):
|
def _check_fields(self, content: List[Dict[str, Any]]):
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Copyright 2018 New Vector Ltd
|
# Copyright 2018-2021 The Matrix.org Foundation C.I.C.
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
# you may not use this file except in compliance with the License.
|
# you may not use this file except in compliance with the License.
|
||||||
@ -33,7 +33,7 @@ from synapse.types import JsonDict, UserID
|
|||||||
|
|
||||||
from tests import unittest
|
from tests import unittest
|
||||||
from tests.server import FakeSite, make_request
|
from tests.server import FakeSite, make_request
|
||||||
from tests.test_utils import make_awaitable
|
from tests.test_utils import SMALL_PNG, make_awaitable
|
||||||
from tests.unittest import override_config
|
from tests.unittest import override_config
|
||||||
|
|
||||||
|
|
||||||
@ -2835,11 +2835,7 @@ class UserMediaRestTestCase(unittest.HomeserverTestCase):
|
|||||||
other_user_tok = self.login("user", "pass")
|
other_user_tok = self.login("user", "pass")
|
||||||
|
|
||||||
# Resolution: 1×1, MIME type: image/png, Extension: png, Size: 67 B
|
# Resolution: 1×1, MIME type: image/png, Extension: png, Size: 67 B
|
||||||
image_data1 = unhexlify(
|
image_data1 = SMALL_PNG
|
||||||
b"89504e470d0a1a0a0000000d4948445200000001000000010806"
|
|
||||||
b"0000001f15c4890000000a49444154789c63000100000500010d"
|
|
||||||
b"0a2db40000000049454e44ae426082"
|
|
||||||
)
|
|
||||||
# Resolution: 1×1, MIME type: image/gif, Extension: gif, Size: 35 B
|
# Resolution: 1×1, MIME type: image/gif, Extension: gif, Size: 35 B
|
||||||
image_data2 = unhexlify(
|
image_data2 = unhexlify(
|
||||||
b"47494638376101000100800100000000"
|
b"47494638376101000100800100000000"
|
||||||
@ -2943,14 +2939,7 @@ class UserMediaRestTestCase(unittest.HomeserverTestCase):
|
|||||||
"""
|
"""
|
||||||
media_ids = []
|
media_ids = []
|
||||||
for _ in range(number_media):
|
for _ in range(number_media):
|
||||||
# file size is 67 Byte
|
media_ids.append(self._create_media_and_access(user_token, SMALL_PNG))
|
||||||
image_data = unhexlify(
|
|
||||||
b"89504e470d0a1a0a0000000d4948445200000001000000010806"
|
|
||||||
b"0000001f15c4890000000a49444154789c63000100000500010d"
|
|
||||||
b"0a2db40000000049454e44ae426082"
|
|
||||||
)
|
|
||||||
|
|
||||||
media_ids.append(self._create_media_and_access(user_token, image_data))
|
|
||||||
|
|
||||||
return media_ids
|
return media_ids
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Copyright 2018 New Vector Ltd
|
# Copyright 2018-2021 The Matrix.org Foundation C.I.C.
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
# you may not use this file except in compliance with the License.
|
# you may not use this file except in compliance with the License.
|
||||||
@ -38,6 +38,7 @@ from synapse.rest.media.v1.storage_provider import FileStorageProviderBackend
|
|||||||
|
|
||||||
from tests import unittest
|
from tests import unittest
|
||||||
from tests.server import FakeSite, make_request
|
from tests.server import FakeSite, make_request
|
||||||
|
from tests.test_utils import SMALL_PNG
|
||||||
from tests.utils import default_config
|
from tests.utils import default_config
|
||||||
|
|
||||||
|
|
||||||
@ -134,11 +135,7 @@ class _TestImage:
|
|||||||
# smoll png
|
# smoll png
|
||||||
(
|
(
|
||||||
_TestImage(
|
_TestImage(
|
||||||
unhexlify(
|
SMALL_PNG,
|
||||||
b"89504e470d0a1a0a0000000d4948445200000001000000010806"
|
|
||||||
b"0000001f15c4890000000a49444154789c63000100000500010d"
|
|
||||||
b"0a2db40000000049454e44ae426082"
|
|
||||||
),
|
|
||||||
b"image/png",
|
b"image/png",
|
||||||
b".png",
|
b".png",
|
||||||
unhexlify(
|
unhexlify(
|
||||||
@ -593,15 +590,8 @@ class SpamCheckerTestCase(unittest.HomeserverTestCase):
|
|||||||
|
|
||||||
def test_upload_innocent(self):
|
def test_upload_innocent(self):
|
||||||
"""Attempt to upload some innocent data that should be allowed."""
|
"""Attempt to upload some innocent data that should be allowed."""
|
||||||
|
|
||||||
image_data = unhexlify(
|
|
||||||
b"89504e470d0a1a0a0000000d4948445200000001000000010806"
|
|
||||||
b"0000001f15c4890000000a49444154789c63000100000500010d"
|
|
||||||
b"0a2db40000000049454e44ae426082"
|
|
||||||
)
|
|
||||||
|
|
||||||
self.helper.upload_media(
|
self.helper.upload_media(
|
||||||
self.upload_resource, image_data, tok=self.tok, expect_code=200
|
self.upload_resource, SMALL_PNG, tok=self.tok, expect_code=200
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_upload_ban(self):
|
def test_upload_ban(self):
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
# Copyright 2019 New Vector Ltd
|
# Copyright 2019-2021 The Matrix.org Foundation C.I.C.
|
||||||
# Copyright 2020 The Matrix.org Foundation C.I.C
|
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
# you may not use this file except in compliance with the License.
|
# you may not use this file except in compliance with the License.
|
||||||
@ -19,6 +18,7 @@ Utilities for running the unit tests
|
|||||||
import sys
|
import sys
|
||||||
import warnings
|
import warnings
|
||||||
from asyncio import Future
|
from asyncio import Future
|
||||||
|
from binascii import unhexlify
|
||||||
from typing import Any, Awaitable, Callable, TypeVar
|
from typing import Any, Awaitable, Callable, TypeVar
|
||||||
from unittest.mock import Mock
|
from unittest.mock import Mock
|
||||||
|
|
||||||
@ -117,3 +117,13 @@ class FakeResponse:
|
|||||||
def deliverBody(self, protocol):
|
def deliverBody(self, protocol):
|
||||||
protocol.dataReceived(self.body)
|
protocol.dataReceived(self.body)
|
||||||
protocol.connectionLost(Failure(ResponseDone()))
|
protocol.connectionLost(Failure(ResponseDone()))
|
||||||
|
|
||||||
|
|
||||||
|
# A small image used in some tests.
|
||||||
|
#
|
||||||
|
# Resolution: 1×1, MIME type: image/png, Extension: png, Size: 67 B
|
||||||
|
SMALL_PNG = unhexlify(
|
||||||
|
b"89504e470d0a1a0a0000000d4948445200000001000000010806"
|
||||||
|
b"0000001f15c4890000000a49444154789c63000100000500010d"
|
||||||
|
b"0a2db40000000049454e44ae426082"
|
||||||
|
)
|
||||||
|
Loading…
Reference in New Issue
Block a user