aboutsummaryrefslogtreecommitdiff
path: root/absl/flags/tests
diff options
context:
space:
mode:
authorAbseil Team <absl-team@google.com>2018-11-22 02:18:51 -0800
committerCopybara-Service <copybara-piper@google.com>2018-11-22 02:19:04 -0800
commit944d5da86274ea56463e888a2cabb8589eebf284 (patch)
tree799a2e481a5cf2c785a0f25a9956ae59be98705c /absl/flags/tests
parent5c42d46388df1589e1016ce85527f1b0521bc188 (diff)
downloadabsl-py-944d5da86274ea56463e888a2cabb8589eebf284.tar.gz
Allow Enum class flags to correctly round-trip through serialize and parse
Previously the serialize method would prepend ClassName. to the value, which the parser would not accept. PiperOrigin-RevId: 222518525
Diffstat (limited to 'absl/flags/tests')
-rw-r--r--absl/flags/tests/_argument_parser_test.py9
-rw-r--r--absl/flags/tests/flags_helpxml_test.py2
2 files changed, 10 insertions, 1 deletions
diff --git a/absl/flags/tests/_argument_parser_test.py b/absl/flags/tests/_argument_parser_test.py
index ac2079c..7131a04 100644
--- a/absl/flags/tests/_argument_parser_test.py
+++ b/absl/flags/tests/_argument_parser_test.py
@@ -157,6 +157,15 @@ class EnumClassParserTest(absltest.TestCase):
with self.assertRaises(ValueError):
parser.parse('ORANGE')
+ def test_serialize_parse(self):
+ serializer = _argument_parser.EnumClassSerializer()
+ val1 = Fruit.BANANA
+ parser = _argument_parser.EnumClassParser(Fruit)
+ serialized = serializer.serialize(val1)
+ self.assertEqual(serialized, 'BANANA')
+ val2 = parser.parse(serialized)
+ self.assertEqual(val1, val2)
+
class HelperFunctionsTest(absltest.TestCase):
diff --git a/absl/flags/tests/flags_helpxml_test.py b/absl/flags/tests/flags_helpxml_test.py
index d5984f0..8324268 100644
--- a/absl/flags/tests/flags_helpxml_test.py
+++ b/absl/flags/tests/flags_helpxml_test.py
@@ -223,7 +223,7 @@ class FlagCreateXMLDOMElement(absltest.TestCase):
' <name>cc_version</name>\n'
' <meaning>&lt;STABLE|EXPERIMENTAL&gt;: '
'Compiler version to use.</meaning>\n'
- ' <default>Version.STABLE</default>\n'
+ ' <default>STABLE</default>\n'
' <current>Version.STABLE</current>\n'
' <type>enum class</type>\n'
' <enum_value>STABLE</enum_value>\n'