MCPcopy Create free account
hub / github.com/TheSmallHanCat/flow2api / BrowserCaptchaPersonalTests

Class BrowserCaptchaPersonalTests

tests/test_browser_captcha_personal.py:72–355  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

70 result = yield {"method": "Runtime.evaluate", "params": {}}
71 return result
72
73
74class BrowserCaptchaPersonalTests(unittest.IsolatedAsyncioTestCase):
75 def setUp(self):
76 self.service = BrowserCaptchaService()
77
78 def test_authenticated_proxy_url_is_preserved_for_flow_requests(self):
79 proxy_url = _compose_proxy_url(
80 "http", "proxy.example.com", "8080", "user", "password"
81 )
82
83 self.assertEqual(proxy_url, "http://user:password@proxy.example.com:8080")
84 self.assertEqual(
85 _redact_proxy_url(proxy_url),
86 "http://***:***@proxy.example.com:8080",
87 )
88
89 @staticmethod
90 def _make_remote_object_result(token: str):
91 return types.SimpleNamespace(
92 type_="object",
93 value=None,
94 deep_serialized_value=types.SimpleNamespace(
95 type_="object",
96 value=[
97 ["ok", {"type": "boolean", "value": True}],
98 ["token", {"type": "string", "value": token}],
99 ],
100 ),
101 )
102
103 async def test_tab_evaluate_normalizes_deep_serialized_remote_object(self):
104 tab = _FakeTab(self._make_remote_object_result("token-123"))
105
106 result = await self.service._tab_evaluate(
107 tab,
108 "ignored",
109 label="unit_test_tab_evaluate",
110 await_promise=True,
111 return_by_value=True,
112 )
113
114 self.assertEqual(result, {"ok": True, "token": "token-123"})
115
116 async def test_execute_recaptcha_on_tab_accepts_remote_object_success_result(self):
117 tab = _FakeTab(self._make_remote_object_result("token-xyz"))
118
119 token = await self.service._execute_recaptcha_on_tab(
120 tab, action="IMAGE_GENERATION"
121 )
122
123 self.assertEqual(token, "token-xyz")
124
125 async def test_create_resident_tab_returns_none_when_browser_missing(self):
126 self.service.browser = None
127
128 resident_info = await self.service._create_resident_tab(
129 "slot-1", project_id="project-1"

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected