Moved enum tests that depend on internals to IntrospectiveTests.

- also factored out makeEnumInfo, so tests don't need to touch registry
- and added usage test that involves namespace
This commit is contained in:
Phil nash
2019-04-25 10:13:11 +01:00
parent e02d9e788f
commit f2ee4f17ad
5 changed files with 67 additions and 37 deletions

View File

@@ -16,11 +16,13 @@ namespace Catch {
namespace Detail {
std::unique_ptr<EnumInfo> makeEnumInfo( StringRef enumName, StringRef allValueNames, std::vector<int> const& values );
class EnumValuesRegistry : public IMutableEnumValuesRegistry {
std::vector<std::unique_ptr<EnumInfo>> m_enumInfos;
EnumInfo const& registerEnum(StringRef enumName, StringRef allEnums, std::vector<int> const& values) override;
EnumInfo const& registerEnum( StringRef enumName, StringRef allEnums, std::vector<int> const& values) override;
};
std::vector<std::string> parseEnums( StringRef enums );