@@ -386,6 +386,50 @@ def test_verify_messages_no_errors(self, dmesg):
386386 )
387387 assert dmesg .verify_messages ()["successful" ]
388388
389+ def test_verify_messages_with_custom_allowlist (self , dmesg ):
390+ output = dedent (
391+ """
392+ [ 4.660616] Couldn't get size: 0x800000000000000e
393+ [ 4.694322] MODSIGN: Couldn't get UEFI db list
394+ [ 4.728454] Couldn't get size: 0x800000000000000e
395+ [ 33.580364] cdc_ether 1-1.1.2:1.0 enp0s29u1u1u2: CDC: unexpected notification 20!"""
396+ )
397+ custom_allowlist = ["Couldn't get size" , "MODSIGN" , "unexpected notification" ]
398+ dmesg ._connection .execute_command .return_value = ConnectionCompletedProcess (
399+ return_code = 0 , args = "command" , stdout = output , stderr = "stderr"
400+ )
401+ result = dmesg .verify_messages (custom_allowlist = custom_allowlist )
402+ assert result ["successful" ]
403+ assert result ["error" ] == ""
404+
405+ def test_verify_messages_with_custom_allowlist_partial_match (self , dmesg ):
406+ output = dedent (
407+ """
408+ [ 4.660616] Couldn't get size: 0x800000000000000e
409+ [ 4.694322] MODSIGN: Couldn't get UEFI db list
410+ [ 33.580364] cdc_ether 1-1.1.2:1.0 enp0s29u1u1u2: CDC: unexpected notification 20!"""
411+ )
412+ custom_allowlist = ["Couldn't get size" ]
413+ dmesg ._connection .execute_command .return_value = ConnectionCompletedProcess (
414+ return_code = 0 , args = "command" , stdout = output , stderr = "stderr"
415+ )
416+ result = dmesg .verify_messages (custom_allowlist = custom_allowlist )
417+ assert not result ["successful" ]
418+ assert "MODSIGN" in result ["error" ]
419+ assert "unexpected notification" in result ["error" ]
420+
421+ def test_verify_messages_with_empty_custom_allowlist (self , dmesg ):
422+ output = dedent (
423+ """
424+ [ 4.660616] Couldn't get size: 0x800000000000000e"""
425+ )
426+ dmesg ._connection .execute_command .return_value = ConnectionCompletedProcess (
427+ return_code = 0 , args = "command" , stdout = output , stderr = "stderr"
428+ )
429+ result = dmesg .verify_messages (custom_allowlist = [])
430+ assert not result ["successful" ]
431+ assert "Couldn't get size" in result ["error" ]
432+
389433 def test_check_errors (self , dmesg ):
390434 output = dedent (
391435 """
@@ -841,6 +885,35 @@ def test_verify_messages_no_errors(self, dmesg):
841885 )
842886 assert dmesg .verify_messages ()["successful" ]
843887
888+ def test_verify_messages_with_custom_allowlist (self , dmesg ):
889+ output = dedent (
890+ """
891+ [ 4.660616] Couldn't get size error: 0x800000000000000e
892+ [ 4.694322] MODSIGN ERROR: Couldn't get UEFI db list
893+ [ 4.728454] Couldn't get size ERROR: 0x800000000000000e"""
894+ )
895+ custom_allowlist = ["Couldn't get size" , "MODSIGN" ]
896+ dmesg ._connection .execute_command .return_value = ConnectionCompletedProcess (
897+ return_code = 0 , args = "command" , stdout = output , stderr = "stderr"
898+ )
899+ result = dmesg .verify_messages (custom_allowlist = custom_allowlist )
900+ assert result ["successful" ]
901+ assert result ["error" ] == ""
902+
903+ def test_verify_messages_with_custom_allowlist_partial_match (self , dmesg ):
904+ output = dedent (
905+ """
906+ [ 4.660616] Couldn't get size error: 0x800000000000000e
907+ [ 4.694322] MODSIGN ERROR: Couldn't get UEFI db list"""
908+ )
909+ custom_allowlist = ["Couldn't get size" ]
910+ dmesg ._connection .execute_command .return_value = ConnectionCompletedProcess (
911+ return_code = 0 , args = "command" , stdout = output , stderr = "stderr"
912+ )
913+ result = dmesg .verify_messages (custom_allowlist = custom_allowlist )
914+ assert not result ["successful" ]
915+ assert "MODSIGN ERROR" in result ["error" ]
916+
844917 def test_check_errors (self , dmesg ):
845918 output = dedent (
846919 """
0 commit comments