Skip to content

Commit

Permalink
Bump robotframework from 6.1.1 to 7.0 (#387)
Browse files Browse the repository at this point in the history
* Bump robotframework from 6.1.1 to 7.0

Bumps [robotframework](https://github.com/robotframework/robotframework) from 6.1.1 to 7.0.
- [Release notes](https://github.com/robotframework/robotframework/releases)
- [Commits](robotframework/robotframework@v6.1.1...v7.0)

---
updated-dependencies:
- dependency-name: robotframework
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Add robotidy.toml and update GUITests.robot

* update GUITestsEdge.robot

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Neil Howell <neil.howell@accruent.com>
  • Loading branch information
dependabot[bot] and neiljhowell committed Jan 12, 2024
1 parent 0739949 commit 8455546
Show file tree
Hide file tree
Showing 4 changed files with 341 additions and 279 deletions.
2 changes: 1 addition & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
robotframework==6.1.1
robotframework==7.0
robotframework-requests==0.9.6
robotframework-seleniumlibrary==6.2.0
robotframework-sudslibrary-aljcalandra==1.1.4
Expand Down
52 changes: 52 additions & 0 deletions robotidy.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
[tool.robotidy]
overwrite = true
diff = false
verbose = false
separator = "space"
spacecount = 2
indent = 4
lineseparator = "native"
skip_gitignore = false
ignore_git_dir = false
line-length = 120
transform = [
"AddMissingEnd",
"InlineIf",
"MergeAndOrderSections",
"NormalizeAssignments",
"NormalizeComments",
"NormalizeNewLines",
"NormalizeSectionHeaderName",
"NormalizeSettingName",
"NormalizeTags",
"OrderSettings",
"OrderSettingsSection",
"RemoveEmptySettings",
"RenameKeywords",
"RenameTestCases",
"ReplaceBreakContinue",
"ReplaceReturns",
"ReplaceRunKeywordIf",
"AlignSettingsSection",
"AlignVariablesSection",
"AlignKeywordsSection",
"AlignTestCasesSection",
"DiscardEmptySections",
"SplitTooLongLine",
"SmartSortKeywords"

]
configure = [
"AlignSettingsSection: fixed_width = 28",
"AlignSettingsSection: up_to_column=4",
"AlignVariablesSection: fixed_width = 24",
"NormalizeNewLines:section_lines=2",
"NormalizeAssignments:equal_sign_type=remove",
"SplitTooLongLine:split_on_every_arg=False",
"RenameTestCases:capitalize_each_word=True",
"AlignKeywordsSection:widths=24,28,28,28",
"AlignTestCasesSection:widths=24,28,28,28",
"NormalizeNewLines:consecutive_lines=0",
"NormalizeTags:normalize_case=False",
"SmartSortKeywords:enabled=True"
]
280 changes: 138 additions & 142 deletions test/GUI/GUITests.robot
Original file line number Diff line number Diff line change
@@ -1,174 +1,170 @@
*** Settings ***
Documentation Zoomba GUI Library Tests
Library ../../src/Zoomba/GUILibrary.py
Library Collections
Documentation Zoomba GUI Library Tests
Library ../../src/Zoomba/GUILibrary.py
Library Collections
Test Teardown Close All Browsers


*** Variables ***
${browser} chrome
${browser} chrome
${GITHUB_SEARCH} //input[@id='query-builder-test']
${GITHUB_README} //span[contains(text(),'README')]
${RF_LINK} //a[@href='/robotframework/robotframework']
${ALT_URL1} http://www.google.com
${TEXT_AREA} //textarea[1]
${CHECK_DIV} //div[@id='res']

*** Keywords ***
Test Case Setup
[Arguments] ${url}=https://github.com/ ${browser}=${browser}
Open Browser ${url} browser=${browser}
Maximize Browser Window
Wait For Page to Load
Set Selenium Speed 0.05s

*** Test Cases ***
Wait for Keywords Test
[Teardown] Close All Browsers
Wait For Keywords Test
Test Case Setup
Press Keys ${None} /
wait for and input text //input[@id='query-builder-test'] robotframework
press keys //input[@id='query-builder-test'] RETURN
wait for and click element //a[@href='/robotframework/robotframework']
wait until page contains element //div[@id='readme']

Wait for Keywords Test With Password
[Teardown] Close All Browsers
Press Keys ${None} /
Wait For And Input Text ${GITHUB_SEARCH} robotframework
Press Keys ${GITHUB_SEARCH} RETURN
Wait For And Click Element ${RF_LINK}
Wait Until Page Contains Element ${GITHUB_README}

Wait For Keywords Test With Password
Test Case Setup
Press Keys ${None} /
wait for and input password //input[@id='query-builder-test'] robotframework
press keys //input[@id='query-builder-test'] RETURN
wait for and click element //a[@href='/robotframework/robotframework']
wait until page contains element //div[@id='readme']

Element value should be equal and not equal Test
[Teardown] Close All Browsers
Test Case Setup http://www.google.com
element value should be equal btnK Google Search
element value should not be equal btnK Not Google Search
Press Keys ${None} /
Wait For And Input Password ${GITHUB_SEARCH} robotframework
Press Keys ${GITHUB_SEARCH} RETURN
Wait For And Click Element ${RF_LINK}
Wait Until Page Contains Element ${GITHUB_README}

Element Value Should Be Equal And Not Equal Test
Test Case Setup ${ALT_URL1}
Element Value Should Be Equal btnK Google Search
Element Value Should Not Be Equal btnK Not Google Search

Save Selenium Screenshot Test
[Teardown] Close All Browsers
Test Case Setup http://www.google.com
${file1}= Save Selenium Screenshot
${file2}= Save Selenium Screenshot
Should Not Be Equal ${file1} ${file2}
Should Match Regexp ${file1} .selenium-screenshot-\\d{10}.\\d{0,8}-\\d.png

Iframe keywords Test
[Teardown] Close All Browsers
Test Case Setup https://www.w3schools.com/html/html_iframe.asp
Page should not contain element //a[@href='default.asp'][@class='active']
wait for and select frame //iframe[@src='default.asp']
wait until page contains element //a[@href='default.asp'][@class='active']
Unselect frame
Page should not contain element //a[@href='default.asp'][@class='active']

Nested Iframe keyword Test
[Teardown] Close All Browsers
Test Case Setup https://www.quackit.com/html/tags/html_iframe_tag.cfm
Select Nested Frame //iframe[@name='result4'] //iframe[@src='/html/tags/html_iframe_tag_example.cfm']

Mouse over Keywords Test
[Teardown] Close All Browsers
Test Case Setup https://jquery.com/
wait for and mouse over //a[contains(text(),'Download')]
wait for and mouse over and click //a[contains(text(),'Browser Support')]
wait until page contains Current Active Support
Test Case Setup ${ALT_URL1}
${file1} Save Selenium Screenshot
${file2} Save Selenium Screenshot
Should Not Be Equal ${file1} ${file2}
Should Match Regexp ${file1} .selenium-screenshot-\\d{10}.\\d{0,8}-\\d.png

Iframe Keywords Test
Set Test Variable ${CHECK_ELEMENT} //a[@href='default.asp'][@class='active']
Test Case Setup https://www.w3schools.com/html/html_iframe.asp
Page Should Not Contain Element ${CHECK_ELEMENT}
Wait For And Select Frame //iframe[@src='default.asp']
Wait Until Page Contains Element ${CHECK_ELEMENT}
Unselect Frame
Page Should Not Contain Element ${CHECK_ELEMENT}

Nested Iframe Keyword Test
Test Case Setup https://www.quackit.com/html/tags/html_iframe_tag.cfm
Select Nested Frame //iframe[@name='result4'] //iframe[@src='/html/tags/html_iframe_tag_example.cfm']

Mouse Over Keywords Test
Test Case Setup https://jquery.com/
Wait For And Mouse Over //a[contains(text(),'Download')]
Wait For And Mouse Over And Click //a[contains(text(),'Browser Support')]
Wait Until Page Contains Current Active Support

Wait Until Javascript Completes Test
[Teardown] Close All Browsers
Test Case Setup https://jquery.com/
wait until page contains element //a[@title='jQuery']
wait until javascript is complete
title should be jQuery
Test Case Setup https://jquery.com/
Wait Until Page Contains Element //a[@title='jQuery']
Wait Until Javascript Is Complete
Title Should Be jQuery

Web Elements Text Test
[Teardown] Close All Browsers
Test Case Setup http://www.google.com
wait for and input text //textarea[1] robot framework
press keys //textarea[1] RETURN
wait until element is visible //div[@id='res']
${resultsLinksList}= Get Webelements //div[@id='res']
${linksTextList}= Get Text From Web Elements List ${resultsLinksList}
should contain ${linksTextList}[0] Robot Framework
Test Case Setup ${ALT_URL1}
Wait For And Input Text ${TEXT_AREA} robot framework
Press Keys ${TEXT_AREA} RETURN
Wait Until Element Is Visible ${CHECK_DIV}
${resultsLinksList} Get Webelements ${CHECK_DIV}
${linksTextList} Get Text From Web Elements List ${resultsLinksList}
Should Contain ${linksTextList}[0] Robot Framework

Web Elements Vertical Position Test
[Teardown] Close All Browsers
Test Case Setup http://www.google.com
wait for and input text //textarea[1] robot framework
press keys //textarea[1] RETURN
wait until element is visible //div[@id='res']
${resultsLinksList}= Get Webelements //div[@id='res']
${linksPositionList}= Get Vertical Position From Web Elements List ${resultsLinksList}
Should Be True ${linksPositionList}[0] > ${170}

Create Dictionary from Lists Test
${testDict1}= create dictionary Name=User1 ID=01 Phone=51212345678
${testDict2}= create dictionary Name=User1 ID=02 Phone=51254515212
${keysList}= create list Name ID Phone
${valuesList}= create list User1 01 51212345678
${badValuesList}= create list User1 02 51254515212 More Stuff
${newDict1}= create dictionary from keys and values lists ${keysList} ${valuesList}
should be equal ${testDict1} ${newDict1}
${badValuesDict}= create dictionary from keys and values lists ${keysList} ${badValuesList}
should be equal ${testDict2} ${badValuesDict}
Test Case Setup ${ALT_URL1}
Wait For And Input Text ${TEXT_AREA} robot framework
Press Keys ${TEXT_AREA} RETURN
Wait Until Element Is Visible ${CHECK_DIV}
${resultsLinksList} Get Webelements ${CHECK_DIV}
${linksPositionList} Get Vertical Position From Web Elements List ${resultsLinksList}
Should Be True ${linksPositionList}[0] > ${170}

Create Dictionary From Lists Test
${testDict1} Create Dictionary Name=User1 ID=01 Phone=51212345678
${testDict2} Create Dictionary Name=User1 ID=02 Phone=51254515212
${keysList} Create List Name ID Phone
${valuesList} Create List User1 01 51212345678
${badValuesList} Create List User1 02 51254515212 More Stuff
${newDict1} Create Dictionary From Keys And Values Lists ${keysList} ${valuesList}
Should Be Equal ${testDict1} ${newDict1}
${badValuesDict} Create Dictionary From Keys And Values Lists ${keysList} ${badValuesList}
Should Be Equal ${testDict2} ${badValuesDict}

Truncate String Test
${reallyLongTestString}= set variable This is a long String, which should be truncated here, unless it's the original string.
${truncatedTestString}= set variable This is a long String, which should be truncated here
${actualTruncatedString}= truncate string ${reallyLongTestString} ${53}
should be equal ${truncatedTestString} ${actualTruncatedString}
${actualTruncatedString2}= truncate string ${reallyLongTestString} ${150}
should be equal ${reallyLongTestString} ${actualTruncatedString2}

Scroll To Bottom of Page Test
[Teardown] Close All Browsers
Test Case Setup http://www.google.com
wait for and input text //textarea[1] robot framework
press keys //textarea[1] RETURN
wait until element is visible //div[@id='res']
scroll to bottom of page
${position} = Execute Javascript return window.pageYOffset
Should Be True ${position} > 700
${reallyLongTestString} Set Variable
... This is a long String, which should be truncated here, unless it's the original string.
${truncatedTestString} Set Variable This is a long String, which should be truncated here
${actualTruncatedString} Truncate String ${reallyLongTestString} ${53}
Should Be Equal ${truncatedTestString} ${actualTruncatedString}
${actualTruncatedString2} Truncate String ${reallyLongTestString} ${150}
Should Be Equal ${reallyLongTestString} ${actualTruncatedString2}

Scroll To Bottom Of Page Test
Test Case Setup ${ALT_URL1}
Wait For And Input Text ${TEXT_AREA} robot framework
Press Keys ${TEXT_AREA} RETURN
Wait Until Element Is Visible ${CHECK_DIV}
Scroll To Bottom Of Page
${position} Execute Javascript return window.pageYOffset
Should Be True ${position} > 700

Wait Until Window Tests
[Teardown] Close All Browsers
Test Case Setup https://www.quackit.com/html/codes/html_popup_window_code.cfm
Wait For And Select Frame //iframe[@name='result1']
Click Element //a[contains(text(),'Open a popup window')]
Wait Until Window Opens Popup Example 10
Wait For and Select Window Popup Example 10
Test Case Setup https://www.quackit.com/html/codes/html_popup_window_code.cfm
Wait For And Select Frame //iframe[@name='result1']
Click Element //a[contains(text(),'Open a popup window')]
Wait Until Window Opens Popup Example 10
Wait For And Select Window Popup Example 10

Wait Until Element Contains Value
[Teardown] Close All Browsers
Test Case Setup http://www.google.com
Input Text //textarea[1] abc123
Wait Until Element Contains Value //textarea[1] abc123
Test Case Setup ${ALT_URL1}
Input Text ${TEXT_AREA} abc123
Wait Until Element Contains Value ${TEXT_AREA} abc123

Get Element CSS Attribute Value
[Teardown] Close All Browsers
Test Case Setup https://www.w3schools.com/html/html_examples.asp
${value}= Get Element CSS Attribute Value //div[@id='googleSearch'] display
Should Be Equal ${value} block
Test Case Setup https://www.w3schools.com/html/html_examples.asp
${value} Get Element CSS Attribute Value //div[@id='googleSearch'] display
Should Be Equal ${value} block

Element CSS Attribute Value Should Be
[Teardown] Close All Browsers
Test Case Setup https://www.w3schools.com/html/html_examples.asp
Element CSS Attribute Value Should Be //div[@id='googleSearch'] display block
Test Case Setup https://www.w3schools.com/html/html_examples.asp
Element CSS Attribute Value Should Be //div[@id='googleSearch'] display block

Get React List Items Test
[Setup] Test Case Setup https://react-select.com/home
[Teardown] Close All Browsers
${selectXpath}= Set Variable //*[@id="root"]/div/div[2]/div[2]/div/div/div[1]/div[2]
${expectedLabels}= Create List Ocean Blue Purple Red Orange Yellow Green Forest Slate Silver
Wait Until Page Contains Element ${selectXpath}
Scroll Element Into View ${selectXpath}
${actualLabels}= Get React List Labels ${selectXpath}
Lists Should Be Equal ${expectedLabels} ${actualLabels} ignore_order=True
[Setup] Test Case Setup https://react-select.com/home
${selectXpath} Set Variable //*[@id="root"]/div/div[2]/div[2]/div/div/div[1]/div[2]
${expectedLabels} Create List Ocean Blue Purple Red Orange Yellow Green Forest Slate Silver
Wait Until Page Contains Element ${selectXpath}
Scroll Element Into View ${selectXpath}
${actualLabels} Get React List Labels ${selectXpath}
Lists Should Be Equal ${expectedLabels} ${actualLabels} ignore_order=True

Test Mouse Scroll
[Setup] Test Case Setup https://www.bgc.bard.edu/research-forum/articles/292/test-zoom-function-on-object
[Teardown] Close All Browsers
Set Selenium Speed 1s
Scroll Element Into View //body/div[6]/div[1]/div[1]/div[1]/div[2]/div[1]/div[5]/div[1]/div[1]
Mouse Scroll Over Element //body/div[6]/div[1]/div[1]/div[1]/div[2]/div[1]/div[5]/div[1]/div[1] y=-100
Mouse Scroll y=200
[Setup] Test Case Setup https://www.bgc.bard.edu/research-forum/articles/292/test-zoom-function-on-object
Set Test Variable ${MOUSE_SCROLL_CHECK} //body/div[6]/div[1]/div[1]/div[1]/div[2]/div[1]/div[5]/div[1]/div[1]
Set Selenium Speed 1s
Scroll Element Into View ${MOUSE_SCROLL_CHECK}
Mouse Scroll Over Element ${MOUSE_SCROLL_CHECK} y=-100
Mouse Scroll y=200

Test Disabled Elements
[Setup] Test Case Setup https://demos.jquerymobile.com/1.4.5/forms-disabled
[Teardown] Close All Browsers
${list_selection}= Get Selected List Label //select[@id='select-native-5']
List Selection Should Be //select[@id='select-native-5'] ${list_selection}
[Setup] Test Case Setup https://demos.jquerymobile.com/1.4.5/forms-disabled
Set Test Variable ${LIST_CHECK} //select[@id='select-native-5']
${list_selection} Get Selected List Label ${LIST_CHECK}
List Selection Should Be ${LIST_CHECK} ${list_selection}


*** Keywords ***
Test Case Setup
[Arguments] ${url}=https://github.com/ ${browser}=${browser}
Open Browser ${url} browser=${browser}
Maximize Browser Window
Wait For Page To Load
Set Selenium Speed 0.05s
Loading

0 comments on commit 8455546

Please sign in to comment.