I am currently moving all option values from ConfigValues to database. It should make this values more readable and less error prone, since all will be in one place. Also it will allow engine-config to work with all available options and provide a way to find out if option is versioned, or has one general value.
But I encountered problem with unit tests. Some tests (tests that use MockConfigRule e.g. NetworkInSyncWithVdsNetworkInterfaceTest) rely on getting default value from ConfigUtilBase#getValue, which will no longer be possible, because there will be no @DefaultValueAttribute. As I understand, this tests cannot get values from database either.
Does someone have an idea how to solve this problem? I was thinking about changing MockConfigRule to get values from 000_config.sql, but I am not sure if this change won't cause some other issues.