kuality-coeus 0.0.1
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.
- data/Gemfile +6 -0
- data/Gemfile.lock +47 -0
- data/kuality-coeus.gemspec +13 -0
- data/lib/kuality-coeus/data_objects/committee_document.rb +65 -0
- data/lib/kuality-coeus/data_objects/proposal_development.rb +53 -0
- data/lib/kuality-coeus/data_objects/user.rb +69 -0
- data/lib/kuality-coeus/navigation.rb +3 -0
- data/lib/kuality-coeus/page_objects/000_base_page.rb +35 -0
- data/lib/kuality-coeus/page_objects/central_admin.rb +7 -0
- data/lib/kuality-coeus/page_objects/committee/committee.rb +21 -0
- data/lib/kuality-coeus/page_objects/committee/members.rb +8 -0
- data/lib/kuality-coeus/page_objects/committee_document.rb +16 -0
- data/lib/kuality-coeus/page_objects/financial_entities/my_financial_entities.rb +5 -0
- data/lib/kuality-coeus/page_objects/financial_entities/new_financial_entity.rb +5 -0
- data/lib/kuality-coeus/page_objects/financial_entities/reporter.rb +11 -0
- data/lib/kuality-coeus/page_objects/financial_entities.rb +16 -0
- data/lib/kuality-coeus/page_objects/login.rb +9 -0
- data/lib/kuality-coeus/page_objects/proposal_development/proposal.rb +12 -0
- data/lib/kuality-coeus/page_objects/proposal_development.rb +13 -0
- data/lib/kuality-coeus/page_objects/researcher.rb +7 -0
- data/lib/kuality-coeus/page_objects/unit.rb +9 -0
- data/lib/kuality-coeus.rb +30 -0
- metadata +85 -0
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
GEM
|
2
|
+
remote: http://rubygems.org/
|
3
|
+
specs:
|
4
|
+
addressable (2.3.2)
|
5
|
+
builder (3.0.4)
|
6
|
+
childprocess (0.3.6)
|
7
|
+
ffi (~> 1.0, >= 1.0.6)
|
8
|
+
cucumber (1.2.1)
|
9
|
+
builder (>= 2.1.2)
|
10
|
+
diff-lcs (>= 1.1.3)
|
11
|
+
gherkin (~> 2.11.0)
|
12
|
+
json (>= 1.4.6)
|
13
|
+
diff-lcs (1.1.3)
|
14
|
+
ffi (1.1.5)
|
15
|
+
gherkin (2.11.5)
|
16
|
+
json (>= 1.4.6)
|
17
|
+
json (1.7.5)
|
18
|
+
libwebsocket (0.1.5)
|
19
|
+
addressable
|
20
|
+
multi_json (1.3.7)
|
21
|
+
rspec (2.11.0)
|
22
|
+
rspec-core (~> 2.11.0)
|
23
|
+
rspec-expectations (~> 2.11.0)
|
24
|
+
rspec-mocks (~> 2.11.0)
|
25
|
+
rspec-core (2.11.1)
|
26
|
+
rspec-expectations (2.11.3)
|
27
|
+
diff-lcs (~> 1.1.3)
|
28
|
+
rspec-mocks (2.11.3)
|
29
|
+
rubyzip (0.9.9)
|
30
|
+
selenium-webdriver (2.26.0)
|
31
|
+
childprocess (>= 0.2.5)
|
32
|
+
libwebsocket (~> 0.1.3)
|
33
|
+
multi_json (~> 1.0)
|
34
|
+
rubyzip
|
35
|
+
test-factory (0.1.3)
|
36
|
+
watir-webdriver (>= 0.6.1)
|
37
|
+
watir-webdriver (0.6.1)
|
38
|
+
selenium-webdriver (>= 2.18.0)
|
39
|
+
|
40
|
+
PLATFORMS
|
41
|
+
ruby
|
42
|
+
|
43
|
+
DEPENDENCIES
|
44
|
+
cucumber
|
45
|
+
rspec
|
46
|
+
test-factory (>= 0.1.3)
|
47
|
+
watir-webdriver (>= 0.6.1)
|
@@ -0,0 +1,13 @@
|
|
1
|
+
spec = Gem::Specification.new do |s|
|
2
|
+
s.name = 'kuality-coeus'
|
3
|
+
s.version = '0.0.1'
|
4
|
+
s.summary = %q{rSmart's test framework for BDD testing of Kuali Coeus}
|
5
|
+
s.description = %q{This gem is used for creating test scripts for Kuali Coeus.}
|
6
|
+
s.files = Dir.glob("**/**/**")
|
7
|
+
s.files.reject! { |file_name| file_name =~ /.yml$/ }
|
8
|
+
s.authors = ["Abraham Heward", "Jon Utter"]
|
9
|
+
s.email = %w{"aheward@rsmart.com" "jutter@rsmart.com"}
|
10
|
+
s.homepage = 'https://github.com/rSmart'
|
11
|
+
s.add_dependency 'test-factory', '>= 0.2.0'
|
12
|
+
s.required_ruby_version = '>= 1.9.3'
|
13
|
+
end
|
@@ -0,0 +1,65 @@
|
|
1
|
+
class CommitteeDocumentObject
|
2
|
+
|
3
|
+
include Foundry
|
4
|
+
include DataFactory
|
5
|
+
include StringFactory
|
6
|
+
include Navigation
|
7
|
+
|
8
|
+
attr_accessor :description, :committee_id, :document_id, :status, :committee_name,
|
9
|
+
:home_unit, :min_members_for_quorum, :maximum_protocols,
|
10
|
+
:adv_submission_days, :review_type, :last_updated, :updated_user,
|
11
|
+
:initiator
|
12
|
+
|
13
|
+
def initialize(browser, opts={})
|
14
|
+
@browser = browser
|
15
|
+
|
16
|
+
defaults = {
|
17
|
+
description: random_alphanums,
|
18
|
+
committee_id: random_alphanums,
|
19
|
+
home_unit: "000001",
|
20
|
+
committee_name: random_alphanums,
|
21
|
+
min_members_for_quorum: rand(100).to_s,
|
22
|
+
maximum_protocols: rand(100).to_s,
|
23
|
+
adv_submission_days: rand(365).to_s,
|
24
|
+
review_type: "Full"
|
25
|
+
}
|
26
|
+
set_options(defaults.merge(opts))
|
27
|
+
end
|
28
|
+
|
29
|
+
def create
|
30
|
+
go_to_central_admin
|
31
|
+
on(CentralAdmin).add_irb_committee
|
32
|
+
on Committee do |comm|
|
33
|
+
@document_id=comm.document_id
|
34
|
+
@initiator=comm.initiator
|
35
|
+
@status=comm.status
|
36
|
+
comm.description.set @description
|
37
|
+
comm.committee_id.set @committee_id
|
38
|
+
comm.committee_name.set @committee_name
|
39
|
+
comm.home_unit.set @home_unit
|
40
|
+
comm.min_members_for_quorum.set @min_members_for_quorum
|
41
|
+
comm.maximum_protocols.set @maximum_protocols
|
42
|
+
comm.adv_submission_days
|
43
|
+
comm.save
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
def edit opts={}
|
48
|
+
|
49
|
+
set_options(opts)
|
50
|
+
end
|
51
|
+
|
52
|
+
def submit
|
53
|
+
# TODO: Add conditional navigation here
|
54
|
+
# Currently this method assumes you're already
|
55
|
+
# on the relevant Committee document page.
|
56
|
+
on(Committee).submit
|
57
|
+
end
|
58
|
+
|
59
|
+
def view
|
60
|
+
|
61
|
+
end
|
62
|
+
|
63
|
+
end
|
64
|
+
|
65
|
+
|
@@ -0,0 +1,53 @@
|
|
1
|
+
class ProposalDevelopmentObject
|
2
|
+
|
3
|
+
include Foundry
|
4
|
+
include DataFactory
|
5
|
+
include StringFactory
|
6
|
+
include DateFactory
|
7
|
+
include Navigation
|
8
|
+
|
9
|
+
attr_accessor :description, :type, :lead_unit, :activity_type, :project_title,
|
10
|
+
:sponsor_code, :start_date, :end_date
|
11
|
+
|
12
|
+
def initialize(browser, opts={})
|
13
|
+
@browser = browser
|
14
|
+
defaults = {
|
15
|
+
description: random_alphanums,
|
16
|
+
type: "New",
|
17
|
+
lead_unit: :random,
|
18
|
+
activity_type: :random,
|
19
|
+
project_title: random_alphanums,
|
20
|
+
sponsor_code: "000500",
|
21
|
+
start_date: next_week[:custom].strftime("%m/%d/%Y"),
|
22
|
+
end_date: next_year[:custom].strftime("%m/%d/%Y")
|
23
|
+
}
|
24
|
+
set_options(defaults.merge(opts))
|
25
|
+
end
|
26
|
+
|
27
|
+
def create
|
28
|
+
visit(Researcher).create_proposal
|
29
|
+
on Proposal do |doc|
|
30
|
+
if @lead_unit==:random
|
31
|
+
@lead_unit=doc.lead_unit.select_at_random
|
32
|
+
else
|
33
|
+
doc.lead_unit.select @lead_unit
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
def edit opts={}
|
39
|
+
|
40
|
+
set_options(opts)
|
41
|
+
end
|
42
|
+
|
43
|
+
def view
|
44
|
+
|
45
|
+
end
|
46
|
+
|
47
|
+
def delete
|
48
|
+
|
49
|
+
end
|
50
|
+
|
51
|
+
end
|
52
|
+
|
53
|
+
|
@@ -0,0 +1,69 @@
|
|
1
|
+
class UserObject
|
2
|
+
|
3
|
+
include Foundry
|
4
|
+
include DataFactory
|
5
|
+
|
6
|
+
attr_accessor :name, :username, :email, :password, :role
|
7
|
+
|
8
|
+
def initialize(browser, opts={})
|
9
|
+
@browser = browser
|
10
|
+
defaults = {
|
11
|
+
#name: "Tester Ten",
|
12
|
+
username: "admin",
|
13
|
+
#email: "test10@customer1.herokuapp.com",
|
14
|
+
#password: "test10"
|
15
|
+
}
|
16
|
+
set_options defaults.merge(opts)
|
17
|
+
end
|
18
|
+
|
19
|
+
def edit opts={}
|
20
|
+
|
21
|
+
end
|
22
|
+
|
23
|
+
def sign_in
|
24
|
+
if logged_out?
|
25
|
+
user_login
|
26
|
+
else # Log the current user out, then log in
|
27
|
+
log_out
|
28
|
+
user_login
|
29
|
+
end
|
30
|
+
end
|
31
|
+
alias_method :log_in, :sign_in
|
32
|
+
|
33
|
+
def logged_in?
|
34
|
+
if login_info.present?
|
35
|
+
login_info.text=~/#{@name}/ ? true : false
|
36
|
+
else
|
37
|
+
false
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
def logged_out?
|
42
|
+
!logged_in?
|
43
|
+
end
|
44
|
+
|
45
|
+
def log_out
|
46
|
+
s_o.click if s_o.present?
|
47
|
+
end
|
48
|
+
alias_method :sign_out, :log_out
|
49
|
+
|
50
|
+
#========
|
51
|
+
private
|
52
|
+
#========
|
53
|
+
|
54
|
+
def user_login
|
55
|
+
visit Login do |log_in|
|
56
|
+
log_in.username.set @name
|
57
|
+
log_in.login
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
def s_o
|
62
|
+
@browser.button(value: "Logout")
|
63
|
+
end
|
64
|
+
|
65
|
+
def login_info
|
66
|
+
@browser.div(id: "login-info")
|
67
|
+
end
|
68
|
+
|
69
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
class BasePage < PageFactory
|
2
|
+
|
3
|
+
class << self
|
4
|
+
|
5
|
+
def frame_element
|
6
|
+
element(:frm) { |b| b.frame(id: "iframeportlet") }
|
7
|
+
end
|
8
|
+
|
9
|
+
def document_header_elements
|
10
|
+
element(:headerinfo_table) { |b| b.div(class: "headerbox").table(class: "headerinfo") }
|
11
|
+
|
12
|
+
value(:document_id) { |p| p.headerinfo_table[0][1].text }
|
13
|
+
alias_method :doc_nbr, :document_id
|
14
|
+
value(:status) { |p| p.headerinfo_table[0][3].text }
|
15
|
+
value(:initiator) { |p| p.headerinfo_table[1][1].text }
|
16
|
+
value(:last_updated) {|p| p.headerinfo_table[1][3].text }
|
17
|
+
alias_method :created, :last_updated
|
18
|
+
value(:committee_id) { |p| p.headerinfo_table[2][1].text }
|
19
|
+
alias_method :sponsor_name, :committee_id
|
20
|
+
value(:committee_name) { |p| p.headerinfo_table[2][3].text }
|
21
|
+
alias_method :pi, :committee_name
|
22
|
+
end
|
23
|
+
|
24
|
+
def global_buttons
|
25
|
+
action(:expand_all) { |b| b.image(name: "methodToCall.showAllTabs").click } # TODO: Think about moving this into its own element group
|
26
|
+
action(:submit) { |b| b.image(class: "globalbuttons", title: "submit").click }
|
27
|
+
action(:save) { |b| b.image(class: "globalbuttons", title: "save").click }
|
28
|
+
action(:blanket_approve) { |b| b.image(class: "globalbuttons", title: "blanket approve").click }
|
29
|
+
action(:close) { |b| b.image(class: "globalbuttons", title: "close").click }
|
30
|
+
action(:cancel) { |b| b.image(class: "globalbuttons", title: "cancel").click }
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
class Committee < CommitteeDocument
|
2
|
+
|
3
|
+
document_header_elements
|
4
|
+
committee_header_elements
|
5
|
+
|
6
|
+
element(:description) { |b| b.frm.text_field(id: "document.documentHeader.documentDescription") }
|
7
|
+
element(:committee_id) { |b| b.frm.text_field(id: "document.committeeList[0].committeeId") }
|
8
|
+
element(:committee_name) { |b| b.frm.text_field(id: "document.committeeList[0].committeeName") }
|
9
|
+
element(:home_unit) { |b| b.frm.text_field(id: "document.committeeList[0].homeUnitNumber") }
|
10
|
+
element(:min_members_for_quorum) { |b| b.frm.text_field(id: "document.committeeList[0].minimumMembersRequired") }
|
11
|
+
element(:maximum_protocols) { |b| b.frm.text_field(id: "document.committeeList[0].maxProtocols") }
|
12
|
+
element(:adv_submission_days) { |b| b.frm.text_field(id: "document.committeeList[0].advancedSubmissionDaysRequired") }
|
13
|
+
element(:review_type) { |b| b.frm.select(id: "document.committeeList[0].reviewTypeCode") }
|
14
|
+
value(:last_updated) { |p| p.com_table.row(text: /Last Updated:/).cell(index: -1).text }
|
15
|
+
value(:updated_user) { |p| p.com_table.row(text: /Updated User:/).cell(index: -1).text }
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
element(:com_table) { |b| b.frm.div(id: "tab-Committee-div").table }
|
20
|
+
|
21
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
class Members < CommitteeDocument
|
2
|
+
|
3
|
+
action(:employee_search) { |b| b.frm.image(name: "methodToCall.performLookup.(!!org.kuali.kra.bo.KcPerson!!).(((personId:committeeHelper.newCommitteeMembership.personId,fullName:committeeHelper.newCommitteeMembership.personName))).((``)).((<>)).(([])).((**)).((^^)).((&&)).((//)).((~~)).(::::;;::::).anchor").click }
|
4
|
+
action(:non_employee_search) { |b| b.frm.image(name: "methodToCall.performLookup.(!!org.kuali.kra.bo.NonOrganizationalRolodex!!).(((rolodexId:committeeHelper.newCommitteeMembership.rolodexId,fullName:committeeHelper.newCommitteeMembership.personName))).((``)).((<>)).(([])).((**)).((^^)).((&&)).((//)).((~~)).(::::;;::::).anchor").click }
|
5
|
+
action(:clear) { |b| b.frm.image(name: "methodToCall.clearCommitteeMembership").click }
|
6
|
+
action(:add_member) { |b| b.frm.image(name: "methodToCall.addCommitteeMembership").click }
|
7
|
+
|
8
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
class CommitteeDocument < BasePage
|
2
|
+
|
3
|
+
frame_element
|
4
|
+
global_buttons
|
5
|
+
|
6
|
+
class << self
|
7
|
+
|
8
|
+
def committee_header_elements
|
9
|
+
element(:committee) { |b| b.frm.button(value: "Committee") }
|
10
|
+
element(:members) { |b| b.frm.button(value: "Members") }
|
11
|
+
element(:schedule) { |b| b.frm.button(value: "Schedule") }
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
|
16
|
+
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
class Reporter < FinancialEntities
|
2
|
+
|
3
|
+
financial_entities_tabs
|
4
|
+
|
5
|
+
element(:contact_info) { |b| b.frm.table(id: "response-table").table(class: "tab") }
|
6
|
+
element(:full_name) { |p| p.contact_info[0][1].text }
|
7
|
+
|
8
|
+
element(:unit_number) { |b| b.frm.text_field(id: "financialEntityHelper.newFinancialEntityReporterUnit.unitNumber") }
|
9
|
+
|
10
|
+
|
11
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
class FinancialEntities < BasePage
|
2
|
+
|
3
|
+
frame_element
|
4
|
+
global_buttons
|
5
|
+
|
6
|
+
class << self
|
7
|
+
|
8
|
+
def financial_entities_tabs
|
9
|
+
action(:reporter) { |b| b.frm.button(value: "Reporter").click }
|
10
|
+
action(:new_financial_entity) { |b| b.frm.button(value: "New Financial Entity").click }
|
11
|
+
action(:my_financial_entities) { |b| b.frm.button(value: "My Financial Entities").click }
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
|
16
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
class Proposal < ProposalDevelopmentDocument
|
2
|
+
|
3
|
+
element(:description) { |b| b.frm.text_field(id: "document.documentHeader.documentDescription") }
|
4
|
+
element(:sponsor_code) { |b| b.frm.text_field(id: "document.developmentProposalList[0].sponsorCode") }
|
5
|
+
element(:proposal_type) { |b| b.frm.select(id: "document.developmentProposalList[0].proposalTypeCode") }
|
6
|
+
element(:lead_unit) { |b| b.frm.select(id: "document.developmentProposalList[0].ownedByUnitNumber") }
|
7
|
+
element(:project_start_date) { |b| b.frm.text_field(id: "document.developmentProposalList[0].requestedStartDateInitial") }
|
8
|
+
element(:project_end_date) { |b| b.frm.text_field(id: "document.developmentProposalList[0].requestedEndDateInitial") }
|
9
|
+
element(:activity_type) { |b| b.frm.select(id: "document.developmentProposalList[0].activityTypeCode") }
|
10
|
+
element(:project_title) { |b| b.frm.text_field(id: "document.developmentProposalList[0].title") }
|
11
|
+
|
12
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require 'test-factory'
|
2
|
+
Dir["#{File.dirname(__FILE__)}/kuality-coeus/*.rb"].each {|f| require f }
|
3
|
+
Dir["#{File.dirname(__FILE__)}/kuality-coeus/page_objects/*.rb"].each {|f| require f }
|
4
|
+
Dir["#{File.dirname(__FILE__)}/kuality-coeus/page_objects/*/*.rb"].each {|f| require f }
|
5
|
+
Dir["#{File.dirname(__FILE__)}/kuality-coeus/data_objects/*.rb"].each {|f| require f }
|
6
|
+
|
7
|
+
# Initialize this class at the start of your test cases to
|
8
|
+
# open the specified test browser at the specified Sakai welcome page URL.
|
9
|
+
#
|
10
|
+
# The initialization will
|
11
|
+
# create the @browser variable used throughout the page classes
|
12
|
+
class Kuality
|
13
|
+
|
14
|
+
attr_reader :browser
|
15
|
+
|
16
|
+
def initialize(web_browser)
|
17
|
+
if web_browser == :saucelabs
|
18
|
+
@browser = Watir::Browser.new(
|
19
|
+
:remote,
|
20
|
+
:url => "http://#{ENV['username']}:#{ENV['api_key']}@ondemand.saucelabs.com:80/wd/hub",
|
21
|
+
:desired_capabilities => $environment
|
22
|
+
)
|
23
|
+
else
|
24
|
+
@browser = Watir::Browser.new web_browser
|
25
|
+
@browser.window.resize_to(1400,900)
|
26
|
+
end
|
27
|
+
@browser.goto $base_url
|
28
|
+
end
|
29
|
+
|
30
|
+
end
|
metadata
ADDED
@@ -0,0 +1,85 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: kuality-coeus
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Abraham Heward
|
9
|
+
- Jon Utter
|
10
|
+
autorequire:
|
11
|
+
bindir: bin
|
12
|
+
cert_chain: []
|
13
|
+
date: 2013-02-07 00:00:00.000000000 Z
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: test-factory
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
none: false
|
19
|
+
requirements:
|
20
|
+
- - ! '>='
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 0.2.0
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
none: false
|
27
|
+
requirements:
|
28
|
+
- - ! '>='
|
29
|
+
- !ruby/object:Gem::Version
|
30
|
+
version: 0.2.0
|
31
|
+
description: This gem is used for creating test scripts for Kuali Coeus.
|
32
|
+
email:
|
33
|
+
- ! '"aheward@rsmart.com"'
|
34
|
+
- ! '"jutter@rsmart.com"'
|
35
|
+
executables: []
|
36
|
+
extensions: []
|
37
|
+
extra_rdoc_files: []
|
38
|
+
files:
|
39
|
+
- Gemfile
|
40
|
+
- Gemfile.lock
|
41
|
+
- kuality-coeus.gemspec
|
42
|
+
- lib/kuality-coeus/data_objects/committee_document.rb
|
43
|
+
- lib/kuality-coeus/data_objects/proposal_development.rb
|
44
|
+
- lib/kuality-coeus/data_objects/user.rb
|
45
|
+
- lib/kuality-coeus/navigation.rb
|
46
|
+
- lib/kuality-coeus/page_objects/000_base_page.rb
|
47
|
+
- lib/kuality-coeus/page_objects/central_admin.rb
|
48
|
+
- lib/kuality-coeus/page_objects/committee/committee.rb
|
49
|
+
- lib/kuality-coeus/page_objects/committee/members.rb
|
50
|
+
- lib/kuality-coeus/page_objects/committee_document.rb
|
51
|
+
- lib/kuality-coeus/page_objects/financial_entities/my_financial_entities.rb
|
52
|
+
- lib/kuality-coeus/page_objects/financial_entities/new_financial_entity.rb
|
53
|
+
- lib/kuality-coeus/page_objects/financial_entities/reporter.rb
|
54
|
+
- lib/kuality-coeus/page_objects/financial_entities.rb
|
55
|
+
- lib/kuality-coeus/page_objects/login.rb
|
56
|
+
- lib/kuality-coeus/page_objects/proposal_development/proposal.rb
|
57
|
+
- lib/kuality-coeus/page_objects/proposal_development.rb
|
58
|
+
- lib/kuality-coeus/page_objects/researcher.rb
|
59
|
+
- lib/kuality-coeus/page_objects/unit.rb
|
60
|
+
- lib/kuality-coeus.rb
|
61
|
+
homepage: https://github.com/rSmart
|
62
|
+
licenses: []
|
63
|
+
post_install_message:
|
64
|
+
rdoc_options: []
|
65
|
+
require_paths:
|
66
|
+
- lib
|
67
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
68
|
+
none: false
|
69
|
+
requirements:
|
70
|
+
- - ! '>='
|
71
|
+
- !ruby/object:Gem::Version
|
72
|
+
version: 1.9.3
|
73
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
74
|
+
none: false
|
75
|
+
requirements:
|
76
|
+
- - ! '>='
|
77
|
+
- !ruby/object:Gem::Version
|
78
|
+
version: '0'
|
79
|
+
requirements: []
|
80
|
+
rubyforge_project:
|
81
|
+
rubygems_version: 1.8.24
|
82
|
+
signing_key:
|
83
|
+
specification_version: 3
|
84
|
+
summary: rSmart's test framework for BDD testing of Kuali Coeus
|
85
|
+
test_files: []
|