[ffx][profile memory] Remove extraneous new line in csv output.
BUGS: fxb/116886
TEST: `fx test ffx_profile_memory_lib_test`
Change-Id: I85600c86b46b110177a7ba04a373ec1037fc149b
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/772742
Commit-Queue: Jean-François Geyelin <jif@google.com>
Reviewed-by: Guillaume Chelfi <chelfi@google.com>
diff --git a/src/developer/ffx/plugins/profile/memory/src/write_csv_output.rs b/src/developer/ffx/plugins/profile/memory/src/write_csv_output.rs
index e9068807..a148f63 100644
--- a/src/developer/ffx/plugins/profile/memory/src/write_csv_output.rs
+++ b/src/developer/ffx/plugins/profile/memory/src/write_csv_output.rs
@@ -25,12 +25,13 @@
}
/// Print to `w` a human-readable presentation of `digest`.
+/// Outputting more than just the process data (e.g. `total_committed_bytes_in_vmos`)
+/// is out of the scope of the CSV output.
fn print_complete_digest(w: &mut Writer, digest: processed::Digest) -> Result<()> {
print_processes_digest(
w,
ProcessesMemoryUsage { process_data: digest.processes, capture_time: digest.time },
)?;
- writeln!(w)?;
Ok(())
}
@@ -43,3 +44,65 @@
}
}
}
+
+#[cfg(test)]
+mod tests {
+ use super::*;
+ use crate::plugin_output::ProcessesMemoryUsage;
+ use crate::processed::RetainedMemory;
+ use crate::ProfileMemoryOutput::ProcessDigest;
+ use std::collections::HashMap;
+ use std::collections::HashSet;
+
+ fn data_for_test() -> crate::ProfileMemoryOutput {
+ ProcessDigest(ProcessesMemoryUsage {
+ capture_time: 123,
+ process_data: vec![processed::Process {
+ koid: 4,
+ name: "P".to_string(),
+ memory: RetainedMemory { private: 11, scaled: 22, total: 33, vmos: vec![] },
+ name_to_memory: {
+ let mut result = HashMap::new();
+ result.insert(
+ "vmoC".to_string(),
+ processed::RetainedMemory {
+ private: 4444,
+ scaled: 55555,
+ total: 666666,
+ vmos: vec![],
+ },
+ );
+ result.insert(
+ "vmoB".to_string(),
+ processed::RetainedMemory {
+ private: 4444,
+ scaled: 55555,
+ total: 666666,
+ vmos: vec![],
+ },
+ );
+ result.insert(
+ "vmoA".to_string(),
+ processed::RetainedMemory {
+ private: 44444,
+ scaled: 555555,
+ total: 6666666,
+ vmos: vec![],
+ },
+ );
+ result
+ },
+ vmos: HashSet::new(),
+ }],
+ })
+ }
+
+ #[test]
+ fn write_csv_output_test() {
+ let mut writer = Writer::new_test(None);
+ let _ = write_csv_output(&mut writer, data_for_test());
+ let actual_output = writer.test_output().unwrap();
+ let expected_output = "123,4,P,11,22,33\n";
+ pretty_assertions::assert_eq!(actual_output, *expected_output);
+ }
+}