fix: render expiration notifications in bell menu
This commit is contained in:
@@ -8,6 +8,7 @@
|
|||||||
* Fix installation form submission on NetBox v4.6.5 when form mixins return no cleaned-data value
|
* Fix installation form submission on NetBox v4.6.5 when form mixins return no cleaned-data value
|
||||||
* Prevent the notification log creation flag from shadowing Django's translation function during email delivery
|
* Prevent the notification log creation flag from shadowing Django's translation function during email delivery
|
||||||
* Use NetBox's configured `EMAIL['FROM_EMAIL']` value as the SMTP sender instead of Django's localhost fallback
|
* Use NetBox's configured `EMAIL['FROM_EMAIL']` value as the SMTP sender instead of Django's localhost fallback
|
||||||
|
* Register the expiration event with a concrete string so NetBox 4.6 can render the notification dropdown
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
|
|||||||
@@ -15,9 +15,9 @@ limitations under the License.
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
from netbox.plugins import PluginConfig
|
from netbox.plugins import PluginConfig
|
||||||
from django.utils.translation import gettext_lazy as _
|
from django.utils.translation import gettext, gettext_lazy as _
|
||||||
|
|
||||||
__version__ = "1.12.3"
|
__version__ = "1.12.4"
|
||||||
|
|
||||||
|
|
||||||
class SLMConfig(PluginConfig):
|
class SLMConfig(PluginConfig):
|
||||||
@@ -42,7 +42,7 @@ class SLMConfig(PluginConfig):
|
|||||||
from netbox.events import EVENT_TYPE_KIND_WARNING, EventType
|
from netbox.events import EVENT_TYPE_KIND_WARNING, EventType
|
||||||
from netbox_slm.events import LICENSE_EXPIRING
|
from netbox_slm.events import LICENSE_EXPIRING
|
||||||
|
|
||||||
EventType(LICENSE_EXPIRING, _("License expiring"), kind=EVENT_TYPE_KIND_WARNING).register()
|
EventType(LICENSE_EXPIRING, gettext("License expiring"), kind=EVENT_TYPE_KIND_WARNING).register()
|
||||||
|
|
||||||
from netbox_slm import jobs # noqa: F401
|
from netbox_slm import jobs # noqa: F401
|
||||||
|
|
||||||
|
|||||||
@@ -189,7 +189,8 @@ class ModelTestCase(SlmBaseTestCase):
|
|||||||
runner.run()
|
runner.run()
|
||||||
runner.run()
|
runner.run()
|
||||||
|
|
||||||
self.assertEqual(1, Notification.objects.filter(user=user, object_id=license.pk).count())
|
notification = Notification.objects.get(user=user, object_id=license.pk)
|
||||||
|
self.assertIsInstance(str(notification.event), str)
|
||||||
self.assertEqual(1, SoftwareLicenseNotificationLog.objects.filter(user=user, license=license).count())
|
self.assertEqual(1, SoftwareLicenseNotificationLog.objects.filter(user=user, license=license).count())
|
||||||
send_mail.assert_called_once()
|
send_mail.assert_called_once()
|
||||||
self.assertEqual("netbox@example.com", send_mail.call_args.args[2])
|
self.assertEqual("netbox@example.com", send_mail.call_args.args[2])
|
||||||
|
|||||||
Reference in New Issue
Block a user