34 lines
1,015 B
Python
34 lines
1,015 B
Python
|
import json
|
||
|
|
||
|
from endpoints.notificationevent import NotificationEvent
|
||
|
from endpoints.test.fixtures import app, appconfig, database_uri, init_db_path, sqlitedb_file
|
||
|
|
||
|
from util.morecollections import AttrDict
|
||
|
|
||
|
def test_all_notifications(app):
|
||
|
# Create a test notification.
|
||
|
test_notification = AttrDict({
|
||
|
'repository': AttrDict({
|
||
|
'namespace_user': AttrDict(dict(username='foo')),
|
||
|
'name': 'bar',
|
||
|
}),
|
||
|
'event_config_json': json.dumps({
|
||
|
'level': 'low',
|
||
|
}),
|
||
|
})
|
||
|
|
||
|
for subc in NotificationEvent.__subclasses__():
|
||
|
if subc.event_name() is not None:
|
||
|
# Create the notification event.
|
||
|
found = NotificationEvent.get_event(subc.event_name())
|
||
|
sample_data = found.get_sample_data(test_notification)
|
||
|
|
||
|
# Make sure all calls succeed.
|
||
|
notification_data = {
|
||
|
'performer_data': {},
|
||
|
}
|
||
|
|
||
|
found.get_level(sample_data, notification_data)
|
||
|
found.get_summary(sample_data, notification_data)
|
||
|
found.get_message(sample_data, notification_data)
|