aboutsummaryrefslogtreecommitdiff
path: root/pw_cli
diff options
context:
space:
mode:
authorAlexei Frolov <frolv@google.com>2020-01-13 14:45:01 -0800
committerCQ Bot Account <commit-bot@chromium.org>2020-01-13 23:29:05 +0000
commit1e72d4943981e991cbeb25f157895fe334bc0091 (patch)
tree2558c3fe09ade920170c095ad05bfbdabc3e5402 /pw_cli
parenta44ed27bbe12a66aab7129d380afc702f7ff70e0 (diff)
downloadpigweed-1e72d4943981e991cbeb25f157895fe334bc0091.tar.gz
envparse: Accept emoji as booleans
This change updates the envparse strict_bool type to accept emoji. Change-Id: I585445399367e07cb2e30605f62cf44f882ee2cd
Diffstat (limited to 'pw_cli')
-rw-r--r--pw_cli/py/pw_cli/envparse.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/pw_cli/py/pw_cli/envparse.py b/pw_cli/py/pw_cli/envparse.py
index 5a6376899..da38fe37c 100644
--- a/pw_cli/py/pw_cli/envparse.py
+++ b/pw_cli/py/pw_cli/envparse.py
@@ -135,8 +135,22 @@ class EnvironmentParser:
return f'{type(self).__name__}(prefix={self._prefix})'
+# List of emoji which are considered to represent "True".
+_BOOLEAN_TRUE_EMOJI = set([
+ '✔️',
+ '👍',
+ '👍🏻',
+ '👍🏼',
+ '👍🏽',
+ '👍🏾',
+ '👍🏿',
+ '💯',
+])
+
+
def strict_bool(value: str) -> bool:
- return value == '1' or value.lower() == 'true'
+ return (value == '1' or value.lower() == 'true'
+ or value in _BOOLEAN_TRUE_EMOJI)
OpenMode = Literal['r', 'rb', 'w', 'wb']