test_download_pdf.py 1.5 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
from marionette_driver import By, Actions
from marionette_driver.errors import MarionetteException, JavascriptException

from marionette import MarionetteTestCase

import testsuite


class Test(MarionetteTestCase):

    def setUp(self):
        MarionetteTestCase.setUp(self)

        ts = testsuite.TestSuite()
        self.ts = ts

        self.URL = "file://%s/testfile.pdf" % ts.t['options']['test_data_dir']


    def test_download_pdf(self):
        m = self.marionette

        m.set_search_timeout(1000)
24
        m.set_window_size(1024, 300)
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

        with m.using_context('content'):

            current_window = m.current_chrome_window_handle

            m.navigate(self.URL)
            download_button = m.find_element('id', 'download')
            action = Actions(m)
            action.click(download_button)
            action.wait(time=3)
            action.perform()

            closed_window = 0
            with m.using_context('chrome'):
                for window in m.chrome_window_handles:
                    if window != current_window:
                        m.switch_to_window(window)
                        info_msg = m.find_element('id', 'info.body')
                        self.assertRegexpMatches(info_msg.text, 'Tails',
                                msg='Pop up window text does not include Tails')
                        m.close()
                        closed_window += 1
                m.switch_to_window(current_window)
            self.assertEqual(closed_window, 1, msg="no download pop up")