From c567334c921025e6c3d4725b14a0c66f9be7578d Mon Sep 17 00:00:00 2001 From: Martin Xu <15661672+martinxu9@users.noreply.github.com> Date: Thu, 18 Apr 2024 20:00:18 -0700 Subject: [PATCH] allow set in var.contains (#3113) * allow set in var.contains * fix UT --- reflex/vars.py | 2 +- tests/test_var.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/reflex/vars.py b/reflex/vars.py index ccabf9185..acbaa5e29 100644 --- a/reflex/vars.py +++ b/reflex/vars.py @@ -1340,7 +1340,7 @@ class Var: Returns: A var representing the contain check. """ - if not (types._issubclass(self._var_type, Union[dict, list, tuple, str])): + if not (types._issubclass(self._var_type, Union[dict, list, tuple, str, set])): raise TypeError( f"Var {self._var_full_name} of type {self._var_type} does not support contains check." ) diff --git a/tests/test_var.py b/tests/test_var.py index 68271d2ba..a58c49392 100644 --- a/tests/test_var.py +++ b/tests/test_var.py @@ -415,6 +415,7 @@ def test_basic_operations(TestObj): "var, expected", [ (v([1, 2, 3]), "[1, 2, 3]"), + (v(set([1, 2, 3])), "[1, 2, 3]"), (v(["1", "2", "3"]), '["1", "2", "3"]'), (BaseVar(_var_name="foo", _var_type=list)._var_set_state("state"), "state.foo"), (BaseVar(_var_name="foo", _var_type=list), "foo"), @@ -918,7 +919,6 @@ def test_unsupported_types_for_reverse(var): BaseVar(_var_name="var", _var_type=int), BaseVar(_var_name="var", _var_type=float), BaseVar(_var_name="var", _var_type=bool), - BaseVar(_var_name="var", _var_type=set), BaseVar(_var_name="var", _var_type=None), ], )