base: Add enum to_number tests
Add a test to convert a string containing a number into enums. One of the tests has been disabled to highlight an error-prone situation where a number that is not a valid enum manages to be converted to an enum. Change-Id: I7967c62feea335f3ffda40d8bf0334c20b53ee6c Signed-off-by: Daniel R. Carvalho <odanrc@yahoo.com.br> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/41334 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Bobby R. Bruce <bbruce@ucdavis.edu> Maintainer: Bobby R. Bruce <bbruce@ucdavis.edu>
This commit is contained in:
committed by
Daniel Carvalho
parent
de4487f848
commit
5a47a830d3
@@ -301,6 +301,30 @@ TEST(StrTest, ToNumber64BitIntInvalidString)
|
||||
EXPECT_FALSE(to_number(input, output));
|
||||
}
|
||||
|
||||
TEST(StrTest, ToNumberEnum)
|
||||
{
|
||||
enum Number
|
||||
{
|
||||
TWO=2,
|
||||
};
|
||||
Number output;
|
||||
std::string input = "2";
|
||||
EXPECT_TRUE(to_number(input, output));
|
||||
EXPECT_EQ(TWO, output);
|
||||
}
|
||||
|
||||
/** Test that trying to convert a number to an enum that is not valid fails. */
|
||||
TEST(StrTest, DISABLED_ToNumberEnumInvalid)
|
||||
{
|
||||
enum Number
|
||||
{
|
||||
TWO=2,
|
||||
};
|
||||
Number output;
|
||||
std::string input = "3";
|
||||
EXPECT_FALSE(to_number(input, output));
|
||||
}
|
||||
|
||||
TEST(StrTest, ToNumberFloat)
|
||||
{
|
||||
float output;
|
||||
|
||||
Reference in New Issue
Block a user