Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/CI.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: SeleniumLibrary CI

on: [push, pull_request]
on: workflow_dispatch

jobs:
build:
Expand Down
21 changes: 10 additions & 11 deletions .github/workflows/Select.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
name: Select Configurations
name: Selected Test Configuration Matrix

on: workflow_dispatch
on: [push, pull_request]

jobs:
test_config:
runs-on: ubuntu-latest
continue-on-error: true
strategy:
matrix:
config:
Expand All @@ -17,7 +18,12 @@ jobs:
python-version: 3.12.12
rf-version: 7.3.2
selenium-version: 4.38.0
browser: firefox
browser: chrome
- description: older_rf_version
python-version: 3.11.14
rf-version: 6.1.1
selenium-version: 4.37.0
browser: chrome

steps:
- uses: actions/checkout@v4
Expand All @@ -32,9 +38,8 @@ jobs:
- name: Setup ${{ matrix.config.browser }} browser
uses: browser-actions/setup-chrome@v1
with:
chrome-version: 138
chrome-version: latest
install-dependencies: true
install-chromedriver: true
id: setup-chrome
- run: |
echo Installed chromium version: ${{ steps.setup-chrome.outputs.chrome-version }}
Expand All @@ -61,12 +66,6 @@ jobs:
- name: Install RF ${{ matrix.config.rf-version }}
run: |
pip install -U --pre robotframework==${{ matrix.config.rf-version }}
- name: Install drivers via selenium-manager
run: |
SELENIUM_MANAGER_EXE=$(python -c 'from selenium.webdriver.common.selenium_manager import SeleniumManager; sm=SeleniumManager(); print(f"{str(sm._get_binary())}")')
echo "$SELENIUM_MANAGER_EXE"
echo "WEBDRIVERPATH=$($SELENIUM_MANAGER_EXE --browser chrome --debug | awk '/INFO[[:space:]]Driver path:/ {print $NF;exit}')" >> "$GITHUB_ENV"
echo "$WEBDRIVERPATH"

- name: Run tests under specified config
run: |
Expand Down
20 changes: 13 additions & 7 deletions atest/acceptance/keywords/cookies.robot
Original file line number Diff line number Diff line change
Expand Up @@ -36,15 +36,21 @@ Add Cookie When Secure Is False
Should Be Equal ${cookie.secure} ${False}

Add Cookie When Expiry Is Epoch
Add Cookie Cookie1 value1 expiry=1761755100
# To convert epoch to formatted string
# from time import strftime, localtime
# strftime('%Y-%m-%d %H:%M:%S', localtime(1793247900))
# To update time each September (as Chrome limits cookies to one year expiry date) use
# import datetime
# print (datetime.datetime.strptime("2027-10-29 12:25:00", "%Y-%m-%d %I:%M:%S").timestamp())
Add Cookie Cookie1 value1 expiry=1793247900
${cookie} = Get Cookie Cookie1
${expiry} = Convert Date ${1761755100} exclude_millis=True
${expiry} = Convert Date ${1793247900} exclude_millis=True
Should Be Equal As Strings ${cookie.expiry} ${expiry}

Add Cookie When Expiry Is Human Readable Data&Time
Add Cookie Cookie12 value12 expiry=2025-10-29 12:25:00
Add Cookie Cookie12 value12 expiry=2026-10-29 12:25:00
${cookie} = Get Cookie Cookie12
Should Be Equal As Strings ${cookie.expiry} 2025-10-29 12:25:00
Should Be Equal As Strings ${cookie.expiry} 2026-10-29 12:25:00

Delete Cookie
[Tags] Known Issue Safari
Expand Down Expand Up @@ -114,20 +120,20 @@ Test Get Cookie Keyword Logging
... domain=localhost
... secure=False
... httpOnly=False
... expiry=2025-09-01 *:25:00
... expiry=2026-09-01 *:25:00
... extra={'sameSite': 'Lax'}
${cookie} = Get Cookie far_future

*** Keywords ***
Add Cookies
# To update time each September (as Chrome limits cookies to one year expiry date) use
# import datetime
# print (datetime.datetime.strptime("2025-09-01 12:25:00", "%Y-%m-%d %I:%M:%S").timestamp())
# print (datetime.datetime.strptime("2027-09-01 12:25:00", "%Y-%m-%d %I:%M:%S").timestamp())
Delete All Cookies
Add Cookie test seleniumlibrary
${now} = Get Current Date
${tomorrow_thistime} = Add Time To Date ${now} 1 day
${tomorrow_thistime_datetime} = Convert Date ${tomorrow_thistime} datetime
Set Suite Variable ${tomorrow_thistime_datetime}
Add Cookie another value expiry=${tomorrow_thistime}
Add Cookie far_future timemachine expiry=1756700700 # 2025-09-01 12:25:00
Add Cookie far_future timemachine expiry=1788236700 # 2026-09-01 12:25:00