aboutsummaryrefslogtreecommitdiff
path: root/tools/record-finalized-flags/src/flag_values.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tools/record-finalized-flags/src/flag_values.rs')
-rw-r--r--tools/record-finalized-flags/src/flag_values.rs53
1 files changed, 0 insertions, 53 deletions
diff --git a/tools/record-finalized-flags/src/flag_values.rs b/tools/record-finalized-flags/src/flag_values.rs
deleted file mode 100644
index cc16d12f3c..0000000000
--- a/tools/record-finalized-flags/src/flag_values.rs
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright (C) 2025 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-use aconfig_protos::{ParsedFlagExt, ProtoFlagPermission, ProtoFlagState};
-use anyhow::{anyhow, Result};
-use std::{collections::HashSet, io::Read};
-
-use crate::FlagId;
-
-/// Parse a ProtoParsedFlags binary protobuf blob and return the fully qualified names of flags
-/// that are slated for API finalization (i.e. are both ENABLED and READ_ONLY).
-pub(crate) fn get_relevant_flags_from_binary_proto<R: Read>(
- mut reader: R,
-) -> Result<HashSet<FlagId>> {
- let mut buffer = Vec::new();
- reader.read_to_end(&mut buffer)?;
- let parsed_flags = aconfig_protos::parsed_flags::try_from_binary_proto(&buffer)
- .map_err(|_| anyhow!("failed to parse binary proto"))?;
- let iter = parsed_flags
- .parsed_flag
- .into_iter()
- .filter(|flag| {
- flag.state() == ProtoFlagState::ENABLED
- && flag.permission() == ProtoFlagPermission::READ_ONLY
- })
- .map(|flag| flag.fully_qualified_name());
- Ok(HashSet::from_iter(iter))
-}
-
-#[cfg(test)]
-mod tests {
- use super::*;
-
- #[test]
- fn test_disabled_or_read_write_flags_are_ignored() {
- let bytes = include_bytes!("../tests/flags.protobuf");
- let flags = get_relevant_flags_from_binary_proto(&bytes[..]).unwrap();
- assert_eq!(flags, HashSet::from_iter(vec!["record_finalized_flags.test.foo".to_string()]));
- }
-}