Initial kilocode: Kilo.ai token provider with Selenium Firefox + Google OAuth
This commit is contained in:
commit
061eefdb24
17 changed files with 1629 additions and 0 deletions
47
tests/test_registration.py
Normal file
47
tests/test_registration.py
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
import json
|
||||
|
||||
from registration import load_google_accounts, _is_on_kilo
|
||||
import registration as reg
|
||||
|
||||
|
||||
def test_load_google_accounts(tmp_path, monkeypatch):
|
||||
mail_file = tmp_path / "mail.json"
|
||||
accounts = [
|
||||
{"email": "a@example.com", "password": "pass1"},
|
||||
{"email": "b@example.com", "password": "pass2"},
|
||||
]
|
||||
mail_file.write_text(json.dumps(accounts))
|
||||
monkeypatch.setattr(reg, "MAIL_JSON", mail_file)
|
||||
|
||||
result = load_google_accounts()
|
||||
assert len(result) == 2
|
||||
assert result[0]["email"] == "a@example.com"
|
||||
|
||||
|
||||
def test_load_missing_file(tmp_path, monkeypatch):
|
||||
monkeypatch.setattr(reg, "MAIL_JSON", tmp_path / "nope.json")
|
||||
assert load_google_accounts() == []
|
||||
|
||||
|
||||
def test_load_invalid_json(tmp_path, monkeypatch):
|
||||
f = tmp_path / "mail.json"
|
||||
f.write_text("not json")
|
||||
monkeypatch.setattr(reg, "MAIL_JSON", f)
|
||||
assert load_google_accounts() == []
|
||||
|
||||
|
||||
def test_is_on_kilo():
|
||||
assert _is_on_kilo("https://app.kilo.ai/profile") is True
|
||||
assert _is_on_kilo("https://kilo.ai/") is True
|
||||
assert (
|
||||
_is_on_kilo("https://accounts.google.com/?redirect=https://app.kilo.ai")
|
||||
is False
|
||||
)
|
||||
assert _is_on_kilo("https://example.com/kilo.ai") is False
|
||||
|
||||
|
||||
def test_load_not_array(tmp_path, monkeypatch):
|
||||
f = tmp_path / "mail.json"
|
||||
f.write_text('{"email": "a@b.com"}')
|
||||
monkeypatch.setattr(reg, "MAIL_JSON", f)
|
||||
assert load_google_accounts() == []
|
||||
Loading…
Add table
Add a link
Reference in a new issue