|
14 | 14 | # |
15 | 15 |
|
16 | 16 | import mock |
17 | | - |
18 | 17 | import pytest |
| 18 | +from StringIO import StringIO |
19 | 19 |
|
20 | 20 | from f5.bigip import ManagementRoot |
21 | 21 | from f5.bigip.shared.file_transfer import\ |
@@ -59,3 +59,55 @@ def test_ISO_extension(tmpdir): |
59 | 59 | with pytest.raises(FileMustNotHaveDotISOExtension) as EIO: |
60 | 60 | ftu.upload_file(filepath.__str__(), chunk_size=21) |
61 | 61 | assert EIO.value.message == 'wrongname.iso' |
| 62 | + |
| 63 | + |
| 64 | +def test_stringio_upload_80a(tmpdir): |
| 65 | + sio = StringIO(80*'a') |
| 66 | + mr = ManagementRoot('FAKENETLOC', 'FAKENAME', 'FAKEPASSWORD') |
| 67 | + mr._meta_data['icr_session'] = mock.MagicMock() |
| 68 | + ftu = mr.shared.file_transfer.uploads |
| 69 | + ftu.upload_stringio(sio, 'testtarget', chunk_size=20) |
| 70 | + session_mock = mr._meta_data['icr_session'] |
| 71 | + for i in range(4): |
| 72 | + d = session_mock.post.call_args_list[i][1]['data'] |
| 73 | + assert d == 'aaaaaaaaaaaaaaaaaaaa' |
| 74 | + |
| 75 | + |
| 76 | +def test_stringio_upload_70a(tmpdir): |
| 77 | + sio = StringIO(70*'a') |
| 78 | + mr = ManagementRoot('FAKENETLOC', 'FAKENAME', 'FAKEPASSWORD') |
| 79 | + mr._meta_data['icr_session'] = mock.MagicMock() |
| 80 | + ftu = mr.shared.file_transfer.uploads |
| 81 | + ftu.upload_stringio(sio, 'testtarget', chunk_size=20) |
| 82 | + session_mock = mr._meta_data['icr_session'] |
| 83 | + for i in range(3): |
| 84 | + d = session_mock.post.call_args_list[i][1]['data'] |
| 85 | + assert d == 'aaaaaaaaaaaaaaaaaaaa' |
| 86 | + lchunk = session_mock.post.call_args_list[3][1]['data'] |
| 87 | + assert 10*'a' == lchunk |
| 88 | + |
| 89 | + |
| 90 | +def test_bytes_upload_80a(tmpdir): |
| 91 | + bytestring80a = 80*'a' |
| 92 | + mr = ManagementRoot('FAKENETLOC', 'FAKENAME', 'FAKEPASSWORD') |
| 93 | + mr._meta_data['icr_session'] = mock.MagicMock() |
| 94 | + ftu = mr.shared.file_transfer.uploads |
| 95 | + ftu.upload_bytes(bytestring80a, 'testtarget', chunk_size=20) |
| 96 | + session_mock = mr._meta_data['icr_session'] |
| 97 | + for i in range(4): |
| 98 | + d = session_mock.post.call_args_list[i][1]['data'] |
| 99 | + assert d == 'aaaaaaaaaaaaaaaaaaaa' |
| 100 | + |
| 101 | + |
| 102 | +def test_bytes_upload_70a(tmpdir): |
| 103 | + bytestring70a = 70*'a' |
| 104 | + mr = ManagementRoot('FAKENETLOC', 'FAKENAME', 'FAKEPASSWORD') |
| 105 | + mr._meta_data['icr_session'] = mock.MagicMock() |
| 106 | + ftu = mr.shared.file_transfer.uploads |
| 107 | + ftu.upload_bytes(bytestring70a, 'testtarget', chunk_size=20) |
| 108 | + session_mock = mr._meta_data['icr_session'] |
| 109 | + for i in range(3): |
| 110 | + d = session_mock.post.call_args_list[i][1]['data'] |
| 111 | + assert d == 'aaaaaaaaaaaaaaaaaaaa' |
| 112 | + lchunk = session_mock.post.call_args_list[3][1]['data'] |
| 113 | + assert 10*'a' == lchunk |
0 commit comments