~txawsteam/txaws/trunk

« back to all changes in this revision

Viewing changes to txaws/tests/test_credentials.py

Merged 416109-arbitrary-endpoints [r=therve,jkakar] [f=416109].

The primary change of this branch is support of arbitrary endpoints (needed for
the support of Eucalyptus). In addition, the following was also performed:
 * Added a parse utility function from Twisted
 * Created a testing subpackage for use by txAWS unit tests
 * Created a service module for abstracting regions and associated
   serices/credentials

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
 
4
4
import os
5
5
 
6
 
from twisted.trial.unittest import TestCase
7
 
 
8
 
from txaws.credentials import AWSCredentials
9
 
from txaws.tests import TXAWSTestCase
 
6
from txaws.credentials import AWSCredentials, ENV_ACCESS_KEY, ENV_SECRET_KEY
 
7
from txaws.testing.base import TXAWSTestCase
10
8
 
11
9
 
12
10
class TestCredentials(TXAWSTestCase):
13
11
 
14
12
    def test_no_access_errors(self):
15
 
        # Without anything in os.environ, AWSCredentials() blows up
16
 
        os.environ['AWS_SECRET_ACCESS_KEY'] = 'foo'
17
 
        self.assertRaises(Exception, AWSCredentials)
 
13
        # Without anything in os.environ, AWSService() blows up
 
14
        os.environ[ENV_SECRET_KEY] = "bar"
 
15
        self.assertRaises(ValueError, AWSCredentials)
18
16
 
19
17
    def test_no_secret_errors(self):
20
 
        # Without anything in os.environ, AWSCredentials() blows up
21
 
        os.environ['AWS_ACCESS_KEY_ID'] = 'bar'
22
 
        self.assertRaises(Exception, AWSCredentials)
 
18
        # Without anything in os.environ, AWSService() blows up
 
19
        os.environ[ENV_ACCESS_KEY] = "foo"
 
20
        self.assertRaises(ValueError, AWSCredentials)
23
21
 
24
22
    def test_found_values_used(self):
25
 
        os.environ['AWS_SECRET_ACCESS_KEY'] = 'foo'
26
 
        os.environ['AWS_ACCESS_KEY_ID'] = 'bar'
27
 
        creds = AWSCredentials()
28
 
        self.assertEqual('foo', creds.secret_key)
29
 
        self.assertEqual('bar', creds.access_key)
 
23
        os.environ[ENV_ACCESS_KEY] = "foo"
 
24
        os.environ[ENV_SECRET_KEY] = "bar"
 
25
        service = AWSCredentials()
 
26
        self.assertEqual("foo", service.access_key)
 
27
        self.assertEqual("bar", service.secret_key)
30
28
 
31
29
    def test_explicit_access_key(self):
32
 
        os.environ['AWS_SECRET_ACCESS_KEY'] = 'foo'
33
 
        creds = AWSCredentials(access_key='bar')
34
 
        self.assertEqual('foo', creds.secret_key)
35
 
        self.assertEqual('bar', creds.access_key)
 
30
        os.environ[ENV_SECRET_KEY] = "foo"
 
31
        service = AWSCredentials(access_key="bar")
 
32
        self.assertEqual("foo", service.secret_key)
 
33
        self.assertEqual("bar", service.access_key)
36
34
 
37
35
    def test_explicit_secret_key(self):
38
 
        os.environ['AWS_ACCESS_KEY_ID'] = 'bar'
39
 
        creds = AWSCredentials(secret_key='foo')
40
 
        self.assertEqual('foo', creds.secret_key)
41
 
        self.assertEqual('bar', creds.access_key)
 
36
        os.environ[ENV_ACCESS_KEY] = "bar"
 
37
        service = AWSCredentials(secret_key="foo")
 
38
        self.assertEqual("foo", service.secret_key)
 
39
        self.assertEqual("bar", service.access_key)