45 lines
1.5 KiB
Python
45 lines
1.5 KiB
Python
|
# Copyright 2015 Rackspace Inc.
|
||
|
#
|
||
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||
|
# not use this file except in compliance with the License. You may obtain
|
||
|
# a copy of the License at
|
||
|
#
|
||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||
|
#
|
||
|
# Unless required by applicable law or agreed to in writing, software
|
||
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||
|
# 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 os
|
||
|
|
||
|
from oslotest import base
|
||
|
|
||
|
from oslo_privsep import priv_context
|
||
|
import oslo_privsep.tests
|
||
|
from oslo_privsep.tests import fixture
|
||
|
|
||
|
|
||
|
context = priv_context.PrivContext(
|
||
|
# This context allows entrypoints anywhere below oslo_privsep.tests.
|
||
|
oslo_privsep.tests.__name__,
|
||
|
pypath=__name__ + '.context',
|
||
|
# This is one of the rare cases where we actually want zero powers:
|
||
|
capabilities=[],
|
||
|
)
|
||
|
|
||
|
|
||
|
class TestContextTestCase(base.BaseTestCase):
|
||
|
def setUp(self):
|
||
|
super(TestContextTestCase, self).setUp()
|
||
|
privsep_fixture = self.useFixture(
|
||
|
fixture.UnprivilegedPrivsepFixture(context))
|
||
|
self.privsep_conf = privsep_fixture.conf
|
||
|
|
||
|
def assertNotMyPid(self, pid):
|
||
|
# Verify that `pid` is some positive integer, that isn't our pid
|
||
|
self.assertIsInstance(pid, int)
|
||
|
self.assertTrue(pid > 0)
|
||
|
self.assertNotEqual(os.getpid(), pid)
|