Merge "aconfig: change java flag method name to camelCase" am: 59d662524c
am: bec4ce710f
Original change: https://android-review.googlesource.com/c/platform/build/+/2626776 Change-Id: I371b95a00f483f2a30ccc6e67cb3ffb7c332dccd Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -86,10 +86,26 @@ fn create_class_element(package: &str, item: &Item) -> ClassElement {
|
|||||||
device_config_flag,
|
device_config_flag,
|
||||||
flag_name_constant_suffix: item.name.to_ascii_uppercase(),
|
flag_name_constant_suffix: item.name.to_ascii_uppercase(),
|
||||||
is_read_write: item.permission == Permission::ReadWrite,
|
is_read_write: item.permission == Permission::ReadWrite,
|
||||||
method_name: item.name.clone(),
|
method_name: format_java_method_name(&item.name),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn format_java_method_name(flag_name: &str) -> String {
|
||||||
|
flag_name
|
||||||
|
.split('_')
|
||||||
|
.filter(|&word| !word.is_empty())
|
||||||
|
.enumerate()
|
||||||
|
.map(|(index, word)| {
|
||||||
|
if index == 0 {
|
||||||
|
word.to_ascii_lowercase()
|
||||||
|
} else {
|
||||||
|
word[0..1].to_ascii_uppercase() + &word[1..].to_ascii_lowercase()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.collect::<Vec<String>>()
|
||||||
|
.join("")
|
||||||
|
}
|
||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use super::*;
|
use super::*;
|
||||||
@@ -102,17 +118,17 @@ mod tests {
|
|||||||
let expect_flags_content = r#"
|
let expect_flags_content = r#"
|
||||||
package com.android.aconfig.test;
|
package com.android.aconfig.test;
|
||||||
public final class Flags {
|
public final class Flags {
|
||||||
public static boolean disabled_ro() {
|
public static boolean disabledRo() {
|
||||||
return FEATURE_FLAGS.disabled_ro();
|
return FEATURE_FLAGS.disabledRo();
|
||||||
}
|
}
|
||||||
public static boolean disabled_rw() {
|
public static boolean disabledRw() {
|
||||||
return FEATURE_FLAGS.disabled_rw();
|
return FEATURE_FLAGS.disabledRw();
|
||||||
}
|
}
|
||||||
public static boolean enabled_ro() {
|
public static boolean enabledRo() {
|
||||||
return FEATURE_FLAGS.enabled_ro();
|
return FEATURE_FLAGS.enabledRo();
|
||||||
}
|
}
|
||||||
public static boolean enabled_rw() {
|
public static boolean enabledRw() {
|
||||||
return FEATURE_FLAGS.enabled_rw();
|
return FEATURE_FLAGS.enabledRw();
|
||||||
}
|
}
|
||||||
private static FeatureFlags FEATURE_FLAGS = new FeatureFlagsImpl();
|
private static FeatureFlags FEATURE_FLAGS = new FeatureFlagsImpl();
|
||||||
|
|
||||||
@@ -123,11 +139,11 @@ mod tests {
|
|||||||
import android.provider.DeviceConfig;
|
import android.provider.DeviceConfig;
|
||||||
public final class FeatureFlagsImpl implements FeatureFlags {
|
public final class FeatureFlagsImpl implements FeatureFlags {
|
||||||
@Override
|
@Override
|
||||||
public boolean disabled_ro() {
|
public boolean disabledRo() {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public boolean disabled_rw() {
|
public boolean disabledRw() {
|
||||||
return DeviceConfig.getBoolean(
|
return DeviceConfig.getBoolean(
|
||||||
"aconfig_test",
|
"aconfig_test",
|
||||||
"com.android.aconfig.test.disabled_rw",
|
"com.android.aconfig.test.disabled_rw",
|
||||||
@@ -135,11 +151,11 @@ mod tests {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public boolean enabled_ro() {
|
public boolean enabledRo() {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public boolean enabled_rw() {
|
public boolean enabledRw() {
|
||||||
return DeviceConfig.getBoolean(
|
return DeviceConfig.getBoolean(
|
||||||
"aconfig_test",
|
"aconfig_test",
|
||||||
"com.android.aconfig.test.enabled_rw",
|
"com.android.aconfig.test.enabled_rw",
|
||||||
@@ -151,10 +167,10 @@ mod tests {
|
|||||||
let expected_featureflags_content = r#"
|
let expected_featureflags_content = r#"
|
||||||
package com.android.aconfig.test;
|
package com.android.aconfig.test;
|
||||||
public interface FeatureFlags {
|
public interface FeatureFlags {
|
||||||
boolean disabled_ro();
|
boolean disabledRo();
|
||||||
boolean disabled_rw();
|
boolean disabledRw();
|
||||||
boolean enabled_ro();
|
boolean enabledRo();
|
||||||
boolean enabled_rw();
|
boolean enabledRw();
|
||||||
}
|
}
|
||||||
"#;
|
"#;
|
||||||
let mut file_set = HashMap::from([
|
let mut file_set = HashMap::from([
|
||||||
@@ -180,4 +196,12 @@ mod tests {
|
|||||||
|
|
||||||
assert!(file_set.is_empty());
|
assert!(file_set.is_empty());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_format_java_method_name() {
|
||||||
|
let input = "____some_snake___name____";
|
||||||
|
let expected = "someSnakeName";
|
||||||
|
let formatted_name = format_java_method_name(input);
|
||||||
|
assert_eq!(expected, formatted_name);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
import static com.android.aconfig.test.Flags.disabled_ro;
|
import static com.android.aconfig.test.Flags.disabledRo;
|
||||||
import static com.android.aconfig.test.Flags.disabled_rw;
|
import static com.android.aconfig.test.Flags.disabledRw;
|
||||||
import static com.android.aconfig.test.Flags.enabled_ro;
|
import static com.android.aconfig.test.Flags.enabledRo;
|
||||||
import static com.android.aconfig.test.Flags.enabled_rw;
|
import static com.android.aconfig.test.Flags.enabledRw;
|
||||||
import static org.junit.Assert.assertFalse;
|
import static org.junit.Assert.assertFalse;
|
||||||
import static org.junit.Assert.assertTrue;
|
import static org.junit.Assert.assertTrue;
|
||||||
|
|
||||||
@@ -13,25 +13,25 @@ import org.junit.runners.JUnit4;
|
|||||||
public final class AconfigTest {
|
public final class AconfigTest {
|
||||||
@Test
|
@Test
|
||||||
public void testDisabledReadOnlyFlag() {
|
public void testDisabledReadOnlyFlag() {
|
||||||
assertFalse(disabled_ro());
|
assertFalse(disabledRo());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testEnabledReadOnlyFlag() {
|
public void testEnabledReadOnlyFlag() {
|
||||||
// TODO: change to assertTrue(enabled_ro()) when the build supports reading tests/*.values
|
// TODO: change to assertTrue(enabledRo()) when the build supports reading tests/*.values
|
||||||
// (currently all flags are assigned the default READ_ONLY + DISABLED)
|
// (currently all flags are assigned the default READ_ONLY + DISABLED)
|
||||||
assertFalse(enabled_ro());
|
assertFalse(enabledRo());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testDisabledReadWriteFlag() {
|
public void testDisabledReadWriteFlag() {
|
||||||
assertFalse(disabled_rw());
|
assertFalse(disabledRw());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testEnabledReadWriteFlag() {
|
public void testEnabledReadWriteFlag() {
|
||||||
// TODO: change to assertTrue(enabled_rw()) when the build supports reading tests/*.values
|
// TODO: change to assertTrue(enabledRw()) when the build supports reading tests/*.values
|
||||||
// (currently all flags are assigned the default READ_ONLY + DISABLED)
|
// (currently all flags are assigned the default READ_ONLY + DISABLED)
|
||||||
assertFalse(enabled_rw());
|
assertFalse(enabledRw());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user