Add api_versions support; update model of ocloud, resourcepool, and resource
[pti/o2.git] / tests / unit / test_alarm.py
index 5bcde82..5309eb5 100644 (file)
@@ -52,11 +52,17 @@ def test_view_alarm_event_records(mock_uow):
     alarm_event_record1 = MagicMock()
     alarm_event_record1.serialize.return_value = {
         "alarmEventRecordId": alarm_event_record_id1}
-    session.return_value.query.return_value = [alarm_event_record1]
 
-    alarm_event_record_list = alarm_view.alarm_event_records(uow)
-    assert str(alarm_event_record_list[0].get(
-        "alarmEventRecordId")) == alarm_event_record_id1
+    order_by = MagicMock()
+    order_by.count.return_value = 1
+    order_by.limit.return_value.offset.return_value = [alarm_event_record1]
+    session.return_value.query.return_value.filter.return_value.\
+        order_by.return_value = order_by
+
+    result = alarm_view.alarm_event_records(uow)
+    assert result['count'] == 1
+    ret_list = result['results']
+    assert str(ret_list[0].get("alarmEventRecordId")) == alarm_event_record_id1
 
 
 def test_view_alarm_event_record_one(mock_uow):
@@ -81,24 +87,58 @@ def test_view_alarm_event_record_one(mock_uow):
         "alarmEventRecordId")) == alarm_event_record_id1
 
 
-def test_alarm_dictionary(mock_uow):
+def test_view_alarm_subscriptions(mock_uow):
+    session, uow = mock_uow
+
+    subscription_id1 = str(uuid.uuid4())
+    sub1 = MagicMock()
+    sub1.serialize.return_value = {
+        "alarmSubscriptionId": subscription_id1,
+    }
+
+    order_by = MagicMock()
+    order_by.count.return_value = 1
+    order_by.limit.return_value.offset.return_value = [sub1]
+    session.return_value.query.return_value.filter.return_value.\
+        order_by.return_value = order_by
+
+    result = alarm_view.subscriptions(uow)
+    assert result['count'] == 1
+    ret_list = result['results']
+    assert str(ret_list[0].get("alarmSubscriptionId")) == subscription_id1
+
+
+def test_view_alarm_subscription_one(mock_uow):
     session, uow = mock_uow
-    alarm_dict1 = alarm_obj.AlarmDictionary('test1')
-    alarm_dict1.entityType = 'test1'
-    with uow:
-        uow.alarm_dictionaries.add(alarm_dict1)
 
-        alarm_dict2 = uow.alarm_dictionaries.get('test1')
-        assert alarm_dict1 == alarm_dict2
+    subscription_id1 = str(uuid.uuid4())
+    session.return_value.query.return_value.filter_by.return_value.first.\
+        return_value.serialize.return_value = None
+
+    # Query return None
+    subscription_res = alarm_view.subscription_one(
+        subscription_id1, uow)
+    assert subscription_res is None
+
+    session.return_value.query.return_value.filter_by.return_value.first.\
+        return_value.serialize.return_value = {
+            "alarmSubscriptionId": subscription_id1,
+        }
 
-        dict_list = uow.alarm_dictionaries.list()
-        assert len(dict_list) > 0
+    subscription_res = alarm_view.subscription_one(
+        subscription_id1, uow)
+    assert str(subscription_res.get(
+        "alarmSubscriptionId")) == subscription_id1
 
 
 def test_flask_get_list(mock_flask_uow):
     session, app = mock_flask_uow
-    session.query.return_value = []
-    apibase = config.get_o2ims_monitoring_api_base()
+    order_by = MagicMock()
+    order_by.count.return_value = 0
+    order_by.limit.return_value.offset.return_value = []
+    session.return_value.query.return_value.filter.return_value.\
+        order_by.return_value = order_by
+    apibase = config.get_o2ims_monitoring_api_base() + '/v1'
 
     with app.test_client() as client:
         # Get list and return empty list
@@ -115,7 +155,7 @@ def test_flask_get_one(mock_flask_uow):
 
     session.return_value.query.return_value.filter_by.return_value.\
         first.return_value = None
-    apibase = config.get_o2ims_monitoring_api_base()
+    apibase = config.get_o2ims_monitoring_api_base() + '/v1'
 
     with app.test_client() as client:
         # Get one and return 404
@@ -131,7 +171,7 @@ def test_flask_get_one(mock_flask_uow):
 
 def test_flask_post(mock_flask_uow):
     session, app = mock_flask_uow
-    apibase = config.get_o2ims_monitoring_api_base()
+    apibase = config.get_o2ims_monitoring_api_base() + '/v1'
 
     with app.test_client() as client:
         session.return_value.execute.return_value = []
@@ -148,7 +188,7 @@ def test_flask_post(mock_flask_uow):
 
 def test_flask_delete(mock_flask_uow):
     session, app = mock_flask_uow
-    apibase = config.get_o2ims_monitoring_api_base()
+    apibase = config.get_o2ims_monitoring_api_base() + '/v1'
 
     with app.test_client() as client:
         session.return_value.execute.return_value.first.return_value = {}
@@ -160,7 +200,7 @@ def test_flask_delete(mock_flask_uow):
 
 def test_flask_not_allowed(mock_flask_uow):
     _, app = mock_flask_uow
-    apibase = config.get_o2ims_monitoring_api_base()
+    apibase = config.get_o2ims_monitoring_api_base() + '/v1'
 
     with app.test_client() as client:
         # Testing resource type not support method