def testAddProxyFromScratchWithAuth(self): self.setAnswers('Y', '1', 'golden', '80', 'Y', 'username', 'password') self.assertTrue(http_proxy_setup.ChangeGcloudProxySettings()) self.AssertErrContains(self._ADD_NEW_PROXY_PROMPT) self.AssertErrNotContains(self._CHANGE_EXISTING_MENU) self.AssertErrContains('Cloud SDK proxy properties set.') self.AssertGoldenProxyProperties(with_auth=True)
def testInvalidPropertiesInGcloudMakeNoChanges(self): SET_PROXY(proxy_type='http', port='80') self.setAnswers('N') self.assertFalse(http_proxy_setup.ChangeGcloudProxySettings()) self.AssertErrContains( 'Cloud SDK network proxy settings appear to be invalid. Proxy type, ' 'address, and port must be specified. Run [gcloud info] for more ' 'details.') self.AssertErrContains(self._CHANGE_EXISTING_MENU) self.AssertErrNotContains('Cloud SDK proxy properties set.')
def testClearExistingProxy(self): SET_PROXY(proxy_type='http', address='badproxy', port='8081', username='******', password='******') self.AssertBadGloudProxyProperties() self.setAnswers('2') self.assertTrue(http_proxy_setup.ChangeGcloudProxySettings()) self.AssertErrContains(self._CHANGE_EXISTING_MENU) self.AssertErrNotContains(self._ADD_NEW_PROXY_PROMPT) self.AssertErrContains('Cloud SDK proxy properties cleared.') self.AssertNoGloudProxyProperties()
def testUserPromptsDisabled(self): SET_PROXY(proxy_type='http', address='badproxy', port='8081', username='******', password='******') self.AssertBadGloudProxyProperties() self.StartObjectPatch(properties.VALUES.core.disable_prompts, 'GetBool').return_value = True self.assertFalse(http_proxy_setup.ChangeGcloudProxySettings()) self.AssertErrNotContains(self._CHANGE_EXISTING_MENU) self.AssertErrNotContains(self._ADD_NEW_PROXY_PROMPT) self.AssertBadGloudProxyProperties()
def testChangeExistingProxy(self): SET_PROXY(proxy_type='http', address='badproxy', port='8081', username='******', password='******') self.AssertBadGloudProxyProperties() self.setAnswers('1', '1', 'golden', '80', 'Y', 'username', 'password') self.assertTrue(http_proxy_setup.ChangeGcloudProxySettings()) self.AssertErrContains(self._CHANGE_EXISTING_MENU) self.AssertErrNotContains(self._ADD_NEW_PROXY_PROMPT) self.AssertErrContains('Cloud SDK proxy properties set.') self.AssertGoldenProxyProperties(with_auth=True)
def testAddProxyFromScratchNoPasswordExit(self): self.setAnswers('Y', '1', 'golden', '80', 'Y', 'username', '') self.assertFalse(http_proxy_setup.ChangeGcloudProxySettings()) self.AssertErrContains(self._ADD_NEW_PROXY_PROMPT) self.AssertErrNotContains(self._CHANGE_EXISTING_MENU) self.AssertErrContains('Select the proxy type:') self.AssertErrContains('Enter the proxy host address:') self.AssertErrContains('Enter the proxy port:') self.AssertErrContains('Is your proxy authenticated') self.AssertErrContains('Enter the proxy username:'******'Enter the proxy password:'******'Cloud SDK proxy properties set.') self.AssertNoGloudProxyProperties()
def testChangeExistingProxyFromEnvVar(self): self.StartEnvPatch( {'http_proxy': 'https://*****:*****@badproxy:8080', 'https_proxy': 'https://*****:*****@badproxy:8081'}) pi = http_proxy.GetHttpProxyInfo() self.assertTrue(callable(pi)) self.assertEqual( (socks.PROXY_TYPE_HTTP, 'badproxy', 8080, True, 'baduser', 'badpassword', None), pi('http').astuple()) self.assertEqual( (socks.PROXY_TYPE_HTTP, 'badproxy', 8081, True, 'baduser', 'badpassword', None), pi('https').astuple()) self.AssertNoGloudProxyProperties() self.setAnswers('Y', '1', 'golden', '80', 'Y', 'username', 'password') self.assertTrue(http_proxy_setup.ChangeGcloudProxySettings()) self.AssertErrContains(self._ADD_NEW_PROXY_PROMPT) self.AssertErrNotContains(self._CHANGE_EXISTING_MENU) self.AssertErrContains('Cloud SDK proxy properties set.') self.AssertGoldenProxyProperties(with_auth=True)
def testFromScratchMakeNoChanges(self): self.setAnswers('N') self.assertFalse(http_proxy_setup.ChangeGcloudProxySettings()) self.AssertErrContains(self._ADD_NEW_PROXY_PROMPT) self.AssertErrNotContains('Cloud SDK proxy properties set.') self.AssertNoGloudProxyProperties()