diff options
Diffstat (limited to 'tests/other/test_curlDownload.py')
-rw-r--r-- | tests/other/test_curlDownload.py | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/tests/other/test_curlDownload.py b/tests/other/test_curlDownload.py index d3f8f6754..17af1cdd4 100644 --- a/tests/other/test_curlDownload.py +++ b/tests/other/test_curlDownload.py @@ -1,13 +1,17 @@ # -*- coding: utf-8 -*- from os import stat -from os.path import exists + +from unittest import TestCase from tests.helper.Stubs import Core from pyload.network.Bucket import Bucket +from pyload.plugins.network.CurlRequest import CurlRequest from pyload.plugins.network.CurlDownload import CurlDownload -class TestCurlRequest: +class TestCurlRequest(TestCase): + + cookieURL = "http://forum.pyload.org" def setUp(self): self.dl = CurlDownload(Bucket()) @@ -17,12 +21,33 @@ class TestCurlRequest: def test_download(self): + assert self.dl.context is not None + self.dl.download("http://pyload.org/lib/tpl/pyload/images/pyload-logo-edited3.5-new-font-small.png", "/tmp/random.bin") print self.dl.size, self.dl.arrived assert self.dl.size == self.dl.arrived > 0 assert stat("/tmp/random.bin").st_size == self.dl.size + def test_cookies(self): + + req = CurlRequest({}) + req.load(self.cookieURL) + + assert len(req.cj) > 0 + + dl = CurlDownload(Bucket(), req) + + assert req.context is dl.context is not None + + dl.download(self.cookieURL + "/cookies.php", "cookies.txt") + cookies = open("cookies.txt", "rb").read().splitlines() + + self.assertEqual(len(cookies), len(dl.context)) + for c in cookies: + k, v = c.strip().split(":") + self.assertIn(k, req.cj) + def test_attributes(self): assert self.dl.size == 0 |