ソースを参照

Khaleel/eng 5281 typeerror unsupported type ellipsis for guess type (#5046)

* handle tuple types

* fix that one guy

* add test
Khaleel Al-Adhami 1 ヶ月 前
コミット
d13ad9ed3f
2 ファイル変更3 行追加0 行削除
  1. 2 0
      reflex/vars/sequence.py
  2. 1 0
      tests/units/test_var.py

+ 2 - 0
reflex/vars/sequence.py

@@ -1604,6 +1604,8 @@ def _determine_value_of_array_index(
         return args[0] if args else Any
         return args[0] if args else Any
     if origin_var_type is tuple:
     if origin_var_type is tuple:
         args = get_args(var_type)
         args = get_args(var_type)
+        if len(args) == 2 and args[1] is ...:
+            return args[0]
         return (
         return (
             args[int(index) % len(args)]
             args[int(index) % len(args)]
             if args and index is not None
             if args and index is not None

+ 1 - 0
tests/units/test_var.py

@@ -509,6 +509,7 @@ def test_var_indexing_lists(var):
             Var(_js_expr="tuple", _var_type=tuple[int, str]).guess_type(),
             Var(_js_expr="tuple", _var_type=tuple[int, str]).guess_type(),
             [int, str],
             [int, str],
         ),
         ),
+        (Var.create((1, 2)), [int, int]),
     ],
     ],
 )
 )
 def test_var_indexing_types(var, type_):
 def test_var_indexing_types(var, type_):