~0x44/nova/bug838466

« back to all changes in this revision

Viewing changes to nova/tests/test_context.py

Update RequestContext so that it correctly sets self.is_admin from the roles array. Additionally add a bit of code to ignore case as well.

Resolves issues when accessing admin API's w/ Keystone.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# vim: tabstop=4 shiftwidth=4 softtabstop=4
 
2
 
 
3
#    Copyright 2011 OpenStack LLC
 
4
#
 
5
#    Licensed under the Apache License, Version 2.0 (the "License"); you may
 
6
#    not use this file except in compliance with the License. You may obtain
 
7
#    a copy of the License at
 
8
#
 
9
#         http://www.apache.org/licenses/LICENSE-2.0
 
10
#
 
11
#    Unless required by applicable law or agreed to in writing, software
 
12
#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 
13
#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 
14
#    License for the specific language governing permissions and limitations
 
15
#    under the License.
 
16
 
 
17
from nova import context
 
18
from nova import test
 
19
 
 
20
 
 
21
class ContextTestCase(test.TestCase):
 
22
 
 
23
    def test_request_context_sets_is_admin(self):
 
24
        ctxt = context.RequestContext('111',
 
25
                                      '222',
 
26
                                      roles=['admin', 'weasel'])
 
27
        self.assertEquals(ctxt.is_admin, True)
 
28
 
 
29
    def test_request_context_sets_is_admin_upcase(self):
 
30
        ctxt = context.RequestContext('111',
 
31
                                      '222',
 
32
                                      roles=['Admin', 'weasel'])
 
33
        self.assertEquals(ctxt.is_admin, True)