sambal-cle 0.1.3

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.
Files changed (90) hide show
  1. data/README.md +4 -0
  2. data/lib/sambal-cle/base_page.rb +20 -0
  3. data/lib/sambal-cle/core-ext.rb +90 -0
  4. data/lib/sambal-cle/data_objects/announcement.rb +82 -0
  5. data/lib/sambal-cle/data_objects/assessment.rb +32 -0
  6. data/lib/sambal-cle/data_objects/assignment.rb +205 -0
  7. data/lib/sambal-cle/data_objects/blog.rb +46 -0
  8. data/lib/sambal-cle/data_objects/blogger.rb +49 -0
  9. data/lib/sambal-cle/data_objects/chat_room.rb +54 -0
  10. data/lib/sambal-cle/data_objects/event.rb +89 -0
  11. data/lib/sambal-cle/data_objects/forum.rb +212 -0
  12. data/lib/sambal-cle/data_objects/lesson.rb +185 -0
  13. data/lib/sambal-cle/data_objects/message.rb +57 -0
  14. data/lib/sambal-cle/data_objects/poll.rb +74 -0
  15. data/lib/sambal-cle/data_objects/resource.rb +209 -0
  16. data/lib/sambal-cle/data_objects/site.rb +295 -0
  17. data/lib/sambal-cle/data_objects/syllabus.rb +73 -0
  18. data/lib/sambal-cle/data_objects/web_content_tool.rb +51 -0
  19. data/lib/sambal-cle/data_objects/wiki.rb +63 -0
  20. data/lib/sambal-cle/date_makers.rb +118 -0
  21. data/lib/sambal-cle/gem_ext.rb +23 -0
  22. data/lib/sambal-cle/page_helper.rb +22 -0
  23. data/lib/sambal-cle/page_maker.rb +48 -0
  24. data/lib/sambal-cle/page_objects/account.rb +111 -0
  25. data/lib/sambal-cle/page_objects/aliases.rb +43 -0
  26. data/lib/sambal-cle/page_objects/announcements.rb +190 -0
  27. data/lib/sambal-cle/page_objects/assessments.rb +874 -0
  28. data/lib/sambal-cle/page_objects/assignments.rb +770 -0
  29. data/lib/sambal-cle/page_objects/basic_lti.rb +6 -0
  30. data/lib/sambal-cle/page_objects/blogger.rb +205 -0
  31. data/lib/sambal-cle/page_objects/blogs.rb +60 -0
  32. data/lib/sambal-cle/page_objects/calendar.rb +330 -0
  33. data/lib/sambal-cle/page_objects/calendar_summary.rb +1 -0
  34. data/lib/sambal-cle/page_objects/chat_room.rb +22 -0
  35. data/lib/sambal-cle/page_objects/drop_box.rb +9 -0
  36. data/lib/sambal-cle/page_objects/email_archive.rb +22 -0
  37. data/lib/sambal-cle/page_objects/entity_picker.rb +62 -0
  38. data/lib/sambal-cle/page_objects/evaluations.rb +158 -0
  39. data/lib/sambal-cle/page_objects/feedback.rb +36 -0
  40. data/lib/sambal-cle/page_objects/forms.rb +120 -0
  41. data/lib/sambal-cle/page_objects/forums.rb +254 -0
  42. data/lib/sambal-cle/page_objects/glossary.rb +117 -0
  43. data/lib/sambal-cle/page_objects/gradebook.rb +29 -0
  44. data/lib/sambal-cle/page_objects/gradebook2.rb +17 -0
  45. data/lib/sambal-cle/page_objects/home.rb +36 -0
  46. data/lib/sambal-cle/page_objects/jforums.rb +444 -0
  47. data/lib/sambal-cle/page_objects/job_scheduler.rb +121 -0
  48. data/lib/sambal-cle/page_objects/lessons.rb +361 -0
  49. data/lib/sambal-cle/page_objects/login.rb +28 -0
  50. data/lib/sambal-cle/page_objects/matrix.rb +241 -0
  51. data/lib/sambal-cle/page_objects/media_gallery.rb +13 -0
  52. data/lib/sambal-cle/page_objects/messages.rb +622 -0
  53. data/lib/sambal-cle/page_objects/my_workspace.rb +44 -0
  54. data/lib/sambal-cle/page_objects/news.rb +8 -0
  55. data/lib/sambal-cle/page_objects/podcasts.rb +27 -0
  56. data/lib/sambal-cle/page_objects/polls.rb +69 -0
  57. data/lib/sambal-cle/page_objects/portfolio_templates.rb +161 -0
  58. data/lib/sambal-cle/page_objects/portfolios.rb +162 -0
  59. data/lib/sambal-cle/page_objects/post_em.rb +1 -0
  60. data/lib/sambal-cle/page_objects/profile.rb +51 -0
  61. data/lib/sambal-cle/page_objects/profile2.rb +344 -0
  62. data/lib/sambal-cle/page_objects/public_search.rb +61 -0
  63. data/lib/sambal-cle/page_objects/realms.rb +19 -0
  64. data/lib/sambal-cle/page_objects/resources.rb +326 -0
  65. data/lib/sambal-cle/page_objects/resources_roster.rb +0 -0
  66. data/lib/sambal-cle/page_objects/rosters.rb +70 -0
  67. data/lib/sambal-cle/page_objects/rwiki.rb +34 -0
  68. data/lib/sambal-cle/page_objects/search.rb +34 -0
  69. data/lib/sambal-cle/page_objects/sections.rb +295 -0
  70. data/lib/sambal-cle/page_objects/single_user.rb +1 -0
  71. data/lib/sambal-cle/page_objects/site_setup.rb +621 -0
  72. data/lib/sambal-cle/page_objects/site_statistics.rb +1 -0
  73. data/lib/sambal-cle/page_objects/sites.rb +255 -0
  74. data/lib/sambal-cle/page_objects/styles.rb +74 -0
  75. data/lib/sambal-cle/page_objects/syllabus.rb +166 -0
  76. data/lib/sambal-cle/page_objects/user_membership.rb +57 -0
  77. data/lib/sambal-cle/page_objects/users.rb +88 -0
  78. data/lib/sambal-cle/randomizers.rb +117 -0
  79. data/lib/sambal-cle/rich_text.rb +38 -0
  80. data/lib/sambal-cle/utilities.rb +31 -0
  81. data/lib/sambal-cle/workflows.rb +223 -0
  82. data/lib/sambal-cle.rb +31 -0
  83. data/sambal-cle.gemspec +14 -0
  84. data/test/add_assignment_to_calendar_spec.rb +86 -0
  85. data/test/assignment_announcements_spec.rb +71 -0
  86. data/test/assignment_gradebook_spec.rb +98 -0
  87. data/test/config.yml.template +4 -0
  88. data/test/directory.yml.template +123 -0
  89. data/test/duplicate_site_spec.rb +244 -0
  90. metadata +167 -0
@@ -0,0 +1,241 @@
1
+ #================
2
+ # Matrix Pages for a Portfolio Site
3
+ #================
4
+
5
+ #
6
+ class Matrices < BasePage
7
+
8
+ frame_element
9
+
10
+ # Clicks the Add link and instantiates
11
+ # the AddEditMatrix Class.
12
+ def add
13
+ frm.link(:text=>"Add").click
14
+ AddEditMatrix.new(@browser)
15
+ end
16
+
17
+ # Clicks the "Edit" link for the specified
18
+ # Matrix item, then instantiates the EditMatrixCells.
19
+ def edit(matrixname)
20
+ frm.table(:class=>"listHier lines nolines").tr(:text=>/#{Regexp.escape(matrixname)}/).link(:text=>"Edit").click
21
+ EditMatrixCells.new(@browser)
22
+ end
23
+
24
+ # Clicks the "Preview" link for the specified
25
+ # Matrix item.
26
+ def preview(matrixname)
27
+ frm.table(:class=>"listHier lines nolines").tr(:text=>/#{Regexp.escape(matrixname)}/).link(:text=>"Preview").click
28
+ end
29
+
30
+ # Clicks the "Publish" link for the specified
31
+ # Matrix item, then instantiates the ConfirmPublishMatrix Class.
32
+ def publish(matrixname)
33
+ frm.table(:class=>"listHier lines nolines").tr(:text=>/#{Regexp.escape(matrixname)}/).link(:text=>"Publish").click
34
+ ConfirmPublishMatrix.new(@browser)
35
+ end
36
+
37
+
38
+ end
39
+
40
+ #
41
+ class AddEditMatrix < BasePage
42
+
43
+ frame_element
44
+
45
+ # Clicks the "Create Matrix" button and
46
+ # instantiates the Matrices Class.
47
+ def create_matrix
48
+ frm.button(:value=>"Create Matrix").click
49
+ Matrices.new(@browser)
50
+ end
51
+
52
+ # Clicks the "Save Changes" butotn and
53
+ # instantiates the EditMatrixCells Class.
54
+ def save_changes
55
+ frm.button(:value=>"Save Changes").click
56
+ EditMatrixCells.new(@browser)
57
+ end
58
+
59
+ # Clicks the "Select Style" link and
60
+ # instantiates the SelectMatrixStyle Class.
61
+ def select_style
62
+ frm.link(:text=>"Select Style").click
63
+ SelectMatrixStyle.new(@browser)
64
+ end
65
+
66
+ # Clicks the "Add Column" link and
67
+ # instantiates the AddEditColumn Class.
68
+ def add_column
69
+ frm.link(:text=>"Add Column").click
70
+ AddEditColumn.new(@browser)
71
+ end
72
+
73
+ # Clicks the "Add Row" link and instantiates
74
+ # the AddEditRow Class.
75
+ def add_row
76
+ frm.link(:text=>"Add Row").click
77
+ AddEditRow.new(@browser)
78
+ end
79
+
80
+
81
+ element(:title) { |b| b.frm.text_field(:id=>"title-id") }
82
+
83
+ end
84
+
85
+ #
86
+ class SelectMatrixStyle < BasePage
87
+
88
+ frame_element
89
+
90
+ # Clicks the "Go Back" button and
91
+ # instantiates the AddEditMatrix Class.
92
+ def go_back
93
+ frm.button(:value=>"Go Back").click
94
+ AddEditMatrix.new(@browser)
95
+ end
96
+
97
+ # Clicks the "Select" link for the specified
98
+ # Style, then instantiates the AddEditMatrix Class.
99
+ def select_style(stylename)
100
+ frm.table(:class=>/listHier lines/).tr(:text=>/#{Regexp.escape(stylename)}/).link(:text=>"Select").click
101
+ AddEditMatrix.new(@browser)
102
+ end
103
+
104
+ end
105
+
106
+ #
107
+ class AddEditColumn < BasePage
108
+
109
+ frame_element
110
+
111
+ # Clicks the "Update" button, then
112
+ # instantiates the AddEditMatrix Class.
113
+ def update
114
+ frm.button(:value=>"Update").click
115
+ AddEditMatrix.new(@browser)
116
+ end
117
+
118
+
119
+ element(:name) { |b| b.frm.text_field(:name=>"description") }
120
+
121
+ end
122
+
123
+ #
124
+ class AddEditRow < BasePage
125
+
126
+ frame_element
127
+
128
+ # Clicks the "Update" button, then
129
+ # instantiates the AddEditMatrix Class.
130
+ def update
131
+ frm.button(:value=>"Update").click
132
+ AddEditMatrix.new(@browser)
133
+ end
134
+
135
+
136
+ element(:name) { |b| b.frm.text_field(:name=>"description") }
137
+ element(:background_color) { |b| b.frm.text_field(:id=>"color-id") }
138
+ element(:font_color) { |b| b.frm.text_field(:id=>"textColor-id") }
139
+
140
+ end
141
+
142
+ #
143
+ class EditMatrixCells < BasePage
144
+
145
+ frame_element
146
+
147
+ # Clicks on the cell that is specified, based on
148
+ # the row number, then the column number.
149
+ #
150
+ # Note that the numbering begins in the upper left
151
+ # of the Matrix, with (1, 1) being the first EDITABLE
152
+ # cell, NOT the first cell in the table itself.
153
+ #
154
+ # In other words, ignore the header row and header column
155
+ # in your count (or, if you prefer, consider those
156
+ # to be numbered "0").
157
+ def edit(row, column)
158
+ frm.div(:class=>"portletBody").table(:summary=>"Matrix Scaffolding (click on a cell to edit)").tr(:index=>row).td(:index=>column-1).fire_event("onclick")
159
+ EditCell.new(@browser)
160
+ end
161
+
162
+ # Clicks the "Return to List" link and
163
+ # instantiates the Matrices Class.
164
+ def return_to_list
165
+ frm.link(:text=>"Return to List").click
166
+ Matrices.new(@browser)
167
+ end
168
+
169
+ end
170
+
171
+ #
172
+ class EditCell < BasePage
173
+
174
+ frame_element
175
+
176
+ thing(:select_evaluators_link) { |b| b.frm.link(:text=>"Select Evaluators") }
177
+
178
+ # Clicks the "Select Evaluators" link
179
+ # and instantiates the SelectEvaluators Class.
180
+ def select_evaluators
181
+ select_evaluators_link.wait_until_present
182
+ select_evaluators_link.click
183
+ SelectEvaluators.new(@browser)
184
+ end
185
+
186
+ # Clicks the Save Changes button and instantiates
187
+ # the EditMatrixCells Class.
188
+ def save_changes
189
+ frm.button(:value=>"Save Changes").click
190
+ EditMatrixCells.new(@browser)
191
+ end
192
+
193
+
194
+ element(:title) { |b| b.frm.text_field(:id=>"title-id") }
195
+ element(:use_default_reflection_form) { |b| b.frm.checkbox(:id=>"defaultReflectionForm") }
196
+ element(:reflection) { |b| b.frm.select(:id=>"reflectionDevice-id") }
197
+ element(:use_default_feedback_form) { |b| b.frm.checkbox(:id=>"defaultFeedbackForm") }
198
+ element(:feedback) { |b| b.frm.select(:id=>"reviewDevice-id") }
199
+ element(:use_default_evaluation_form) { |b| b.frm.checkbox(:id=>"defaultEvaluationForm") }
200
+ element(:evaluation) { |b| b.frm.select(:id=>"evaluationDevice-id") }
201
+ element(:use_default_evaluators) { |b| b.frm.checkbox(:id=>"defaultEvaluators") }
202
+
203
+ end
204
+
205
+ #
206
+ class SelectEvaluators < BasePage
207
+
208
+ frame_element
209
+
210
+ # Clicks the "Save" button and
211
+ # instantiates the EditCell Class.
212
+ def save
213
+ frm.button(:value=>"Save").click
214
+ EditCell.new(@browser)
215
+ end
216
+
217
+
218
+ element(:users) { |b| b.frm.select(:id=>"mainForm:availableUsers") }
219
+ element(:selected_users) { |b| b.frm.select(:id=>"mainForm:selectedUsers") }
220
+ element(:roles) { |b| b.frm.select(:id=>"mainForm:audSubV11:availableRoles") }
221
+ element(:selected_roles) { |b| b.frm.select(:id=>"mainForm:audSubV11:selectedRoles") }
222
+ action(:add_users) { |b| b.frm.button(:id=>"mainForm:add_user_button").click }
223
+ action(:remove_users) { |b| b.frm.button(:id=>"mainForm:remove_user_button").click }
224
+ action(:add_roles) { |b| b.frm.button(:id=>"mainForm:audSubV11:add_role_button").click }
225
+ action(:remove_roles) { |b| b.frm.button(:id=>"mainForm:audSubV11:remove_role_button").click }
226
+
227
+ end
228
+
229
+ #
230
+ class ConfirmPublishMatrix < BasePage
231
+
232
+ frame_element
233
+
234
+ # Clicks the "Continue" button and
235
+ # instantiates the Matrices Class.
236
+ def continue
237
+ frm.button(:value=>"Continue").click
238
+ Matrices.new(@browser)
239
+ end
240
+
241
+ end
@@ -0,0 +1,13 @@
1
+ #================
2
+ # Media Gallery Pages
3
+ #================
4
+
5
+ #
6
+ class MediaGallery < BasePage
7
+
8
+ frame_element
9
+
10
+
11
+
12
+
13
+ end