@@ -411,115 +411,119 @@ def test_generate_field_tests(
411411 assert param_mock .call_count == len (expected_output )
412412
413413
414- @pytest .mark .parametrize (
415- "tokenised_events, expected_output" ,
416- [
417- (
418- [
419- SampleEvent (
420- event_string = "escaped_event" ,
421- metadata = {
422- "input_type" : "modinput" ,
423- "sourcetype_to_search" : "dummy_sourcetype" ,
424- "host" : "dummy_host" ,
425- },
426- sample_name = "file1.xml" ,
427- requirement_test_data = {
428- "cim_fields" : {
429- "dest" : "192.168.0.1" ,
430- "severity" : "low" ,
431- "signature_id" : "405001" ,
432- "src" : "192.168.0.1" ,
433- "type" : "event" ,
414+ with patch ("uuid.uuid4" , return_value = "uuid" ):
415+
416+ @pytest .mark .parametrize (
417+ "tokenised_events, expected_output" ,
418+ [
419+ (
420+ [
421+ SampleEvent (
422+ event_string = "escaped_event" ,
423+ metadata = {
424+ "input_type" : "modinput" ,
425+ "sourcetype_to_search" : "dummy_sourcetype" ,
426+ "host" : "dummy_host" ,
434427 },
435- "exceptions" : {"mane_1" : "value_1" , "dest" : "192.168.0.1" },
436- "other_fields" : {
437- "vendor_product" : "Pytest Splunk Addon" ,
438- "target_users" : "dummy.user@splunk.com" ,
428+ sample_name = "file1.xml" ,
429+ requirement_test_data = {
430+ "cim_fields" : {
431+ "dest" : "192.168.0.1" ,
432+ "severity" : "low" ,
433+ "signature_id" : "405001" ,
434+ "src" : "192.168.0.1" ,
435+ "type" : "event" ,
436+ },
437+ "exceptions" : {"mane_1" : "value_1" , "dest" : "192.168.0.1" },
438+ "other_fields" : {
439+ "vendor_product" : "Pytest Splunk Addon" ,
440+ "target_users" : "dummy.user@splunk.com" ,
441+ },
439442 },
440- },
441- ),
442- SampleEvent (
443- event_string = "escaped_event" ,
444- metadata = {
445- "input_type" : "syslog_tcp" ,
446- "sourcetype_to_search" : "dummy_sourcetype" ,
447- "host" : "dummy_host_syslog" ,
448- },
449- sample_name = "file1.xml" ,
450- requirement_test_data = {},
451- ),
452- SampleEvent (
453- event_string = "escaped_event" ,
454- metadata = {
455- "input_type" : "syslog_tcp" ,
456- "sourcetype_to_search" : "dummy_sourcetype" ,
457- "host" : "dummy_host_syslog" ,
458- },
459- sample_name = "file1.xml" ,
460- requirement_test_data = {
461- "cim_fields" : {
462- "src" : "192.168.0.1" ,
463- "type" : "event" ,
443+ ),
444+ SampleEvent (
445+ event_string = "escaped_event" ,
446+ metadata = {
447+ "input_type" : "syslog_tcp" ,
448+ "sourcetype_to_search" : "dummy_sourcetype" ,
449+ "host" : "dummy_host_syslog" ,
464450 },
465- "exceptions" : {},
466- "other_fields" : {
467- "vendor_product" : "Pytest Splunk Addon" ,
468- "target_users" : "dummy.user@splunk.com" ,
451+ sample_name = "file1.xml" ,
452+ requirement_test_data = {},
453+ ),
454+ SampleEvent (
455+ event_string = "escaped_event" ,
456+ metadata = {
457+ "input_type" : "syslog_tcp" ,
458+ "sourcetype_to_search" : "dummy_sourcetype" ,
459+ "host" : "dummy_host_syslog" ,
469460 },
470- },
471- ),
472- ],
473- [
474- (
475- {
476- "escaped_event" : "escaped_event" ,
477- "fields" : {
478- "severity" : "low" ,
479- "signature_id" : "405001" ,
480- "src" : "192.168.0.1" ,
481- "type" : "event" ,
482- "vendor_product" : "Pytest Splunk Addon" ,
483- "target_users" : "dummy.user@splunk.com" ,
461+ sample_name = "file1.xml" ,
462+ requirement_test_data = {
463+ "cim_fields" : {
464+ "src" : "192.168.0.1" ,
465+ "type" : "event" ,
466+ },
467+ "exceptions" : {},
468+ "other_fields" : {
469+ "vendor_product" : "Pytest Splunk Addon" ,
470+ "target_users" : "dummy.user@splunk.com" ,
471+ },
484472 },
485- "modinput_params" : {"sourcetype" : "dummy_sourcetype" },
486- },
487- "sample_name::file1.xml::host::dummy_host" ,
488- ),
489- (
490- {
491- "escaped_event" : "escaped_event" ,
492- "fields" : {
493- "src" : "192.168.0.1" ,
494- "type" : "event" ,
495- "vendor_product" : "Pytest Splunk Addon" ,
496- "target_users" : "dummy.user@splunk.com" ,
473+ ),
474+ ],
475+ [
476+ (
477+ {
478+ "escaped_event" : "escaped_event" ,
479+ "fields" : {
480+ "severity" : "low" ,
481+ "signature_id" : "405001" ,
482+ "src" : "192.168.0.1" ,
483+ "type" : "event" ,
484+ "vendor_product" : "Pytest Splunk Addon" ,
485+ "target_users" : "dummy.user@splunk.com" ,
486+ },
487+ "modinput_params" : {"sourcetype" : "dummy_sourcetype" },
488+ "unique_identifier" : "uuid" ,
497489 },
498- "modinput_params" : {"sourcetype" : "dummy_sourcetype" },
499- },
500- "sample_name::file1.xml::host::dummy_host_syslog" ,
501- ),
502- ],
503- ),
504- ],
505- )
506- def test_generate_requirement_tests (tokenised_events , expected_output ):
507- with patch .object (
508- xml_event_parser , "strip_syslog_header" , return_value = "escaped_event"
509- ), patch .object (
510- xml_event_parser , "escape_char_event" , return_value = "escaped_event"
511- ), patch .object (
512- pytest , "param" , side_effect = lambda x , id : (x , id )
513- ) as param_mock :
514- out = list (
515- FieldTestGenerator (
516- "app_path" ,
517- tokenised_events ,
518- "field_bank" ,
519- ).generate_requirements_tests ()
520- )
521- assert out == expected_output
522- assert param_mock .call_count == len (expected_output )
490+ "sample_name::file1.xml::host::dummy_host" ,
491+ ),
492+ (
493+ {
494+ "escaped_event" : "escaped_event" ,
495+ "fields" : {
496+ "src" : "192.168.0.1" ,
497+ "type" : "event" ,
498+ "vendor_product" : "Pytest Splunk Addon" ,
499+ "target_users" : "dummy.user@splunk.com" ,
500+ },
501+ "modinput_params" : {"sourcetype" : "dummy_sourcetype" },
502+ "unique_identifier" : "uuid" ,
503+ },
504+ "sample_name::file1.xml::host::dummy_host_syslog" ,
505+ ),
506+ ],
507+ ),
508+ ],
509+ )
510+ def test_generate_requirement_tests (tokenised_events , expected_output ):
511+ with patch .object (
512+ xml_event_parser , "strip_syslog_header" , return_value = "escaped_event"
513+ ), patch .object (
514+ xml_event_parser , "escape_char_event" , return_value = "escaped_event"
515+ ), patch .object (
516+ pytest , "param" , side_effect = lambda x , id : (x , id )
517+ ) as param_mock :
518+ out = list (
519+ FieldTestGenerator (
520+ "app_path" ,
521+ tokenised_events ,
522+ "field_bank" ,
523+ ).generate_requirements_tests ()
524+ )
525+ assert out == expected_output
526+ assert param_mock .call_count == len (expected_output )
523527
524528
525529@pytest .mark .parametrize (
0 commit comments