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

+68
View File
@@ -0,0 +1,68 @@
"""Unit tests for Planner left-nav helpers."""
from __future__ import annotations
from unittest.mock import MagicMock
from selenium.webdriver.common.by import By
from onedrive_planner import (
_left_nav_pane_collapsed,
_my_plans_nav_visible,
)
def _nav_toggle(*, expanded: str = "false", displayed: bool = True):
btn = MagicMock()
btn.is_displayed.return_value = displayed
btn.get_attribute.side_effect = lambda name: expanded if name == "aria-expanded" else ""
return btn
def _nav_link(*, displayed: bool = True, enabled: bool = True):
el = MagicMock()
el.is_displayed.return_value = displayed
el.is_enabled.return_value = enabled
return el
def _mock_driver(*, elements: dict):
drv = MagicMock()
drv.find_elements.side_effect = lambda by, sel: elements.get((by, sel), [])
return drv
class TestNavHelpers:
def test_collapsed_when_aria_expanded_false(self):
drv = _mock_driver(
elements={
(By.XPATH, "//button[@aria-label='Left navigation pane']"): [
_nav_toggle(expanded="false")
],
}
)
assert _left_nav_pane_collapsed(drv)
def test_not_collapsed_when_aria_expanded_true(self):
drv = _mock_driver(
elements={
(By.XPATH, "//button[@aria-label='Left navigation pane']"): [
_nav_toggle(expanded="true")
],
}
)
assert not _left_nav_pane_collapsed(drv)
def test_my_plans_visible(self):
drv = _mock_driver(
elements={
(
By.XPATH,
"//*[self::span or self::div][normalize-space()='My plans']",
): [_nav_link()],
}
)
assert _my_plans_nav_visible(drv)
def test_my_plans_hidden(self):
drv = _mock_driver(elements={})
assert not _my_plans_nav_visible(drv)