Compare commits
2 Commits
38aa122f9b
...
fa33bee3e1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fa33bee3e1 | ||
|
|
acc4664409 |
@@ -10,7 +10,7 @@ PROJECT_ROOT = Path(__file__).resolve().parent.parent
|
|||||||
sys.path.insert(0, str(PROJECT_ROOT))
|
sys.path.insert(0, str(PROJECT_ROOT))
|
||||||
|
|
||||||
from playwright.sync_api import sync_playwright
|
from playwright.sync_api import sync_playwright
|
||||||
from utils.auth import login, logout, close_session
|
from utils.auth import login, logout
|
||||||
import os
|
import os
|
||||||
|
|
||||||
# Load environment variables
|
# Load environment variables
|
||||||
@@ -31,11 +31,19 @@ print(f" Username: {os.getenv('ERP_USERNAME')}")
|
|||||||
print(f" Headless: {os.getenv('ERP_HEADLESS')}")
|
print(f" Headless: {os.getenv('ERP_HEADLESS')}")
|
||||||
print(f" Ignore HTTPS Errors: {os.getenv('ERP_IGNORE_HTTPS_ERRORS')}")
|
print(f" Ignore HTTPS Errors: {os.getenv('ERP_IGNORE_HTTPS_ERRORS')}")
|
||||||
|
|
||||||
|
# Construct complete login URL
|
||||||
|
url = f"{os.getenv('ERP_URL').rstrip('/')}/yonbip/resources/uap/rbac/login/main/index.html"
|
||||||
|
|
||||||
try:
|
try:
|
||||||
with sync_playwright() as p:
|
with sync_playwright() as p:
|
||||||
print("\n[1/5] Starting browser...")
|
print("\n[1/5] Starting browser...")
|
||||||
browser, context, page, main_frame = login(
|
browser, context, page, main_frame = login(
|
||||||
playwright=p,
|
playwright=p,
|
||||||
|
username=os.getenv('ERP_USERNAME'),
|
||||||
|
password=os.getenv('ERP_PASSWORD'),
|
||||||
|
url=url,
|
||||||
|
headless=os.getenv('ERP_HEADLESS', 'false').lower() in ('true', '1', 'yes'),
|
||||||
|
ignore_https_errors=os.getenv('ERP_IGNORE_HTTPS_ERRORS', 'true').lower() in ('true', '1', 'yes'),
|
||||||
verbose=True
|
verbose=True
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -66,7 +74,8 @@ try:
|
|||||||
|
|
||||||
# Close browser
|
# Close browser
|
||||||
print("\n[CLEANUP] Closing browser session...")
|
print("\n[CLEANUP] Closing browser session...")
|
||||||
close_session(browser, context)
|
context.close()
|
||||||
|
browser.close()
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"\n[ERROR] Login/logout test failed!")
|
print(f"\n[ERROR] Login/logout test failed!")
|
||||||
|
|||||||
@@ -124,21 +124,3 @@ def logout(main_frame: Frame, verbose: bool = True) -> None:
|
|||||||
print("Confirmation dialog not found, may have auto-logged out")
|
print("Confirmation dialog not found, may have auto-logged out")
|
||||||
|
|
||||||
time.sleep(2) # Wait for logout to complete
|
time.sleep(2) # Wait for logout to complete
|
||||||
|
|
||||||
|
|
||||||
def close_session(browser: Browser, context: BrowserContext) -> None:
|
|
||||||
"""
|
|
||||||
Close browser session
|
|
||||||
|
|
||||||
Args:
|
|
||||||
browser: Browser instance
|
|
||||||
context: Browser context
|
|
||||||
"""
|
|
||||||
# Check if auto-close browser is enabled
|
|
||||||
auto_close = os.getenv("ERP_AUTO_CLOSE_BROWSER", "true").lower() in ("true", "1", "yes")
|
|
||||||
|
|
||||||
if auto_close:
|
|
||||||
context.close()
|
|
||||||
browser.close()
|
|
||||||
else:
|
|
||||||
print("Note: Browser not auto-closed (ERP_AUTO_CLOSE_BROWSER=false)")
|
|
||||||
|
|||||||
Reference in New Issue
Block a user