Moved test_context to designate.tests.unit

* Added some minor tests.
* Cleaned up.

Change-Id: I4f1419fa3136d44da099ba66fdd0a42cf2139c4a
This commit is contained in:
Erik Olof Gunnar Andersson
2019-06-24 00:56:26 +00:00
parent a1d2f37109
commit 5383ad9ddc
@@ -13,47 +13,73 @@
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
import mock
import testtools
from oslo_log import log as logging
from designate.tests import TestCase
import designate.tests
from designate import context
from designate import exceptions
LOG = logging.getLogger(__name__)
from designate import policy
class TestDesignateContext(TestCase):
class TestDesignateContext(designate.tests.TestCase):
def test_deepcopy(self):
orig = context.DesignateContext(user_id='12345', project_id='54321')
orig = context.DesignateContext(
user_id='12345', project_id='54321'
)
copy = orig.deepcopy()
self.assertEqual(orig.to_dict(), copy.to_dict())
def test_tsigkey_id_override(self):
orig = context.DesignateContext(
tsigkey_id='12345', project_id='54321'
)
copy = orig.to_dict()
self.assertEqual('TSIG:12345 54321 - - -', copy['user_identity'])
def test_elevated(self):
ctxt = context.DesignateContext(user_id='12345', project_id='54321')
ctxt = context.DesignateContext(
user_id='12345', project_id='54321'
)
admin_ctxt = ctxt.elevated()
self.assertFalse(ctxt.is_admin)
self.assertTrue(admin_ctxt.is_admin)
self.assertEqual(0, len(ctxt.roles))
def test_all_tenants(self):
ctxt = context.DesignateContext(user_id='12345', project_id='54321')
admin_ctxt = ctxt.elevated()
def test_elevated_with_show_deleted(self):
ctxt = context.DesignateContext(
user_id='12345', project_id='54321'
)
admin_ctxt = ctxt.elevated(show_deleted=True)
self.assertTrue(admin_ctxt.show_deleted)
def test_all_tenants(self):
ctxt = context.DesignateContext(
user_id='12345', project_id='54321'
)
admin_ctxt = ctxt.elevated()
admin_ctxt.all_tenants = True
self.assertFalse(ctxt.is_admin)
self.assertTrue(admin_ctxt.is_admin)
self.assertTrue(admin_ctxt.all_tenants)
def test_all_tenants_policy_failure(self):
ctxt = context.DesignateContext(user_id='12345', project_id='54321')
ctxt = context.DesignateContext(
user_id='12345', project_id='54321'
)
with testtools.ExpectedException(exceptions.Forbidden):
ctxt.all_tenants = True
def test_edit_managed_records(self):
ctxt = context.DesignateContext(user_id='12345', project_id='54321')
ctxt = context.DesignateContext(
user_id='12345', project_id='54321'
)
admin_ctxt = ctxt.elevated()
admin_ctxt.edit_managed_records = True
@@ -63,6 +89,19 @@ class TestDesignateContext(TestCase):
self.assertTrue(admin_ctxt.edit_managed_records)
def test_edit_managed_records_failure(self):
ctxt = context.DesignateContext(user_id='12345', project_id='54321')
ctxt = context.DesignateContext(
user_id='12345', project_id='54321'
)
with testtools.ExpectedException(exceptions.Forbidden):
ctxt.edit_managed_records = True
@mock.patch.object(policy, 'check')
def test_sudo(self, mock_policy_check):
ctxt = context.DesignateContext(
user_id='12345', project_id='old_tenant'
)
ctxt.sudo('new_tenant')
self.assertTrue(mock_policy_check.called)
self.assertEqual('new_tenant', ctxt.tenant)
self.assertEqual('old_tenant', ctxt.original_tenant)