Ejemplo n.º 1
0
  def setUp(self):
    self.scope = 'scope'
    self.service_account_email = '*****@*****.**'
    self.private_key_password = '******'
    https_proxy_host = 'myproxy.com'
    https_proxy_port = 443
    https_proxy = googleads.common.ProxyConfig.Proxy(https_proxy_host,
                                                     https_proxy_port)
    self.proxy_config = googleads.common.ProxyConfig(https_proxy=https_proxy)
    self.https_proxy = '%s:%s' % (https_proxy_host, https_proxy_port)
    self.access_token_unrefreshed = 'a'
    self.access_token_refreshed = 'b'

    # Mock out filesystem and file for testing.
    filesystem = fake_filesystem.FakeFilesystem()
    tempfile = fake_tempfile.FakeTempfileModule(filesystem)
    fake_open = fake_filesystem.FakeFileOpen(filesystem)
    key_file_path = tempfile.NamedTemporaryFile(delete=False).name

    with fake_open(key_file_path, 'w') as file_handle:
      file_handle.write('IT\'S A SECRET TO EVERYBODY.')

    # Mock out httplib2.Http for testing.
    self.http = mock.Mock(spec=httplib2.Http)
    self.opener = self.http.return_value = mock.Mock()
    self.opener.proxy_info = self.proxy_config.proxy_info
    self.opener.ca_certs = self.proxy_config.cafile
    self.opener.disable_ssl_certificate_valiation = (
        self.proxy_config.disable_certificate_validation)

    # Mock out oauth2client.client.OAuth2Credentials for testing
    self.oauth2_credentials = mock.Mock(spec=SignedJwtAssertionCredentials)
    self.mock_oauth2_credentials = self.oauth2_credentials.return_value = (
        mock.Mock())
    self.mock_oauth2_credentials.access_token = 'x'
    self.mock_oauth2_credentials.token_expiry = datetime.datetime(1980, 1, 1,
                                                                  12)

    def apply(headers):
      headers['Authorization'] = ('Bearer %s'
                                  % self.mock_oauth2_credentials.access_token)

    def refresh(mock_http):
      self.mock_oauth2_credentials.access_token = (
          self.access_token_unrefreshed if
          self.mock_oauth2_credentials.access_token is 'x'
          else self.access_token_refreshed)
      self.mock_oauth2_credentials.token_expiry = datetime.datetime.utcnow()

    self.mock_oauth2_credentials.apply = mock.Mock(side_effect=apply)
    self.mock_oauth2_credentials.refresh = mock.Mock(side_effect=refresh)
    with mock.patch('__builtin__.open', fake_open):
      with mock.patch('oauth2client.client'
                      '.SignedJwtAssertionCredentials',
                      self.oauth2_credentials):
        self.googleads_client = googleads.oauth2.GoogleServiceAccountClient(
            self.scope, self.service_account_email, key_file_path,
            self.private_key_password, proxy_config=self.proxy_config)
      # Undo the call count for the auto-refresh
      self.mock_oauth2_credentials.refresh.reset_mock()
Ejemplo n.º 2
0
 def setUp(self):
     self.filesystem = fake_filesystem.FakeFilesystem()
     self.tempfile = fake_tempfile.FakeTempfileModule(self.filesystem)
     self.fake_open = fake_filesystem.FakeFileOpen(self.filesystem)
     self.fake_proxy = mock.Mock()
     self.fake_proxy.return_value = mock.Mock()
     self.fake_proxy.return_value.proxy_host = 'ahost'
     self.fake_proxy.return_value.proxy_port = 'aport'
Ejemplo n.º 3
0
 def setUp(self):
     self.real_tempfile = sys.modules['tempfile']
     self.real_os = sys.modules['os']
     self.filesystem = fake_filesystem.FakeFilesystem()
     sys.modules['tempfile'] = fake_tempfile.FakeTempfileModule(
         self.filesystem)
     sys.modules['os'] = fake_filesystem.FakeOsModule(self.filesystem)
     random.seed(32452)
Ejemplo n.º 4
0
    def _refresh(self):
        '''Renew the fake file system and set the _isStale flag to `False`.'''
        mock.patch.stopall()

        self.fs = fake_filesystem.FakeFilesystem()
        self.fake_os = fake_filesystem.FakeOsModule(self.fs)
        self.fake_glob = fake_filesystem_glob.FakeGlobModule(self.fs)
        self.fake_path = self.fake_os.path
        self.fake_shutil = fake_filesystem_shutil.FakeShutilModule(self.fs)
        self.fake_tempfile_ = fake_tempfile.FakeTempfileModule(self.fs)
        self.fake_open = fake_filesystem.FakeFileOpen(self.fs)

        self._isStale = False
Ejemplo n.º 5
0
 def replaceGlobs(self, globs_):
     globs = globs_.copy()
     if self._isStale:
         self._refresh()
     if 'os' in globs:
         globs['os'] = fake_filesystem.FakeOsModule(self.fs)
     if 'glob' in globs:
         globs['glob'] = fake_filesystem_glob.FakeGlobModule(self.fs)
     if 'path' in globs:
         globs['path'] = fake_filesystem.FakePathModule(self.fs)
     if 'shutil' in globs:
         globs['shutil'] = fake_filesystem_shutil.FakeShutilModule(self.fs)
     if 'tempfile' in globs:
         globs['tempfile'] = fake_tempfile.FakeTempfileModule(self.fs)
     return globs
Ejemplo n.º 6
0
    def _refresh(self):
        '''Renew the fake file system and set the _isStale flag to `False`.'''
        if self._stubs is not None:
            self._stubs.SmartUnsetAll()
        self._stubs = mox3.stubout.StubOutForTesting()

        self.fs = fake_filesystem.FakeFilesystem()
        self.fake_os = fake_filesystem.FakeOsModule(self.fs)
        self.fake_glob = fake_filesystem_glob.FakeGlobModule(self.fs)
        self.fake_path = self.fake_os.path
        self.fake_shutil = fake_filesystem_shutil.FakeShutilModule(self.fs)
        self.fake_tempfile_ = fake_tempfile.FakeTempfileModule(self.fs)
        self.fake_open = fake_filesystem.FakeFileOpen(self.fs)

        self._isStale = False
Ejemplo n.º 7
0
 def setUp(self):
     self.filesystem = fake_filesystem.FakeFilesystem(path_separator='/')
     self.tempfile = fake_tempfile.FakeTempfileModule(self.filesystem)
     self.orig_logging = fake_tempfile.logging
     self.fake_logging = FakeLogging(self)
     fake_tempfile.logging = self.fake_logging
Ejemplo n.º 8
0
 def setUp(self):
     self.filesystem = fake_filesystem.FakeFilesystem()
     self.tempfile = fake_tempfile.FakeTempfileModule(self.filesystem)
     self.fake_open = fake_filesystem.FakeFileOpen(self.filesystem)