### Question:
FlagManager { public FeatureFlags getFlag(String flagName) { return (FeatureFlags) invokeStaticMethod("valueOf", new Object[] { flagName }, String.class); } private  FlagManager(Class<?> featureFlagsClass); void init(); static FlagManager get(Class<?> featureFlagsClass); static FlagManager get(String className); static FlagManager get(); void initFlags(); FeatureFlags[] getFlags(); Result flipFlag(String flagName); Result flipFlag(FeatureFlags flag); Result setFlagStateTo(String flagName, FlagState newFlagState); Result setFlagStateToAndPersist(String flagName, FlagState newFlagState); Result setFlagStateToAndPersist(FeatureFlags flag, FlagState newFlagState); Result setFlagStateTo(FeatureFlags flag, FlagState newFlagState); boolean isUp(FeatureFlags flag); FeatureFlags getFlag(String flagName); Result flipFlagForUser(String userName, String flagName); Result setFlagStateForUserToAndPersist(String userName, String flagName, FlagState newFlagState); Result setFlagStateForUser(String userName, String flagName, FlagState newFlagState); void resetThreadUserName(); void setThreadUserName(String userName); String getThreadUserName(); String[] getUsersForFlag(FeatureFlags flag); String getFeatureFlagClassName(); String getFlagsStatesAsString(); String getFlagsUsersAsString();  }### Answer:
@Test public void testGetFlag() { FeatureFlags flag = manager.getFlag("ONE"); assertEquals("get flag ONE", Flags.ONE, flag); flag = manager.getFlag("THREE"); assertEquals("get flag THREE", Flags.THREE, flag); flag = manager.getFlag("YOU SHALL NOT EXIST"); assertEquals("get flag YOU SHALL NOT EXIST", null, flag); }