1424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)# Copyright 2013 The Chromium Authors. All rights reserved.
22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)# Use of this source code is governed by a BSD-style license that can be
32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)# found in the LICENSE file.
42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
5868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)from telemetry.unittest import tab_test_case
62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class InspectorPageTest(tab_test_case.TabTestCase):
990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  def testPageNavigateToNormalUrl(self):
10a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    self.Navigate('blank.html')
112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  def testCustomActionToNavigate(self):
13a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    self.Navigate('page_with_link.html')
142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    self.assertEquals(
152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        self._tab.EvaluateJavaScript('document.location.pathname;'),
162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        '/page_with_link.html')
172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
1846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    self._tab.ExecuteJavaScript('document.getElementById("clickme").click();')
1946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    self._tab.WaitForNavigate()
202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    self.assertEquals(
222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        self._tab.EvaluateJavaScript('document.location.pathname;'),
232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        '/blank.html')
242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  def testGetCookieByName(self):
26a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    self.Navigate('blank.html')
272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    self._tab.ExecuteJavaScript('document.cookie="foo=bar"')
282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    self.assertEquals(self._tab.GetCookieByName('foo'), 'bar')
29c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
30c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  def testScriptToEvaluateOnCommit(self):
31a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    self.Navigate('blank.html',
32a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)                  script_to_evaluate_on_commit='var foo = "bar";')
33c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    self._tab.WaitForDocumentReadyStateToBeComplete()
34c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    self.assertEquals(self._tab.EvaluateJavaScript('foo'), 'bar')
35