diff --git a/tools/aconfig/src/commands.rs b/tools/aconfig/src/commands.rs index bf4592175c..4f0a706dc0 100644 --- a/tools/aconfig/src/commands.rs +++ b/tools/aconfig/src/commands.rs @@ -213,7 +213,7 @@ pub fn create_device_config_sysprops(mut input: Input) -> Result> { #[derive(Copy, Clone, Debug, PartialEq, Eq, ValueEnum)] pub enum DumpFormat { Text, - Debug, + Verbose, Protobuf, Textproto, } @@ -229,18 +229,27 @@ pub fn dump_parsed_flags(mut input: Vec, format: DumpFormat) -> Result { for parsed_flag in parsed_flags.parsed_flag.into_iter() { let line = format!( - "{}/{}: {:?} {:?}\n", + "{}/{}: {:?} + {:?}\n", parsed_flag.package(), parsed_flag.name(), - parsed_flag.state(), - parsed_flag.permission() + parsed_flag.permission(), + parsed_flag.state() ); output.extend_from_slice(line.as_bytes()); } } - DumpFormat::Debug => { + DumpFormat::Verbose => { for parsed_flag in parsed_flags.parsed_flag.into_iter() { - let line = format!("{:#?}\n", parsed_flag); + let sources: Vec<_> = + parsed_flag.trace.iter().map(|tracepoint| tracepoint.source()).collect(); + let line = format!( + "{}/{}: {:?} + {:?} ({})\n", + parsed_flag.package(), + parsed_flag.name(), + parsed_flag.permission(), + parsed_flag.state(), + sources.join(", ") + ); output.extend_from_slice(line.as_bytes()); } } @@ -326,7 +335,7 @@ mod tests { let input = parse_test_flags_as_input(); let bytes = dump_parsed_flags(vec![input], DumpFormat::Text).unwrap(); let text = std::str::from_utf8(&bytes).unwrap(); - assert!(text.contains("com.android.aconfig.test/disabled_ro: DISABLED READ_ONLY")); + assert!(text.contains("com.android.aconfig.test/disabled_ro: READ_ONLY + DISABLED")); } #[test]