sambal-cle 0.1.5 → 0.1.6
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +3 -5
- data/Gemfile.lock +6 -9
- data/lib/sambal-cle/base_page.rb +21 -3
- data/lib/sambal-cle/data_objects/announcement.rb +1 -1
- data/lib/sambal-cle/data_objects/assignment.rb +3 -2
- data/lib/sambal-cle/data_objects/course.rb +5 -4
- data/lib/sambal-cle/data_objects/event.rb +7 -7
- data/lib/sambal-cle/data_objects/forum.rb +3 -2
- data/lib/sambal-cle/data_objects/lesson.rb +3 -1
- data/lib/sambal-cle/data_objects/resource.rb +3 -1
- data/lib/sambal-cle/page_objects/account.rb +15 -66
- data/lib/sambal-cle/page_objects/aliases.rb +3 -2
- data/lib/sambal-cle/page_objects/announcements.rb +16 -31
- data/lib/sambal-cle/page_objects/assessments.rb +22 -55
- data/lib/sambal-cle/page_objects/assignments.rb +1 -1
- data/lib/sambal-cle/page_objects/blogger.rb +21 -77
- data/lib/sambal-cle/page_objects/blogs.rb +3 -5
- data/lib/sambal-cle/page_objects/calendar.rb +22 -40
- data/lib/sambal-cle/page_objects/chat_room.rb +2 -2
- data/lib/sambal-cle/page_objects/email_archive.rb +1 -2
- data/lib/sambal-cle/page_objects/evaluations.rb +78 -50
- data/lib/sambal-cle/page_objects/feedback.rb +1 -5
- data/lib/sambal-cle/page_objects/forms.rb +14 -55
- data/lib/sambal-cle/page_objects/forums.rb +11 -24
- data/lib/sambal-cle/page_objects/glossary.rb +6 -12
- data/lib/sambal-cle/page_objects/home.rb +7 -18
- data/lib/sambal-cle/page_objects/jforums.rb +60 -197
- data/lib/sambal-cle/page_objects/job_scheduler.rb +16 -49
- data/lib/sambal-cle/page_objects/lessons.rb +11 -34
- data/lib/sambal-cle/page_objects/matrix.rb +12 -14
- data/lib/sambal-cle/page_objects/messages.rb +71 -466
- data/lib/sambal-cle/page_objects/my_workspace.rb +3 -3
- data/lib/sambal-cle/page_objects/podcasts.rb +1 -6
- data/lib/sambal-cle/page_objects/polls.rb +5 -5
- data/lib/sambal-cle/page_objects/portfolio_templates.rb +16 -66
- data/lib/sambal-cle/page_objects/portfolios.rb +17 -67
- data/lib/sambal-cle/page_objects/profile.rb +5 -16
- data/lib/sambal-cle/page_objects/profile2.rb +51 -119
- data/lib/sambal-cle/page_objects/public_search.rb +6 -27
- data/lib/sambal-cle/page_objects/realms.rb +2 -2
- data/lib/sambal-cle/page_objects/resources.rb +89 -116
- data/lib/sambal-cle/page_objects/resources_roster.rb +1 -0
- data/lib/sambal-cle/page_objects/rosters.rb +3 -13
- data/lib/sambal-cle/page_objects/rwiki.rb +2 -6
- data/lib/sambal-cle/page_objects/search.rb +10 -10
- data/lib/sambal-cle/page_objects/sections.rb +40 -81
- data/lib/sambal-cle/page_objects/site_setup.rb +46 -74
- data/lib/sambal-cle/page_objects/sites.rb +24 -110
- data/lib/sambal-cle/page_objects/styles.rb +6 -51
- data/lib/sambal-cle/page_objects/syllabus.rb +12 -26
- data/lib/sambal-cle/page_objects/user_membership.rb +3 -15
- data/lib/sambal-cle/page_objects/users.rb +9 -25
- data/sambal-cle.gemspec +1 -1
- data/test/add_assignment_to_calendar_spec.rb +55 -1
- data/test/config.yml +1 -1
- data/test/duplicate_site_spec.rb +11 -10
- data/test/import_site_content_spec.rb +6 -5
- metadata +2 -2
@@ -9,7 +9,7 @@ class ChatRoom < BasePage
|
|
9
9
|
|
10
10
|
value(:total_messages_shown) { |b| b.frame(:class=>"wcwmenu").div(:id=>"chat2_messages_shown_total").text }
|
11
11
|
|
12
|
-
|
12
|
+
link "Options"
|
13
13
|
|
14
14
|
end
|
15
15
|
|
@@ -17,6 +17,6 @@ class ManageRooms < BasePage
|
|
17
17
|
|
18
18
|
frame_element
|
19
19
|
|
20
|
-
|
20
|
+
link "Add Room"
|
21
21
|
|
22
22
|
end
|
@@ -2,55 +2,76 @@
|
|
2
2
|
# Evaluation System Pages
|
3
3
|
#================
|
4
4
|
|
5
|
-
|
6
|
-
class EvaluationSystem < BasePage
|
5
|
+
class EvaluationSystemBase < BasePage
|
7
6
|
|
8
7
|
frame_element
|
9
8
|
|
10
|
-
|
11
|
-
action(:my_templates) { |b| b.frm.link(:text=>"My Templates").click }
|
9
|
+
class << self
|
12
10
|
|
13
|
-
|
14
|
-
|
11
|
+
def menu_elements
|
12
|
+
link("Administrate")
|
13
|
+
link("Evaluations dashboard")
|
14
|
+
link("My Evaluations")
|
15
|
+
link("My Templates")
|
16
|
+
link("My Items")
|
17
|
+
link("My Scales")
|
18
|
+
link("My Email Templates")
|
19
|
+
action(:take_evaluation) { |evaluation_name, b| b.frm.div(:class=>"summaryBox").table(:text=>/#{Regexp.escape(evaluation_name)}/).link.click }
|
20
|
+
action(:status_of) { |evaluation_name, b| b.frm.div(:class=>"summaryBox").table(:text=>/#{Regexp.escape(evaluation_name)}/)[1][1].text }
|
15
21
|
|
16
|
-
|
17
|
-
def take_evaluation(evaluation_name)
|
18
|
-
frm.div(:class=>"summaryBox").table(:text=>/#{Regexp.escape(evaluation_name)}/).link.click
|
19
|
-
TakeEvaluation.new(@browser)
|
20
|
-
end
|
22
|
+
end
|
21
23
|
|
22
|
-
def status_of(evaluation_name)
|
23
|
-
frm.div(:class=>"summaryBox").table(:text=>/#{Regexp.escape(evaluation_name)}/)[1][1].text
|
24
24
|
end
|
25
25
|
|
26
26
|
end
|
27
27
|
|
28
|
-
|
29
|
-
class AddTemplateTitle < BasePage
|
28
|
+
class EvaluationAdministrate < EvaluationSystemBase
|
30
29
|
|
31
|
-
|
30
|
+
menu_elements
|
32
31
|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
32
|
+
# TODO: The "Search" link will need to be defined differently because there are multiple "Searches" on the page
|
33
|
+
|
34
|
+
link("Control Reporting")
|
35
|
+
link("Control Email Settings")
|
36
|
+
link("Control Eval Admin")
|
37
|
+
link("Test EvalGroupProvider")
|
38
|
+
link("Synchronize Group Memberships")
|
39
|
+
|
40
|
+
button("Save Settings")
|
41
|
+
|
42
|
+
end
|
43
|
+
|
44
|
+
class EvaluationsDashboard < EvaluationSystemBase
|
45
|
+
|
46
|
+
menu_elements
|
47
|
+
|
48
|
+
link("Add Template")
|
49
|
+
link("Add Evaluation")
|
50
|
+
|
51
|
+
end
|
52
|
+
|
53
|
+
#
|
54
|
+
class AddTemplateTitle < EvaluationSystemBase
|
55
|
+
|
56
|
+
menu_elements
|
57
|
+
basic_page_elements
|
37
58
|
|
38
59
|
element(:title) { |b| b.frm.text_field(:id=>"title") }
|
39
60
|
element(:description) { |b| b.frm.text_area(:id=>"description") }
|
40
61
|
|
41
62
|
end
|
42
63
|
|
43
|
-
|
44
64
|
#
|
45
65
|
class EditTemplate < BasePage
|
46
66
|
|
67
|
+
include FCKEditor
|
47
68
|
frame_element
|
48
69
|
|
49
70
|
def item_text=(text)
|
50
71
|
frm.frame(:id, "item-text___Frame").td(:id, "xEditingArea").frame(:index=>0).send_keys(text)
|
51
72
|
end
|
52
73
|
|
53
|
-
|
74
|
+
link("New evaluation")
|
54
75
|
|
55
76
|
def add
|
56
77
|
frm.button(:value=>"Add").click
|
@@ -60,10 +81,10 @@ class EditTemplate < BasePage
|
|
60
81
|
def save_item
|
61
82
|
frm.button(:value=>"Save item").click
|
62
83
|
frm.link(:text=>"New evaluation").wait_until_present
|
63
|
-
EditTemplate.new @browser
|
64
84
|
end
|
65
85
|
|
66
86
|
element(:item) { |b| b.frm.select_list(:id=>"add-item-control::add-item-classification-selection").click }
|
87
|
+
|
67
88
|
end
|
68
89
|
|
69
90
|
|
@@ -77,10 +98,7 @@ class NewEvaluation < BasePage
|
|
77
98
|
|
78
99
|
element(:editor) { |b| b.frm.frame(:id, "instructions:1:input___Frame") }
|
79
100
|
|
80
|
-
|
81
|
-
frm.button(:value=>"Continue to Settings").click
|
82
|
-
EvaluationSettings.new(@browser)
|
83
|
-
end
|
101
|
+
button("Continue to Settings")
|
84
102
|
|
85
103
|
def instructions=(text)
|
86
104
|
frm.frame(:id, "instructions:1:input___Frame").td(:id, "xEditingArea").frame(:index=>0).send_keys(text)
|
@@ -90,37 +108,29 @@ class NewEvaluation < BasePage
|
|
90
108
|
|
91
109
|
end
|
92
110
|
|
93
|
-
|
94
111
|
#
|
95
112
|
class EvaluationSettings < BasePage
|
96
113
|
|
97
114
|
frame_element
|
98
115
|
|
99
|
-
|
100
|
-
frm.button(:value=>"Continue to Assign to Courses").click
|
101
|
-
EditEvaluationAssignment.new(@browser)
|
102
|
-
end
|
103
|
-
|
116
|
+
button("Continue to Assign to Courses")
|
104
117
|
|
105
118
|
end
|
106
119
|
|
107
|
-
|
108
120
|
#
|
109
121
|
class EditEvaluationAssignment < BasePage
|
110
122
|
|
111
123
|
frame_element
|
112
124
|
|
113
|
-
|
114
|
-
frm.button(:value=>"Save Assigned Groups").click
|
115
|
-
ConfirmEvaluation.new(@browser)
|
116
|
-
end
|
125
|
+
button("Save Assigned Groups")
|
117
126
|
|
118
127
|
def check_group(title)
|
119
128
|
frm.table(:class=>"listHier lines nolines").wait_until_present
|
120
129
|
frm.table(:class=>"listHier lines nolines").row(:text=>/#{Regexp.escape(title)}/).checkbox(:name=>"selectedGroupIDs").set
|
121
130
|
end
|
122
131
|
|
123
|
-
|
132
|
+
link("Assign to Evaluation Groups")
|
133
|
+
|
124
134
|
end
|
125
135
|
|
126
136
|
|
@@ -129,18 +139,40 @@ class ConfirmEvaluation < BasePage
|
|
129
139
|
|
130
140
|
frame_element
|
131
141
|
|
132
|
-
|
133
|
-
frm.button(:value=>"Done").click
|
134
|
-
MyEvaluations.new(@browser)
|
135
|
-
end
|
142
|
+
action(:done) { |b| b.frm.button(:value=>"Done").click }
|
136
143
|
|
137
144
|
end
|
138
145
|
|
139
146
|
#
|
140
|
-
class MyEvaluations <
|
147
|
+
class MyEvaluations < EvaluationSystemBase
|
141
148
|
|
142
|
-
|
149
|
+
menu_elements
|
150
|
+
|
151
|
+
link("Add Evaluation")
|
143
152
|
|
153
|
+
end
|
154
|
+
|
155
|
+
class MyTemplates < EvaluationSystemBase
|
156
|
+
|
157
|
+
menu_elements
|
158
|
+
|
159
|
+
end
|
160
|
+
|
161
|
+
class MyItems < EvaluationSystemBase
|
162
|
+
|
163
|
+
menu_elements
|
164
|
+
|
165
|
+
end
|
166
|
+
|
167
|
+
class MyScales < EvaluationSystemBase
|
168
|
+
|
169
|
+
menu_elements
|
170
|
+
|
171
|
+
end
|
172
|
+
|
173
|
+
class MyEmailTemplates < EvaluationSystemBase
|
174
|
+
|
175
|
+
menu_elements
|
144
176
|
|
145
177
|
end
|
146
178
|
|
@@ -149,10 +181,6 @@ class TakeEvaluation < BasePage
|
|
149
181
|
|
150
182
|
frame_element
|
151
183
|
|
152
|
-
|
153
|
-
frm.button(:value=>"Submit Evaluation").click
|
154
|
-
EvaluationSystem.new(@browser)
|
155
|
-
end
|
156
|
-
|
184
|
+
action(:submit_evaluation) { |b| b.frm.button(:value=>"Submit Evaluation").click }
|
157
185
|
|
158
186
|
end
|
@@ -7,10 +7,7 @@ class Feedback < BasePage
|
|
7
7
|
|
8
8
|
frame_element
|
9
9
|
|
10
|
-
|
11
|
-
frm.link(:text=>"Add").click
|
12
|
-
AddUpdateFeedback.new(@browser)
|
13
|
-
end
|
10
|
+
link "Add"
|
14
11
|
|
15
12
|
# Returns an array containing the titles
|
16
13
|
# of the Feedback items listed on the page.
|
@@ -30,7 +27,6 @@ class AddUpdateFeedback < BasePage
|
|
30
27
|
|
31
28
|
frame_element
|
32
29
|
|
33
|
-
|
34
30
|
element(:title) { |b| b.frm.text_field(:id=>"_idJsp1:title") }
|
35
31
|
|
36
32
|
end
|
@@ -7,26 +7,13 @@ class Forms < BasePage
|
|
7
7
|
|
8
8
|
frame_element
|
9
9
|
|
10
|
-
|
11
|
-
# the AddForm Class.
|
12
|
-
def add
|
13
|
-
frm.link(:text=>"Add").click
|
14
|
-
AddForm.new(@browser)
|
15
|
-
end
|
10
|
+
link "Add"
|
16
11
|
|
17
12
|
# Clicks the Publish buton for the specified
|
18
|
-
# Form
|
19
|
-
|
20
|
-
frm.table(:class=>"listHier lines nolines").tr(:text, /#{Regexp.escape(form_name)}/).link(:text=>/Publish/).click
|
21
|
-
PublishForm.new(@browser)
|
22
|
-
end
|
13
|
+
# Form
|
14
|
+
action(:publish) { |form_name, b| b.frm.table(:class=>"listHier lines nolines").tr(:text, /#{Regexp.escape(form_name)}/).link(:text=>/Publish/).click }
|
23
15
|
|
24
|
-
|
25
|
-
# instantiates the ImportForms Class.
|
26
|
-
def import
|
27
|
-
frm.link(:text=>"Import").click
|
28
|
-
ImportForms.new(@browser)
|
29
|
-
end
|
16
|
+
link "Import"
|
30
17
|
|
31
18
|
end
|
32
19
|
|
@@ -34,35 +21,24 @@ class ImportForms < BasePage
|
|
34
21
|
|
35
22
|
frame_element
|
36
23
|
|
37
|
-
|
38
|
-
frm.button(:value=>"Import").click
|
39
|
-
Forms.new(@browser)
|
40
|
-
end
|
24
|
+
button "Import"
|
41
25
|
|
42
|
-
|
43
|
-
frm.link(:text=>"Select File...").click
|
44
|
-
AttachFileFormImport.new(@browser)
|
45
|
-
end
|
26
|
+
link "Select File..."
|
46
27
|
|
47
28
|
end
|
48
29
|
|
49
30
|
class AddForm < BasePage
|
50
31
|
|
32
|
+
include FCKEditor
|
51
33
|
frame_element
|
52
34
|
|
53
|
-
|
54
|
-
frm.link(:text=>"Select Schema File").click
|
55
|
-
SelectSchemaFile.new(@browser)
|
56
|
-
end
|
35
|
+
link "Select Schema File"
|
57
36
|
|
58
37
|
def instruction=(text)
|
59
38
|
frm.frame(:id, "instruction___Frame").td(:id, "xEditingArea").frame(:index=>0).send_keys(text)
|
60
39
|
end
|
61
40
|
|
62
|
-
|
63
|
-
frm.button(:value=>"Add Form").click
|
64
|
-
Forms.new(@browser)
|
65
|
-
end
|
41
|
+
button "Add Form"
|
66
42
|
|
67
43
|
element(:name) { |b| b.frm.text_field(:id=>"description-id") }
|
68
44
|
|
@@ -73,21 +49,11 @@ class SelectSchemaFile < BasePage
|
|
73
49
|
|
74
50
|
frame_element
|
75
51
|
|
76
|
-
|
77
|
-
frm.link(:title=>"Show other sites").click
|
78
|
-
SelectSchemaFile.new(@browser)
|
79
|
-
end
|
52
|
+
action(:show_other_sites) { |b| b.frm.link(:title=>"Show other sites").click }
|
80
53
|
|
81
|
-
|
82
|
-
frm.link(:text=>name).click
|
83
|
-
SelectSchemaFile.new(@browser)
|
84
|
-
end
|
54
|
+
action(:open_folder) { |name, b| b.frm.link(:text=>name).click }
|
85
55
|
|
86
|
-
|
87
|
-
index = file_names.index(filename)
|
88
|
-
frm.table(:class=>"listHier lines").tr(:text, /#{Regexp.escape(filename)}/).link(:text=>"Select").click
|
89
|
-
SelectSchemaFile.new(@browser)
|
90
|
-
end
|
56
|
+
action(:select_file) { |filename, b| b.frm.table(:class=>"listHier lines").tr(:text, /#{Regexp.escape(filename)}/).link(:text=>"Select").click }
|
91
57
|
|
92
58
|
def file_names #FIXME
|
93
59
|
names = []
|
@@ -100,11 +66,7 @@ class SelectSchemaFile < BasePage
|
|
100
66
|
return names
|
101
67
|
end
|
102
68
|
|
103
|
-
|
104
|
-
frm.button(:value=>"Continue").click
|
105
|
-
frm.frame(:id, "instruction___Frame").td(:id, "xEditingArea").wait_until_present
|
106
|
-
AddForm.new(@browser)
|
107
|
-
end
|
69
|
+
button "Continue"
|
108
70
|
|
109
71
|
end
|
110
72
|
|
@@ -112,9 +74,6 @@ class PublishForm < BasePage
|
|
112
74
|
|
113
75
|
frame_element
|
114
76
|
|
115
|
-
|
116
|
-
frm.button(:value=>"Yes").click
|
117
|
-
Forms.new(@browser)
|
118
|
-
end
|
77
|
+
button "Yes"
|
119
78
|
|
120
79
|
end
|
@@ -18,10 +18,10 @@ class Forums < BasePage
|
|
18
18
|
end
|
19
19
|
|
20
20
|
# OrganizeForums
|
21
|
-
|
21
|
+
link "Organize"
|
22
22
|
|
23
23
|
# ForumTemplateSettings
|
24
|
-
|
24
|
+
link "Template Settings"
|
25
25
|
|
26
26
|
element(:forums_table) { |b| b.frm.div(:class=>"portletBody").table(:id=>"msgForum:forums") }
|
27
27
|
|
@@ -76,7 +76,7 @@ class TopicPage < BasePage
|
|
76
76
|
frame_element
|
77
77
|
|
78
78
|
# ComposeForumMessage
|
79
|
-
|
79
|
+
link "Post New Thread"
|
80
80
|
|
81
81
|
def thread_titles
|
82
82
|
titles = []
|
@@ -93,7 +93,7 @@ class TopicPage < BasePage
|
|
93
93
|
end
|
94
94
|
|
95
95
|
# TopicPage
|
96
|
-
|
96
|
+
link "Display Entire Message"
|
97
97
|
|
98
98
|
end
|
99
99
|
|
@@ -102,7 +102,7 @@ class ViewForumThread < BasePage
|
|
102
102
|
frame_element
|
103
103
|
|
104
104
|
# ComposeForumMessage
|
105
|
-
|
105
|
+
link "Reply to Thread"
|
106
106
|
|
107
107
|
# ComposeForumMessage
|
108
108
|
# TODO: Figure out a better way to do this...
|
@@ -119,7 +119,7 @@ class ComposeForumMessage < BasePage
|
|
119
119
|
expected_element :editor
|
120
120
|
|
121
121
|
# TopicPage, probably
|
122
|
-
|
122
|
+
button "Post Message"
|
123
123
|
|
124
124
|
element(:editor) { |b| b.frm.frame(:id, "dfCompose:df_compose_body_inputRichText___Frame") }
|
125
125
|
|
@@ -129,7 +129,7 @@ class ComposeForumMessage < BasePage
|
|
129
129
|
|
130
130
|
value(:reply_text) { |b| b.frame(:index=>1).div(:class=>"singleMessageReply").text }
|
131
131
|
|
132
|
-
|
132
|
+
button "Cancel"
|
133
133
|
|
134
134
|
element(:title) { |b| b.frm.text_field(:id=>"dfCompose:df_compose_title") }
|
135
135
|
|
@@ -138,23 +138,16 @@ end
|
|
138
138
|
class ForumTemplateSettings < BasePage
|
139
139
|
|
140
140
|
frame_element
|
141
|
+
basic_page_elements
|
141
142
|
|
142
143
|
value(:page_title) { |b| b.frm.div(:class=>"portletBody").h3(:index=>0).text }
|
143
144
|
|
144
|
-
# Forums
|
145
|
-
action(:save) { |b| b.frm.button(:value=>"Save").click }
|
146
|
-
|
147
|
-
# Forums
|
148
|
-
action(:cancel) { |b| b.frm.button(:value=>"Cancel").click }
|
149
|
-
|
150
145
|
end
|
151
146
|
|
152
147
|
class OrganizeForums < BasePage
|
153
148
|
|
154
149
|
frame_element
|
155
|
-
|
156
|
-
# Forums
|
157
|
-
action(:save) { |b| b.frm.button(:value=>"Save").click }
|
150
|
+
basic_page_elements
|
158
151
|
|
159
152
|
# These are set to so that the user
|
160
153
|
# does not have to start the list at zero...
|
@@ -172,10 +165,7 @@ class EditForum < BasePage
|
|
172
165
|
|
173
166
|
include FCKEditor
|
174
167
|
frame_element
|
175
|
-
|
176
|
-
# Forums
|
177
|
-
action(:save) { |b| b.frm.button(:value=>"Save").click }
|
178
|
-
action(:cancel) { |b| b.frm.button(:value=>"Cancel").click }
|
168
|
+
basic_page_elements
|
179
169
|
|
180
170
|
# AddEditTopic
|
181
171
|
action(:save_and_add) { |b| b.frm.button(:value=>"Save Settings & Add Topic").click }
|
@@ -198,6 +188,7 @@ class AddEditTopic < BasePage
|
|
198
188
|
|
199
189
|
include FCKEditor
|
200
190
|
frame_element
|
191
|
+
basic_page_elements
|
201
192
|
|
202
193
|
@@table_index=0 # TODO: Seriously think about a better way to do this
|
203
194
|
|
@@ -209,10 +200,6 @@ class AddEditTopic < BasePage
|
|
209
200
|
editor.td(:id, "xEditingArea").frame(:index=>0).send_keys(text)
|
210
201
|
end
|
211
202
|
|
212
|
-
# Forums
|
213
|
-
action(:save) { |b| b.frm.button(:value=>"Save").click }
|
214
|
-
action(:cancel) { |b| b.frm.button(:value=>"Cancel").click }
|
215
|
-
|
216
203
|
action(:add_attachments) { |b| b.frm.button(:value=>/Add.+ttachment/).click }
|
217
204
|
|
218
205
|
def roles
|