Skip to content

Commit 426f553

Browse files
committed
added test for sumo query record
1 parent 5d01992 commit 426f553

File tree

1 file changed

+24
-19
lines changed

1 file changed

+24
-19
lines changed

BlockBlobReader/tests/test_blobreader.py

Lines changed: 24 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ def setUpClass(cls):
4141
cls.resource_group_name = "TBL-%s" % (datetime_value)
4242
cls.template_name = os.environ.get("TEMPLATE_NAME", "blobreaderdeploy.json")
4343
cls.offsetmap_table_name = "FileOffsetMap"
44-
cls.function_name = "BlobTaskConsumer"
4544

4645
cls.create_resource_group(
4746
cls.resourcegroup_location, cls.resource_group_name)
@@ -65,33 +64,39 @@ def test_03_func_logs(self):
6564
self.insert_mock_json_in_BlobStorage()
6665

6766
time.sleep(300)
67+
function_name = "BlobTaskConsumer"
6868
app_insights = self.get_resource('Microsoft.Insights/components')
69-
captured_output = self.fetchlogs(app_insights.name)
69+
captured_output = self.fetchlogs(app_insights.name, function_name)
7070

7171
successful_sent_message = "Successfully sent to Sumo, Exiting now."
7272
self.assertTrue(self.filter_logs(captured_output, 'message', successful_sent_message),
73-
"No success message found in azure function logs")
73+
f"No success message found in {function_name} azure function logs")
7474

7575
self.assertFalse(self.filter_logs(captured_output, 'severityLevel', '3'),
76-
"Error messages found in azure function logs")
76+
f"Error messages found in {function_name} azure function logs")
7777

7878
self.assertFalse(self.filter_logs(captured_output, 'severityLevel', '2'),
79-
"Warning messages found in azure function logs")
79+
f"Warning messages found in {function_name} azure function logs")
8080

81-
# def check_both_storage_accounts_present():
82-
# pass
83-
84-
# def check_sorted_task_range():
85-
# pass
86-
87-
# def check_offset_in_range():
88-
# pass
89-
90-
# def extract_tasks_from_logs():
91-
# pass
92-
93-
# def check_one_to_one_task_mapping():
94-
# pass
81+
def test_04_sumo_query_record_count(self):
82+
self.logger.info("fetching mock data count from sumo")
83+
log_type = os.environ.get("LOG_TYPE", "log")
84+
query = f'_sourceCategory="{self.source_category}" | count'
85+
relative_time_in_minutes = 30
86+
expected_record_count = {
87+
"blob": 15,
88+
"log": 10,
89+
"json": 10,
90+
"csv": 12
91+
}
92+
result = self.fetch_sumo_query_results(query, relative_time_in_minutes)
93+
#sample: {'warning': '', 'fields': [{'name': '_count', 'fieldType': 'int', 'keyField': False}], 'records': [{'map': {'_count': '10'}}]}
94+
try:
95+
record_count = int(result['records'][0]['map']['_count'])
96+
except Exception:
97+
record_count = 0
98+
self.assertTrue(record_count == expected_record_count.get(log_type),
99+
f"block blob file's record count: {record_count} differs from expected count {expected_record_count.get(log_type)} in sumo '{self.source_category}'")
95100

96101
def get_random_name(self, length=32):
97102
return str(uuid.uuid4())

0 commit comments

Comments
 (0)