import unittest import chatgpt_signup class PasskeyEnrollmentTests(unittest.TestCase): def test_detects_passkey_enrollment_url(self): self.assertTrue( chatgpt_signup._is_passkey_enrollment_url( "https://auth.openai.com/create-account-enroll-passkey" ) ) def test_does_not_treat_about_you_as_passkey_enrollment(self): self.assertFalse( chatgpt_signup._is_passkey_enrollment_url( "https://auth.openai.com/about-you" ) ) def test_passkey_handler_clicks_skip_button(self): class _FakeLocator: def __init__(self, page, selector): self.page = page self.selector = selector def count(self): return 1 if "Skip for now" in self.selector else 0 def nth(self, _idx): return self def is_visible(self): return True def is_enabled(self): return True def click(self, **_kwargs): self.page.clicked.append(self.selector) self.page.url = "https://chatgpt.com/" class _FakePage: def __init__(self): self.url = "https://auth.openai.com/create-account-enroll-passkey" self.clicked = [] def locator(self, selector): return _FakeLocator(self, selector) page = _FakePage() handled = chatgpt_signup._handle_passkey_enrollment_if_present( page, log=lambda *_: None, timeout_sec=1, ) self.assertTrue(handled) self.assertTrue(page.clicked) self.assertEqual(page.url, "https://chatgpt.com/") if __name__ == "__main__": unittest.main()