1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
|
import tempfile
import pytest
import stripe
TEST_RESOURCE_ID = "file_123"
class TestFileUpload(object):
@pytest.fixture(scope="function")
def setup_upload_api_base(self):
stripe.upload_api_base = stripe.api_base
stripe.api_base = None
yield
stripe.api_base = stripe.upload_api_base
stripe.upload_api_base = "https://files.stripe.com"
def test_is_listable(self, http_client_mock):
resources = stripe.FileUpload.list()
http_client_mock.assert_requested("get", path="/v1/files")
assert isinstance(resources.data, list)
assert isinstance(resources.data[0], stripe.FileUpload)
def test_is_retrievable(self, http_client_mock):
resource = stripe.FileUpload.retrieve(TEST_RESOURCE_ID)
http_client_mock.assert_requested(
"get", path="/v1/files/%s" % TEST_RESOURCE_ID
)
assert isinstance(resource, stripe.FileUpload)
def test_is_creatable(self, setup_upload_api_base, http_client_mock):
stripe.multipart_data_generator.MultipartDataGenerator._initialize_boundary = (
lambda self: 1234567890
)
test_file = tempfile.TemporaryFile()
resource = stripe.FileUpload.create(
purpose="dispute_evidence",
file=test_file,
file_link_data={"create": True},
)
http_client_mock.assert_requested(
"post",
api_base=stripe.upload_api_base,
path="/v1/files",
content_type="multipart/form-data; boundary=1234567890",
)
assert isinstance(resource, stripe.FileUpload)
def test_deserializes_from_file(self):
obj = stripe.util.convert_to_stripe_object(
{"object": "file"}, api_mode="V1"
)
assert isinstance(obj, stripe.FileUpload)
def test_deserializes_from_file_upload(self):
obj = stripe.util.convert_to_stripe_object(
{"object": "file_upload"}, api_mode="V1"
)
assert isinstance(obj, stripe.FileUpload)
|