~soren/nova/austin-versioning

« back to all changes in this revision

Viewing changes to nova/tests/api/openstack/test_auth.py

  • Committer: Tarmac
  • Author(s): Eric Day
  • Date: 2010-10-16 08:19:04 UTC
  • mfrom: (352.2.2 lp660668)
  • Revision ID: hudson@openstack.org-20101016081904-thc0g2ywxqc1o9h1
Added test case to reproduce bug #660668 and provided a fix by using the user_id from the auth layer instead of the username header.

Show diffs side-by-side

added added

removed removed

Lines of Context:
106
106
        result = req.get_response(nova.api.API())
107
107
        self.assertEqual(result.status, '401 Unauthorized')
108
108
 
 
109
 
 
110
class TestLimiter(unittest.TestCase):
 
111
    def setUp(self):
 
112
        self.stubs = stubout.StubOutForTesting()
 
113
        self.stubs.Set(nova.api.openstack.auth.BasicApiAuthManager,
 
114
            '__init__', fakes.fake_auth_init)
 
115
        fakes.FakeAuthManager.auth_data = {}
 
116
        fakes.FakeAuthDatabase.data = {}
 
117
        fakes.stub_out_networking(self.stubs)
 
118
 
 
119
    def tearDown(self):
 
120
        self.stubs.UnsetAll()
 
121
        fakes.fake_data_store = {}
 
122
 
 
123
    def test_authorize_token(self):
 
124
        f = fakes.FakeAuthManager()
 
125
        f.add_user('derp', nova.auth.manager.User(1, 'herp', None, None, None))
 
126
 
 
127
        req = webob.Request.blank('/v1.0/')
 
128
        req.headers['X-Auth-User'] = 'herp'
 
129
        req.headers['X-Auth-Key'] = 'derp'
 
130
        result = req.get_response(nova.api.API())
 
131
        self.assertEqual(len(result.headers['X-Auth-Token']), 40)
 
132
 
 
133
        token = result.headers['X-Auth-Token']
 
134
        self.stubs.Set(nova.api.openstack, 'APIRouter',
 
135
            fakes.FakeRouter)
 
136
        req = webob.Request.blank('/v1.0/fake')
 
137
        req.method = 'POST'
 
138
        req.headers['X-Auth-Token'] = token
 
139
        result = req.get_response(nova.api.API())
 
140
        self.assertEqual(result.status, '200 OK')
 
141
        self.assertEqual(result.headers['X-Test-Success'], 'True')
 
142
 
 
143
 
109
144
if __name__ == '__main__':
110
145
    unittest.main()