Skip to content

Commit 6b18080

Browse files
Create download.py
1 parent 7b65504 commit 6b18080

1 file changed

Lines changed: 42 additions & 0 deletions

File tree

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import os
2+
import time
3+
import shutil
4+
import tempfile
5+
import unittest
6+
from selenium import webdriver
7+
8+
9+
class Download(unittest.TestCase):
10+
11+
def setUp(self):
12+
self.download_dir = tempfile.mkdtemp()
13+
14+
profile = webdriver.FirefoxProfile()
15+
profile.set_preference("browser.download.dir", self.download_dir)
16+
profile.set_preference("browser.download.folderList", 2)
17+
profile.set_preference(
18+
"browser.helperApps.neverAsk.saveToDisk",
19+
"images/jpeg, application/pdf, application/octet-stream")
20+
profile.set_preference("pdfjs.disabled", True)
21+
self.driver = webdriver.Firefox(firefox_profile=profile)
22+
23+
def tearDown(self):
24+
self.driver.quit()
25+
shutil.rmtree(self.download_dir)
26+
27+
def test_example_1(self):
28+
driver = self.driver
29+
driver.get('http://the-internet.herokuapp.com/download')
30+
download_link = driver.find_element_by_css_selector('.example a')
31+
download_link.click()
32+
33+
time.sleep(1.0) # necessary for slow download speeds
34+
35+
files = os.listdir(self.download_dir)
36+
files = [os.path.join(self.download_dir, f)
37+
for f in files] # add directory to each filename
38+
assert len(files) > 0, "no files were downloaded"
39+
assert os.path.getsize(files[0]) > 0, "downloaded file was empty"
40+
41+
if __name__ == "__main__":
42+
unittest.main()

0 commit comments

Comments
 (0)