aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorPrakashH <pbhandar@techmahindra.com>2019-01-28 20:49:02 +0000
committerPrakashH <pbhandar@techmahindra.com>2019-01-28 20:49:02 +0000
commita86243058c2daa560aebaecdb096ff63788a6f44 (patch)
tree68d29b8ec0545792d50785b0105914d00c73d884 /tests
parent20110ffeb5071193e7b437e797636d9d6318dcd4 (diff)
Heartbeat Microservice Support
Heartbeat service monitors missing HB notification Issue-ID: DCAEGEN2-267 Change-Id: I0fd191b2a3495202e22f633ada4a1350a97557ad Signed-off-by: PrakashH <pbhandar@techmahindra.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/HB_Array.json82
-rw-r--r--tests/test_binding.py67
-rw-r--r--tests/test_trapd_vnf_table.py106
3 files changed, 136 insertions, 119 deletions
diff --git a/tests/HB_Array.json b/tests/HB_Array.json
new file mode 100644
index 0000000..1b44802
--- /dev/null
+++ b/tests/HB_Array.json
@@ -0,0 +1,82 @@
+[{ "event": { "commonEventHeader": { "vesEventListenerVersion": "7.0.2", "domain": "heartbeat", "eventId": "mvfs10", "eventName": "Heartbeat_vDNS1", "lastEpochMicrosec": 1548653647392, "priority": "Normal", "reportingEntityName": "ibcx0001vm002oam001", "sequence": 1000, "sourceName": "SOURCE_NAME2", "startEpochMicrosec": 1548653647392, "version": "4.0.2", "reportingEntityId": "cc305d54-75b4-431b-adb2-eb6b9e541234", "sourceId": "VNFA_SRC1", "eventType": "platform", "nfcNamingCode": "VNFA", "nfNamingCode": "VNFA", "timeZoneOffset": "UTC-05:30" }, "heartbeatFields": { "heartbeatInterval": 20, "heartbeatFieldsVersion": "3.0" } } },
+{
+ "event": {
+ "commonEventHeader": {
+ "vesEventListenerVersion": "7.0.2",
+ "domain": "heartbeat",
+ "eventId": "mvfs10",
+ "eventName": "Heartbeat_vFW1",
+ "lastEpochMicrosec": 1548653647392,
+ "priority": "Normal",
+ "reportingEntityName": "ibcx0001vm002oam001",
+ "sequence": 1000,
+ "sourceName": "SOURCE_NAME3",
+ "startEpochMicrosec": 1548653647392,
+ "version": "4.0.2",
+ "reportingEntityId": "cc305d54-75b4-431b-adb2-eb6b9e541234",
+ "sourceId": "VNFB_SRC5",
+ "eventType": "platform",
+ "nfcNamingCode": "VNFB",
+ "nfNamingCode": "VNFB",
+ "timeZoneOffset": "UTC-05:30"
+ },
+ "heartbeatFields": {
+ "heartbeatInterval": 20,
+ "heartbeatFieldsVersion": "3.0"
+ }
+ }
+},
+{
+ "event": {
+ "commonEventHeader": {
+ "vesEventListenerVersion": "7.0.2",
+ "domain": "heartbeat",
+ "eventId": "mvfs10",
+ "eventName": "Heartbeat_vFW1",
+ "lastEpochMicrosec": 1548653647392,
+ "priority": "Normal",
+ "reportingEntityName": "ibcx0001vm002oam001",
+ "sequence": 1000,
+ "sourceName": "SOURCE_NAME4",
+ "startEpochMicrosec": 1548653647392,
+ "version": "4.0.2",
+ "reportingEntityId": "cc305d54-75b4-431b-adb2-eb6b9e541234",
+ "sourceId": "VNFA_SRC3",
+ "eventType": "platform",
+ "nfcNamingCode": "VNFA",
+ "nfNamingCode": "VNFA",
+ "timeZoneOffset": "UTC-05:30"
+ },
+ "heartbeatFields": {
+ "heartbeatInterval": 20,
+ "heartbeatFieldsVersion": "3.0"
+ }
+ }
+},
+{
+ "event": {
+ "commonEventHeader": {
+ "vesEventListenerVersion": "7.0.2",
+ "domain": "heartbeat",
+ "eventId": "mvfs10",
+ "eventName": "Heartbeat_xx",
+ "lastEpochMicrosec": 1548653647392,
+ "priority": "Normal",
+ "reportingEntityName": "ibcx0001vm002oam001",
+ "sequence": 1000,
+ "sourceName": "SOURCE_NAME5",
+ "startEpochMicrosec": 1548653647392,
+ "version": "4.0.2",
+ "reportingEntityId": "cc305d54-75b4-431b-adb2-eb6b9e541234",
+ "sourceId": "VNFA_SRC3",
+ "eventType": "platform",
+ "nfcNamingCode": "VNFA",
+ "nfNamingCode": "VNFA",
+ "timeZoneOffset": "UTC-05:30"
+ },
+ "heartbeatFields": {
+ "heartbeatInterval": 20,
+ "heartbeatFieldsVersion": "3.0"
+ }
+ }
+}
diff --git a/tests/test_binding.py b/tests/test_binding.py
index bfa13ba..56a5ece 100644
--- a/tests/test_binding.py
+++ b/tests/test_binding.py
@@ -21,12 +21,10 @@ import io
import requests
import httpretty
import sys
-#import miss_htbt_service
from miss_htbt_service import htbtworker
from miss_htbt_service import misshtbtd
from miss_htbt_service import db_monitoring
-from miss_htbt_service import config_notif
-#from miss_htbt_service.htbtworker import get_collector_uri,get_policy_uri
+#from miss_htbt_service import config_notif
from trapd_vnf_table import hb_properties
import subprocess
import pytest
@@ -88,66 +86,13 @@ def test_resolve_all():
def test_full():
p = subprocess.Popen(['./miss_htbt_service/misshtbtd.py'], stdout=subprocess.PIPE,shell=True)
#time.sleep(30)
- #r = requests.get('http://127.0.0.1:10002')
- #r = requests.get('http://localhost:10001')
+ #r = requests.get('http://localhost:10002')
#print(r.status_code)
#assert(r.status_code == 200)
- #r = requests.post('http://127.0.0.1:10001',data={'number': '12524', 'health': 'good', 'action': 'show'})
+ #r = requests.post('http://127.0.0.1:10002',data={'number': '12524', 'health': 'good', 'action': 'show'})
+ #r = requests.post('http://localhost:10002',data={'number': '12524', 'health': 'good', 'action': 'show'})
#print(r.status_code)
#assert(r.status_code == 200)
-def test_fetch_json_file():
- os.environ['pytest']='test'
- os.environ['SERVICE_NAME']='mvp-dcaegen2-heartbeat-static'
- #os.environ['CONSUL_HOST']='10.12.6.50' # Used this IP during testing
- os.environ['CONSUL_HOST']='localhost'
- os.environ['HOSTNAME']='mvp-dcaegen2-heartbeat-static'
- try:
- misshtbtd.fetch_json_file()
- result = True
- except Exception as e:
- result = False
- print(result)
- os.unsetenv('pytest')
- os.unsetenv('SERVICE_NAME')
- os.unsetenv('CONSUL_HOST')
- os.unsetenv('HOSTNAME')
-
- assert(result == True)
-
-def test_misshtbtdmain():
- os.environ['pytest']='test'
- os.environ['SERVICE_NAME']='mvp-dcaegen2-heartbeat-static'
- os.environ['CONSUL_HOST']='localhost'
- os.environ['HOSTNAME']='mvp-dcaegen2-heartbeat-static'
-
- try:
- misshtbtd.main()
- result = True
- except Exception as e:
- result = False
- print(result)
- os.unsetenv('pytest')
- os.unsetenv('SERVICE_NAME')
- os.unsetenv('CONSUL_HOST')
- os.unsetenv('HOSTNAME')
- assert(result == True)
-
-def test_dbmonitoring():
- ip_address, port_num, user_name, password, db_name, cbs_polling_required, cbs_polling_interval = hb_properties()
- jsfile = misshtbtd.fetch_json_file()
- hbc_pid, hbc_state, hbc_srcName, hbc_time = misshtbtd.read_hb_common(user_name,password,ip_address,port_num,db_name)
- db_monitoring.db_monitoring(hbc_pid,jsfile,user_name,password,ip_address,port_num,db_name)
-
-def test_htbtworker():
- if os.environ['pytest'] == 'test':
- print ('environ is set')
- else:
- print ('environ is not set')
- ip_address, port_num, user_name, password, db_name, cbs_polling_required, cbs_polling_interval = hb_properties()
- jsfile = "/home/ubuntu/HB_Nov5/etc/config.json"
- hbc_pid, hbc_state, hbc_srcName, hbc_time = config_notif.read_hb_common(user_name,password,ip_address,port_num,db_name)
- #htbtworker.process_msg(jsfile,user_name, password, ip_address, port_num, db_name)
-
-def test_conifg_notif():
- config_notif.config_notif_run()
+#def test_conifg_notif():
+ #config_notif.config_notif_run()
diff --git a/tests/test_trapd_vnf_table.py b/tests/test_trapd_vnf_table.py
index b924cca..9e11ce9 100644
--- a/tests/test_trapd_vnf_table.py
+++ b/tests/test_trapd_vnf_table.py
@@ -18,7 +18,7 @@
#
# ECOMP is a trademark and service mark of AT&T Intellectual Property.
#
-## Author Kiran Mandal (km386e)
+## Author Prakask H (ph553f)
"""
test_trapd_vnf_table contains test cases related to DB Tables and cbs polling.
"""
@@ -29,8 +29,9 @@ import pytest
import logging
import misshtbtd as db
import htbtworker as pm
+import db_monitoring as dbmon
import get_logger
-from trapd_vnf_table import verify_DB_creation_1,verify_DB_creation_2,verify_DB_creation_hb_common,verify_cbsPolling_required,hb_properties,verify_cbspolling
+from trapd_vnf_table import verify_DB_creation_1,verify_DB_creation_2,verify_DB_creation_hb_common,verify_cbsPolling_required,hb_properties,verify_cbspolling,verify_sendControlLoop_VNF_ONSET, verify_sendControlLoop_VM_ONSET, verify_sendControlLoop_VNF_ABATED, verify_sendControlLoop_VM_ABATED, verify_fetch_json_file, verify_misshtbtdmain, verify_dbmonitoring, verify_dbmon_startup
_logger = get_logger.get_logger(__name__)
@@ -53,66 +54,55 @@ class test_vnf_tables(unittest.TestCase):
result =verify_DB_creation_hb_common(user_name,password,ip_address,port_num,db_name)
self.assertEqual(result, True)
- # def test_validate_hbcommon_processId(self):
- # result =verify_DB_creation_hb_common(user_name,password,ip_address,port_num,db_name)
- # self.assertEqual(result, True)
- # connection_db = pm.postgres_db_open(user_name,password,ip_address,port_num,db_name)
- # #cur = connection_db.cursor()
- # query_value = "SELECT process_id,source_name,last_accessed_time,current_state FROM hb_common;"
- # cur.execute(query_value)
- # rows = cur.fetchall()
- # msg = "Common: row ", rows
- # _logger.info(msg)
- # hbc_pid = rows[0][0]
- # pm.commit_and_close_db(connection_db)
- # cur.close()
- # self.assertNotEqual(hbc_pid, None , msg="Process ID is not Present is hb_common")
-
- # def test_validate_hbcommon_sourceName(self):
- # result =verify_DB_creation_hb_common(user_name,password,ip_address,port_num,db_name)
- # self.assertEqual(result, True)
-
- # connection_db = pm.postgres_db_open(user_name,password,ip_address,port_num,db_name)
- # cur = connection_db.cursor()
- # query_value = "SELECT process_id,source_name,last_accessed_time,current_state FROM hb_common;"
- # cur.execute(query_value)
- # rows = cur.fetchall()
- # msg = "Common: row ", rows
- # _logger.info(msg)
- # hbc_srcName = rows[0][1]
- # pm.commit_and_close_db(connection_db)
- # cur.close()
- # self.assertNotEqual(hbc_srcName, None , msg="Process ID is not Present is hb_common")
-
- ## def test_validate_sourceidcount_table1(self):
- # result_connection =verify_DB_creation_1(user_name,password,ip_address,port_num,db_name)
- # self.assertEqual(result_connection, True)
- # #result=verify_sourceidcount_vnftable1(user_name,password,ip_address,port_num,db_name)
- # connection_db = pm.postgres_db_open(user_name,password,ip_address,port_num,db_name)
- # cur = connection_db.cursor()
- # try:
- # query = "select source_id_count from vnf_table_1;"
- # cur.execute(query)
- # rows = cur.fetchall()
- # q_count = "SELECT COUNT(*) FROM vnf_table_1;"
- # cur.execute(q_count)
- # r_count = cur.fetchall()
- # r_c = r_count[0][0]
- # for r in r_c:
- # output = rows[r][0]
- # for res in output:
- # self.assertNotEqual(output, 0)
- # except Exception as e:
- # return None
def test_validate_cbspolling_required(self):
result = verify_cbsPolling_required()
self.assertEqual(result, True)
-# def test_cbspolling(self):
-# result= verify_cbspolling()
-# _logger.info(result)
-# self.assertEqual(result, True)
-
+ def test_cbspolling(self):
+ result= verify_cbspolling()
+ _logger.info(result)
+ self.assertEqual(result, True)
+
+ def test_fetch_json_file(self):
+ result= verify_fetch_json_file()
+ _logger.info(result)
+ self.assertEqual(result, True)
+
+ def test_misshtbtdmain(self):
+ result= verify_misshtbtdmain()
+ _logger.info(result)
+ self.assertEqual(result, True)
+
+ def test_dbmon_startup(self):
+ result= verify_dbmon_startup()
+ _logger.info(result)
+ self.assertEqual(result, True)
+
+ def test_dbmonitoring(self):
+ result= verify_dbmonitoring()
+ _logger.info(result)
+ self.assertEqual(result, True)
+
+ def test_sendControlLoop_VNF_ONSET(self):
+ result= verify_sendControlLoop_VNF_ONSET()
+ _logger.info(result)
+ self.assertEqual(result, True)
+
+ def test_sendControlLoop_VM_ONSET(self):
+ result= verify_sendControlLoop_VM_ONSET()
+ _logger.info(result)
+ self.assertEqual(result, True)
+
+ def test_sendControlLoop_VNF_ABATED(self):
+ result= verify_sendControlLoop_VNF_ABATED()
+ _logger.info(result)
+ self.assertEqual(result, True)
+
+ def test_sendControlLoop_VM_ABATED(self):
+ result= verify_sendControlLoop_VM_ABATED()
+ _logger.info(result)
+ self.assertEqual(result, True)
+
#if __name__ == '__main__':
# unittest.main()