blob: 387b392ce9e73a8b2fc4f132c1364c05b5dc5a3b [file] [log] [blame]
Tom Rini83d290c2018-05-06 17:58:06 -04001# SPDX-License-Identifier: GPL-2.0+
Simon Glass20faa272017-12-04 13:48:30 -07002# Copyright (c) 2016, Google Inc.
3#
Simon Glass20faa272017-12-04 13:48:30 -07004# U-Boot Verified Boot Test
5
6"""
7This tests U-Boot logging. It uses the 'log test' command with various options
8and checks that the output is correct.
9"""
10
11import pytest
12
Tom Rini680a52c2018-05-25 08:28:45 -040013@pytest.mark.buildconfigspec('cmd_log')
Simon Glassaa4e0e02017-12-28 13:14:21 -070014def test_log_format(u_boot_console):
15 """Test the 'log format' and 'log rec' commands"""
16 def run_with_format(fmt, expected_output):
17 """Set up the log format and then write a log record
18
19 Args:
20 fmt: Format to use for 'log format'
21 expected_output: Expected output from the 'log rec' command
22 """
23 output = cons.run_command('log format %s' % fmt)
24 assert output == ''
25 output = cons.run_command('log rec arch notice file.c 123 func msg')
26 assert output == expected_output
27
28 cons = u_boot_console
29 with cons.log.section('format'):
30 run_with_format('all', 'NOTICE.arch,file.c:123-func() msg')
31 output = cons.run_command('log format')
32 assert output == 'Log format: clFLfm'
33
34 run_with_format('fm', 'func() msg')
35 run_with_format('clfm', 'NOTICE.arch,func() msg')
36 run_with_format('FLfm', 'file.c:123-func() msg')
37 run_with_format('lm', 'NOTICE. msg')
38 run_with_format('m', 'msg')