示例#1
0
 async def test_chrome_executable(self):
     assert self.chrome.chrome_setup.chrome_executable() is None
     chrome_1 = Chrome().keep_open()
     await chrome_1.browser()
     assert '/pyppeteer/local-chromium' in chrome_1.chrome_setup.chrome_executable(
     )
     chrome_2 = Chrome().keep_open()
     await chrome_2.browser()
     assert '/pyppeteer/local-chromium' in chrome_2.chrome_setup.chrome_executable(
     )
     await chrome_2.close()
示例#2
0
 async def test_screenshot_jira(self):
     chrome = Chrome()
     browser = await chrome.browser()
     page = (await browser.pages()).pop()
     with Web_Server() as web_server:
         await page.goto(web_server.url())
         self.png_data = await page.screenshot()
示例#3
0
 async def test_args_set_user_data_dir__enable_logging(self):
     user_data = temp_folder()
     chrome = Chrome().headless(True)
     (chrome.chrome_args.args_set_user_data_dir(user_data).enable_logging())
     await chrome.browser()
     log_file = path_combine(user_data, 'Default/chrome_debug.log')
     assert file_exists(log_file)
示例#4
0
 async def test_set_chrome_log_file(self):
     log_file = '/tmp/chrome_logfile.log'
     file_delete(log_file)
     chrome = Chrome().headless(True)
     chrome.chrome_args.enable_logging(log_file)
     await chrome.browser()
     assert 'Could not get the download directory.' in file_contents(
         log_file).split('\n').pop(0)
示例#5
0
 def test_run_chrome_locally(self):
     path_headless_shell = '/Applications/Google Chrome.app/Contents/MacOS/Google Chrome'
     chrome = Chrome().keep_open()
     chrome.options['path_headless_shell'] = path_headless_shell
     chrome_sync = Chrome_Sync(chrome)
     chrome_sync.browser()
     chrome_sync.open('https://www.google.com')
     self.png_data = bytes_to_base64(chrome_sync.screenshot())
     chrome_sync.close()
示例#6
0
    def __init__(self, headless=True):
        self.web_page = '/vis-js/simple.html'
        self.web_root = Files.path_combine(Files.parent_folder(__file__),
                                           '../web_root')
        chrome = Chrome().headless(headless)

        self.api_browser = API_Browser(chrome.sync().browser())
        self.render_page = Render_Page(api_browser=self.api_browser,
                                       web_root=self.web_root)
        self.bot_name = 'GS_Bot'
        self.options = None
示例#7
0
    async def test_keep_open(self):
        file_delete(Chrome_Setup(None, None).file_tmp_last_chrome_session)
        url_1 = 'https://www.google.com/404'
        url_2 = 'https://www.google.com/ABC'
        chrome_1 = Chrome().keep_open(
        )  # 1st chrome object (with keep_open setting)
        browser_1 = await chrome_1.browser(
        )  # open process and get browser object
        page_1 = (await browser_1.pages()).pop()  # get first page
        await page_1.goto(url_1)  # open 404 in google
        assert page_1.url == url_1  # confirm url

        chrome_2 = Chrome().keep_open()  # create 2nd chrome object
        browser_2 = await chrome_2.browser(
        )  # connect to chrome and get browser object
        page_2 = (await browser_2.pages()).pop()  # get page object
        assert page_2.url == url_1  # confirm url

        await page_2.goto(url_2)  # open another page in browser_2
        assert page_1.url == url_2  # confirm it was opened in browser 1
        assert page_2.url == url_2  # and in browser_2

        chrome_3 = Chrome().keep_open()  # create 3rd chrome object
        browser_3 = await chrome_3.browser(
        )  # connect to chrome and get browser object
        page_3 = (await browser_3.pages()).pop()  # get page object
        assert page_3.url == url_2  # confirm url

        assert self.chrome.chrome_setup.connect_method(
        ) == 'No browser open or connected'
        assert chrome_1.chrome_setup.connect_method(
        ) == 'Started chrome process'
        assert chrome_2.chrome_setup.connect_method(
        ) == 'Connected to running chrome process'
        assert chrome_3.chrome_setup.connect_method(
        ) == 'Connected to running chrome process'
        #await browser_1.close()
        await browser_3.close()  # close browser
示例#8
0
 def __init__(self, chrome: Chrome = None):
     self.chrome = chrome or Chrome()
示例#9
0
 async def test_site__not_headless_what_is_my_browser(self):
     chrome = Chrome(headless=False)
     browser = await chrome.browser()
     page = (await browser.pages()).pop()
     await page.goto('https://www.whatismybrowser.com')
     self.png_data = await page.screenshot()
示例#10
0
 async def test_site__headless_news_google_com(self):
     chrome = Chrome().headless(True)
     browser = await chrome.browser()
     page = (await browser.pages()).pop()
     await page.goto('https://www.google.com/AAAAAA')
     self.png_data = await page.screenshot()
示例#11
0
 def setUp(self):
     super().setUp()
     self.chrome = Chrome()