Files
panda3d/tests/directnotify/test_DirectNotify.py
2023-10-09 09:46:32 +02:00

58 lines
1.6 KiB
Python

import pytest
from panda3d import core
from direct.directnotify import DirectNotify, Logger, Notifier
CATEGORY_NAME = 'test'
@pytest.fixture
def notify():
notify = DirectNotify.DirectNotify()
notify.newCategory(CATEGORY_NAME)
return notify
def test_categories():
notify = DirectNotify.DirectNotify()
assert len(notify.getCategories()) == 0
assert notify.getCategory(CATEGORY_NAME) is None
notifier = notify.newCategory(CATEGORY_NAME, logger=Logger.Logger())
assert isinstance(notifier, Notifier.Notifier)
assert notify.getCategories() == [CATEGORY_NAME]
def test_setDconfigLevels(notify):
config = core.ConfigVariableString('notify-level-' + CATEGORY_NAME, '')
notifier = notify.getCategory(CATEGORY_NAME)
config.value = 'error'
notify.setDconfigLevels()
assert notifier.getSeverity() == core.NS_error
config.value = 'warning'
notify.setDconfigLevels()
assert notifier.getSeverity() == core.NS_warning
config.value = 'info'
notify.setDconfigLevels()
assert notifier.getSeverity() == core.NS_info
config.value = 'debug'
notify.setDconfigLevels()
assert notifier.getSeverity() == core.NS_debug
def test_setVerbose(notify):
notifier = notify.getCategory(CATEGORY_NAME)
notifier.setWarning(False)
notifier.setInfo(False)
notifier.setDebug(False)
notify.setVerbose()
assert notifier.getWarning()
assert notifier.getInfo()
assert notifier.getDebug()
def test_giveNotify(notify):
class HasNotify:
notify = None
notify.giveNotify(HasNotify)
assert isinstance(HasNotify.notify, Notifier.Notifier)