ole-qa-framework 3.10.0 → 3.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/lib/ole_qa_framework/VERSION.rb +1 -1
- data/lib/olels/pages/patron_lookup.rb +2 -0
- data/lib/olels/pages/request.rb +78 -0
- data/lib/olels/pages/request_lookup.rb +60 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f8565445abbd1d524b3a5e1208cce2257cbda4b8
|
4
|
+
data.tar.gz: 905ed936b29f6327e68ce250d12c9070c2e528a2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ad948f5811a944cdc2f52223c0b29cdc56e6136c50f24c3a4b718ff8a429fdc6ff48da25b98272d8ecea39e7f507c7e4cd6e63a3092ce440acac37578248285e
|
7
|
+
data.tar.gz: 876ed052aa9764338057d133cc8b45c59ed025b1aaea4fe542c6dba132400f8888a560600441ec24cb2b24cecdee3f0ee69e8e953f4f98bd75ffbf5214255000
|
data/CHANGELOG.md
CHANGED
@@ -53,6 +53,8 @@ module OLE_QA::Framework::OLELS
|
|
53
53
|
function(:copy_by_text) {|which| b.a(:xpath => link_by_text('copy',which)) }
|
54
54
|
# Return the delete link for a given text string in the search results.
|
55
55
|
function(:delete_by_text) {|which| b.a(:xpath => link_by_text('delete',which)) }
|
56
|
+
# Return the 'return value' link for a line containing the given text in the search results.
|
57
|
+
function(:return_by_text) {|which| b.a(:xpath => "//tr[td/div/span[contains(text(),'#{which}')]]/td/div/fieldset/div/div/a[contains(text(),'return value')]")}
|
56
58
|
end
|
57
59
|
|
58
60
|
# Return the XPath to find a link with the given text on a line containing a search result with the given text.
|
@@ -0,0 +1,78 @@
|
|
1
|
+
# Copyright 2005-2013 The Kuali Foundation
|
2
|
+
#
|
3
|
+
# Licensed under the Educational Community License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at:
|
6
|
+
#
|
7
|
+
# http://www.opensource.org/licenses/ecl2.php
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
module OLE_QA::Framework::OLELS
|
16
|
+
# A Request in the OLE Library System.
|
17
|
+
class Request < OLE_QA::Framework::Page
|
18
|
+
def initialize(ole_session)
|
19
|
+
# Direct linking for a new request is not possible, so the URL is for Request_Lookup.
|
20
|
+
url = ole_session.url + 'portal.do?channelTitle=Request&channelUrl='
|
21
|
+
url += ole_session.url + 'ole-kr-krad/lookup?methodToCall=start&dataObjectClassName=org.kuali.ole.deliver.bo.OleDeliverRequestBo&returnLocation='
|
22
|
+
url += ole_session.url + 'portal.do&hideReturnLink=true&showMaintenanceLinks=true'
|
23
|
+
super(ole_session,url)
|
24
|
+
end
|
25
|
+
|
26
|
+
def set_elements
|
27
|
+
super
|
28
|
+
element(:title) {b.h1(:class => 'uif-headerText').span(:class => 'uif-headerText-span')}
|
29
|
+
element(:document_id) {b.div(:data_label => 'Document Number').span(:class => 'uif-readOnlyContent')}
|
30
|
+
element(:initiator_id) {b.div(:data_label => 'Initiator Network Id').span(:class => 'uif-readOnlyContent')}
|
31
|
+
element(:document_status) {b.div(:data_label => 'Document Status').span(:class => 'uif-readOnlyContent')}
|
32
|
+
element(:creation_timestamp) {b.div(:data_label => 'Creation Timestamp').span(:class => 'uif-readOnlyContent')}
|
33
|
+
element(:request_details_toggle) {b.a(:id => 'OleRequestDocument-MaintenanceView-selectRequestBorrower_toggle')}
|
34
|
+
element(:user_type_selector) {b.select_list(:id => 'selectRequestBorrower-MaintenanceView-requestCreators_control')}
|
35
|
+
element(:request_type_selector) {b.select_list(:id => 'selectRequestBorrower-MaintenanceView-requestTypeIds_control')}
|
36
|
+
element(:patron_barcode_field) {b.text_field(:id => 'selectRequestBorrower-MaintenanceView-borrowerBarcodes_control')}
|
37
|
+
element(:patron_barcode_icon) {b.fieldset(:id => 'selectRequestBorrower-MaintenanceView-borrowerBarcodes_fieldset').input(:class => 'uif-actionImage')}
|
38
|
+
element(:patron_name_field) {b.text_field(:id => 'selectRequestBorrower-MaintenanceView-borrowerNames_control')}
|
39
|
+
element(:submit_button) {b.button(:text => /[Ss]ubmit/)}
|
40
|
+
element(:save_button) {b.button(:text => /[Ss]ave/)}
|
41
|
+
element(:back_button) {b.button(:text => /[Bb]ack/)}
|
42
|
+
element(:cancel_button) {b.a(:text => /[Cc]ancel/)}
|
43
|
+
element(:error) {b.li(:class => 'uif-errorMessageItem')}
|
44
|
+
element(:message) {b.li(:class => 'uif-infoMessageItem')}
|
45
|
+
# The following fields only appear after a request type is selected.
|
46
|
+
# (Except request types 'Recall/Delivery Request 1' and 'Recall/Delivery Request 2')
|
47
|
+
element(:item_barcode_field) {b.text_field(:id => /itemId_control/)}
|
48
|
+
element(:item_title_field) {b.text_field(:id => /itemTitle_control/)}
|
49
|
+
element(:item_author_field) {b.text_field(:id => /author_control/)}
|
50
|
+
element(:item_location_field) {b.text_field(:id => /shelvingLocation_control/)}
|
51
|
+
element(:item_call_number_field) {b.text_field(:id => /callNumber_control/)}
|
52
|
+
element(:item_copy_number_field) {b.text_field(:id => /copyNumber_control/)}
|
53
|
+
element(:patron_queue_position_field) {b.text_field(:id => /borrowerQueuePosition_control/)}
|
54
|
+
element(:create_date_field) {b.text_field(:id => /createDate_control/)}
|
55
|
+
element(:expiry_date_field) {b.text_field(:id => /expirationDate_control/)}
|
56
|
+
# (Not present on request types 'Copy Request' or 'In Transit Request')
|
57
|
+
element(:pickup_location_selector) {b.select_list(:id => /pickupLocation_control/)}
|
58
|
+
element(:pickup_location_icon) {b.fieldset(:id => /pickupLocation_fieldset/).input(:class => 'uif-actionImage', :index => 0)}
|
59
|
+
# Request type-specific fields.
|
60
|
+
# Recall
|
61
|
+
element(:recall_notice_date) {b.div(:id => 'recallRequest-recallNoticeSentDate')}
|
62
|
+
# Hold
|
63
|
+
element(:hold_notice_date) {b.span(:id => 'onHoldRequest-onHoldNoticeSentDate_control')}
|
64
|
+
# Copy
|
65
|
+
element(:copy_format_field) {b.text_field(:id => 'copyRequest-copyFormat_control')}
|
66
|
+
element(:copy_pages_field) {b.text_field(:id => 'copyRequest-contentDescription_control')}
|
67
|
+
# In-Transit
|
68
|
+
element(:circulation_location_selector) {b.select_list(:id => 'inTransitReques-circulationLocationId_control')}
|
69
|
+
element(:checkin_note_field) {b.text_field(:id => 'inTransitRequest-checkInNote_control')}
|
70
|
+
end
|
71
|
+
|
72
|
+
def wait_for_elements
|
73
|
+
super
|
74
|
+
@wait_on << :document_id << :document_status
|
75
|
+
@wait_on << :request_details_toggle
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
# Copyright 2005-2013 The Kuali Foundation
|
2
|
+
#
|
3
|
+
# Licensed under the Educational Community License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at:
|
6
|
+
#
|
7
|
+
# http://www.opensource.org/licenses/ecl2.php
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
module OLE_QA::Framework::OLELS
|
16
|
+
# The request lookup screen in the OLE Library System.
|
17
|
+
class Request_Lookup < OLE_QA::Framework::OLELS::Lookup
|
18
|
+
def initialize(ole_session)
|
19
|
+
url = ole_session.url + 'portal.do?channelTitle=Request&channelUrl='
|
20
|
+
url += ole_session.url + 'ole-kr-krad/lookup?methodToCall=start&dataObjectClassName=org.kuali.ole.deliver.bo.OleDeliverRequestBo&returnLocation='
|
21
|
+
url += ole_session.url + 'portal.do&hideReturnLink=true&showMaintenanceLinks=true'
|
22
|
+
super(ole_session,url)
|
23
|
+
end
|
24
|
+
|
25
|
+
def set_elements
|
26
|
+
super
|
27
|
+
element(:patron_barcode_field) {b.text_field(:id => 'olePatronBarcode_control')}
|
28
|
+
element(:patron_barcode_icon) {b.fieldset(:id => 'olePatronBarcode_fieldset').input(:class => 'uif-actionImage')}
|
29
|
+
element(:patron_first_name_field) {b.text_field(:id => 'olePatronFName_control')}
|
30
|
+
element(:patron_last_name_field) {b.text_field(:id => 'olePatronLName_control')}
|
31
|
+
element(:item_barcode_field) {b.text_field(:id => 'itemId_control')}
|
32
|
+
element(:item_barcode_icon) {b.fieldset(:id => 'itemId_fieldset').input(:class => 'uif-actionImage')}
|
33
|
+
element(:item_title_field) {b.text_field(:id => 'title_control')}
|
34
|
+
element(:search_button) {b.button(:id => 'searchReqBtn')}
|
35
|
+
element(:clear_button) {b.button(:id => 'clearReqBtn')}
|
36
|
+
element(:cancel_button) {b.button(:id => 'cancelReqBtn')}
|
37
|
+
element(:message) {b.li(:class => 'uif-infoMessageItem')}
|
38
|
+
end
|
39
|
+
|
40
|
+
def wait_for_elements
|
41
|
+
super
|
42
|
+
@wait_on << :patron_barcode_field << :patron_first_name_field << :patron_last_name_field
|
43
|
+
@wait_on << :item_barcode_field << :item_title_field
|
44
|
+
end
|
45
|
+
|
46
|
+
def set_functions
|
47
|
+
super
|
48
|
+
# Return the span element containing the given text, if it exists in the search results.
|
49
|
+
function(:text_in_results) {|which| b.span(:xpath => "//td/div/span[contains(text(),'#{which}')]")}
|
50
|
+
# Return whether the given text is found in the search results.
|
51
|
+
function(:text_in_results?) {|which| text_in_results(which).present?}
|
52
|
+
# Return the cancel request link for a line containing the given text in the search results.
|
53
|
+
function(:cancel_by_text) {|which| b.a(:xpath => "//tr/td[div/span[contains(text(),'#{which}')]]/preceding-sibling::td/div/fieldset/div/div/a[contains(text(),'cancel')]")}
|
54
|
+
# Return the edit request link for a line containing the given text in the search results.
|
55
|
+
function(:edit_by_text) {|which| b.a(:xpath => "//tr/td[div/span[contains(text(),'#{which}')]]/preceding-sibling::td/div/fieldset/div/div/a[contains(text(),'edit')]")}
|
56
|
+
# Return the text of the Queue Position entry for a line containing the given text.
|
57
|
+
function(:position_by_text) {|which| b.span(:xpath => "//tr/td[div/span[contains(text(),'#{which}')]]/preceding-sibling::td/div/span[starts-with(@id,'result-borrowerQueuePosition_line')]").text}
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ole-qa-framework
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.11.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jain Waldrip
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-02-
|
11
|
+
date: 2014-02-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -200,6 +200,8 @@ files:
|
|
200
200
|
- lib/olels/pages/main_menu.rb
|
201
201
|
- lib/olels/pages/patron.rb
|
202
202
|
- lib/olels/pages/patron_lookup.rb
|
203
|
+
- lib/olels/pages/request.rb
|
204
|
+
- lib/olels/pages/request_lookup.rb
|
203
205
|
- lib/olels/pages/return.rb
|
204
206
|
- lib/olels/pages/staff_upload.rb
|
205
207
|
- lib/olels/subobjects/ownership_note.rb
|