blob: 317289de3d81c7c343b594b1d47dc562e9e81234 [file] [log] [blame]
Mårten Kongstadaf3da9d2023-07-24 11:10:00 +02001import static com.android.aconfig.test.Flags.FLAG_DISABLED_RO;
2import static com.android.aconfig.test.Flags.FLAG_DISABLED_RW;
3import static com.android.aconfig.test.Flags.FLAG_ENABLED_RO;
4import static com.android.aconfig.test.Flags.FLAG_ENABLED_RW;
Zhi Douaf81e202023-06-14 20:38:20 +00005import static com.android.aconfig.test.Flags.disabledRo;
6import static com.android.aconfig.test.Flags.disabledRw;
7import static com.android.aconfig.test.Flags.enabledRo;
8import static com.android.aconfig.test.Flags.enabledRw;
Mårten Kongstadaf3da9d2023-07-24 11:10:00 +02009import static org.junit.Assert.assertEquals;
Mårten Kongstad9c59c312023-05-30 11:15:02 +020010import static org.junit.Assert.assertFalse;
Zhi Doua7200112023-08-07 18:09:28 +000011import static org.junit.Assert.assertThrows;
Mårten Kongstad9c59c312023-05-30 11:15:02 +020012import static org.junit.Assert.assertTrue;
13
14import org.junit.Test;
15import org.junit.runner.RunWith;
16import org.junit.runners.JUnit4;
17
Zhi Doua7200112023-08-07 18:09:28 +000018import com.android.aconfig.test.FakeFeatureFlagsImpl;
19import com.android.aconfig.test.FeatureFlags;
20
Mårten Kongstad9c59c312023-05-30 11:15:02 +020021@RunWith(JUnit4.class)
22public final class AconfigTest {
23 @Test
24 public void testDisabledReadOnlyFlag() {
Mårten Kongstadaf3da9d2023-07-24 11:10:00 +020025 assertEquals("com.android.aconfig.test.disabled_ro", FLAG_DISABLED_RO);
Zhi Douaf81e202023-06-14 20:38:20 +000026 assertFalse(disabledRo());
Mårten Kongstad9c59c312023-05-30 11:15:02 +020027 }
28
29 @Test
30 public void testEnabledReadOnlyFlag() {
Mårten Kongstadaf3da9d2023-07-24 11:10:00 +020031 assertEquals("com.android.aconfig.test.disabled_rw", FLAG_DISABLED_RW);
Zhi Douaf81e202023-06-14 20:38:20 +000032 // TODO: change to assertTrue(enabledRo()) when the build supports reading tests/*.values
Mårten Kongstad9c59c312023-05-30 11:15:02 +020033 // (currently all flags are assigned the default READ_ONLY + DISABLED)
Zhi Douaf81e202023-06-14 20:38:20 +000034 assertFalse(enabledRo());
Mårten Kongstad9c59c312023-05-30 11:15:02 +020035 }
36
37 @Test
38 public void testDisabledReadWriteFlag() {
Mårten Kongstadaf3da9d2023-07-24 11:10:00 +020039 assertEquals("com.android.aconfig.test.enabled_ro", FLAG_ENABLED_RO);
Zhi Douaf81e202023-06-14 20:38:20 +000040 assertFalse(disabledRw());
Mårten Kongstad9c59c312023-05-30 11:15:02 +020041 }
42
43 @Test
44 public void testEnabledReadWriteFlag() {
Mårten Kongstadaf3da9d2023-07-24 11:10:00 +020045 assertEquals("com.android.aconfig.test.enabled_rw", FLAG_ENABLED_RW);
Zhi Douaf81e202023-06-14 20:38:20 +000046 // TODO: change to assertTrue(enabledRw()) when the build supports reading tests/*.values
Mårten Kongstad9c59c312023-05-30 11:15:02 +020047 // (currently all flags are assigned the default READ_ONLY + DISABLED)
Zhi Douaf81e202023-06-14 20:38:20 +000048 assertFalse(enabledRw());
Mårten Kongstad9c59c312023-05-30 11:15:02 +020049 }
Zhi Doua7200112023-08-07 18:09:28 +000050
51 @Test
52 public void testFakeFeatureFlagsImplNotImpl() {
53 FeatureFlags featureFlags = new FakeFeatureFlagsImpl();
54 assertThrows(UnsupportedOperationException.class, () -> featureFlags.enabledRw());
55 }
Mårten Kongstad9c59c312023-05-30 11:15:02 +020056}