MCPcopy
hub / github.com/psf/requests / test_POSTBIN_SEEKED_OBJECT_WITH_NO_ITER

Method test_POSTBIN_SEEKED_OBJECT_WITH_NO_ITER

tests/test_requests.py:841–880  ·  view source on GitHub ↗
(self, httpbin)

Source from the content-addressed store, hash-verified

839 assert b'name="random-file-2"' in post.request.body
840
841 def test_POSTBIN_SEEKED_OBJECT_WITH_NO_ITER(self, httpbin):
842 class TestStream:
843 def __init__(self, data):
844 self.data = data.encode()
845 self.length = len(self.data)
846 self.index = 0
847
848 def __len__(self):
849 return self.length
850
851 def read(self, size=None):
852 if size:
853 ret = self.data[self.index : self.index + size]
854 self.index += size
855 else:
856 ret = self.data[self.index :]
857 self.index = self.length
858 return ret
859
860 def tell(self):
861 return self.index
862
863 def seek(self, offset, where=0):
864 if where == 0:
865 self.index = offset
866 elif where == 1:
867 self.index += offset
868 elif where == 2:
869 self.index = self.length + offset
870
871 test = TestStream("test")
872 post1 = requests.post(httpbin("post"), data=test)
873 assert post1.status_code == 200
874 assert post1.json()["data"] == "test"
875
876 test = TestStream("test")
877 test.seek(2)
878 post2 = requests.post(httpbin("post"), data=test)
879 assert post2.status_code == 200
880 assert post2.json()["data"] == "st"
881
882 def test_POSTBIN_GET_POST_FILES_WITH_DATA(self, httpbin):
883 url = httpbin("post")

Callers

nothing calls this directly

Calls 5

seekMethod · 0.95
TestStreamClass · 0.85
httpbinFunction · 0.85
postMethod · 0.80
jsonMethod · 0.80

Tested by

no test coverage detected