Merge "Fix bug in device path proto reading" into main am: b63973dfc2
Original change: https://android-review.googlesource.com/c/platform/build/+/3085527 Change-Id: Iebf64e0055bc5d0f697dba038ac3635a2cfcb0c6 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -21,11 +21,19 @@ use std::path::PathBuf;
|
|||||||
|
|
||||||
use std::fs;
|
use std::fs;
|
||||||
|
|
||||||
|
fn read_partition_paths() -> Vec<PathBuf> {
|
||||||
|
include_str!("../partition_aconfig_flags_paths.txt")
|
||||||
|
.split(',')
|
||||||
|
.map(|s| s.trim().trim_matches('"'))
|
||||||
|
.filter(|s| !s.is_empty())
|
||||||
|
.map(|s| PathBuf::from(s.to_string()))
|
||||||
|
.collect()
|
||||||
|
}
|
||||||
|
|
||||||
/// Determine all paths that contain an aconfig protobuf file.
|
/// Determine all paths that contain an aconfig protobuf file.
|
||||||
pub fn parsed_flags_proto_paths() -> Result<Vec<PathBuf>> {
|
pub fn parsed_flags_proto_paths() -> Result<Vec<PathBuf>> {
|
||||||
let mut result: Vec<PathBuf> = [include_str!("../partition_aconfig_flags_paths.txt")]
|
let mut result: Vec<PathBuf> = read_partition_paths();
|
||||||
.map(|s| PathBuf::from(s.to_string()))
|
|
||||||
.to_vec();
|
|
||||||
for dir in fs::read_dir("/apex")? {
|
for dir in fs::read_dir("/apex")? {
|
||||||
let dir = dir?;
|
let dir = dir?;
|
||||||
|
|
||||||
@@ -45,3 +53,23 @@ pub fn parsed_flags_proto_paths() -> Result<Vec<PathBuf>> {
|
|||||||
|
|
||||||
Ok(result)
|
Ok(result)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(test)]
|
||||||
|
mod tests {
|
||||||
|
use super::*;
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_read_partition_paths() {
|
||||||
|
assert_eq!(read_partition_paths().len(), 4);
|
||||||
|
|
||||||
|
assert_eq!(
|
||||||
|
read_partition_paths(),
|
||||||
|
vec![
|
||||||
|
PathBuf::from("/system/etc/aconfig_flags.pb"),
|
||||||
|
PathBuf::from("/system_ext/etc/aconfig_flags.pb"),
|
||||||
|
PathBuf::from("/product/etc/aconfig_flags.pb"),
|
||||||
|
PathBuf::from("/vendor/etc/aconfig_flags.pb")
|
||||||
|
]
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user