Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix inheritance issues and separate the mocked dbus into an object #184

Merged
merged 10 commits into from
Nov 30, 2023
4 changes: 2 additions & 2 deletions dbusmock/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@


from dbusmock.mockobject import MOCK_IFACE, OBJECT_MANAGER_IFACE, DBusMockObject, get_object, get_objects
from dbusmock.testcase import DBusTestCase
from dbusmock.testcase import BusType, DBusTestCase, PrivateDBus, SpawnedMock

try:
# created by setuptools_scm
Expand All @@ -25,4 +25,4 @@


__all__ = ['DBusMockObject', 'MOCK_IFACE', 'OBJECT_MANAGER_IFACE',
'DBusTestCase', 'get_object', 'get_objects']
'DBusTestCase', 'PrivateDBus', 'BusType', 'SpawnedMock', 'get_object', 'get_objects']
25 changes: 7 additions & 18 deletions dbusmock/pytest_fixtures.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,31 +13,20 @@

import pytest

import dbusmock.testcase


@pytest.fixture(name='dbusmock_test', scope='session')
def fixture_dbusmock_test() -> Iterator[dbusmock.testcase.DBusTestCase]:
'''Export the whole DBusTestCase as a fixture.'''

testcase = dbusmock.testcase.DBusTestCase()
testcase.setUp()
yield testcase
testcase.tearDown()
testcase.tearDownClass()
from dbusmock.testcase import BusType, PrivateDBus


@pytest.fixture(scope='session')
def dbusmock_system(dbusmock_test) -> dbusmock.testcase.DBusTestCase:
def dbusmock_system() -> Iterator[PrivateDBus]:
'''Export the whole DBusTestCase as a fixture, with the system bus started'''

dbusmock_test.start_system_bus()
return dbusmock_test
with PrivateDBus(BusType.SYSTEM) as bus:
yield bus


@pytest.fixture(scope='session')
def dbusmock_session(dbusmock_test) -> dbusmock.testcase.DBusTestCase:
def dbusmock_session() -> Iterator[PrivateDBus]:
'''Export the whole DBusTestCase as a fixture, with the session bus started'''

dbusmock_test.start_session_bus()
return dbusmock_test
with PrivateDBus(BusType.SESSION) as bus:
yield bus
Loading