Initial commit: MISF VOB download and upload automation

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
lubna-fatimaandClaude Sonnet 4.6 committed 2026-06-16 14:55:29 +05:30
commit c2dec96b1f
43 files changed
+10944

No files matched your search

+64
View File
@@ -0,0 +1,64 @@
"""Unit tests for Microsoft login page detection."""
from __future__ import annotations
from unittest.mock import MagicMock
from selenium.webdriver.common.by import By
from onedrive_planner import (
_email_form_visible,
_needs_microsoft_login,
_password_form_visible,
_planner_session_ready,
)
def _driver(*, url: str = "", elements: dict | None = None):
drv = MagicMock()
drv.current_url = url
elements = elements or {}
def find_elements(by, sel):
key = (by, sel)
return elements.get(key, [])
drv.find_elements.side_effect = find_elements
return drv
def _input(displayed: bool = True):
el = MagicMock()
el.is_displayed.return_value = displayed
return el
class TestLoginHelpers:
def test_password_only_login_detected(self):
drv = _driver(
url="https://login.microsoftonline.com/common/oauth2/v2.0/authorize",
elements={
(By.CSS_SELECTOR, "input[type='password']"): [_input()],
},
)
assert _password_form_visible(drv)
assert not _email_form_visible(drv)
assert _needs_microsoft_login(drv)
assert not _planner_session_ready(drv)
def test_planner_ready_when_no_login_prompt(self):
drv = _driver(
url="https://planner.cloud.microsoft/webui/mytasks/assignedtome/view/grid",
elements={},
)
assert not _needs_microsoft_login(drv)
assert _planner_session_ready(drv)
def test_planner_url_with_password_still_needs_login(self):
drv = _driver(
url="https://planner.cloud.microsoft/webui/mytasks/assignedtome/view/grid",
elements={
(By.CSS_SELECTOR, "input[type='password']"): [_input()],
},
)
assert _needs_microsoft_login(drv)
assert not _planner_session_ready(drv)