Class: MessagesReceivedList

Inherits:
BasePage show all
Defined in:
lib/sakai-cle-test-api/page_objects/messages.rb

Instance Method Summary collapse

Methods inherited from BasePage

basic_page_elements, frame_element

Methods inherited from PageMaker

element, expected_element, expected_title, #initialize, #method_missing, page_url

Constructor Details

This class inherits a constructor from PageMaker

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class PageMaker

Instance Method Details

#alert_message_textObject

Grabs the text from the message box that appears after doing some action.

Use this method to simplify writing Test::Unit asserts



166
167
168
# File 'lib/sakai-cle-test-api/page_objects/messages.rb', line 166

def alert_message_text
  frm.span(:class=>"success").text
end

#check_message(subject) ⇒ Object

Checks the checkbox for the specified message in the list.

Will throw an error if the specified subject is not present.



175
176
177
178
# File 'lib/sakai-cle-test-api/page_objects/messages.rb', line 175

def check_message(subject)
  index=subjects.index(subject)
  frm.checkbox(:name=>"prefs_pvt_form:pvtmsgs:#{index}:_id122").set
end

#compose_messageObject



148
149
150
151
# File 'lib/sakai-cle-test-api/page_objects/messages.rb', line 148

def compose_message
  frm.link(:text=>"Compose Message").click
  ComposeMessage.new(@browser)
end

#headerObject

Returns a string consisting of the content of the page header–or “breadcrumb”, as it’s called.



136
137
138
# File 'lib/sakai-cle-test-api/page_objects/messages.rb', line 136

def header
  frm.div(:class=>"breadCrumb specialLink").text
end

#mark_readObject

Clicks the “Mark Read” link, then reinstantiates the class because the page partially refreshes.



183
184
185
186
# File 'lib/sakai-cle-test-api/page_objects/messages.rb', line 183

def mark_read
  frm.link(:text=>"Mark Read").click
  MessagesReceivedList.new(@browser)
end

#messagesObject

Clicks the “Messages” breadcrumb link to return to the top level of Messages. Then instantiates the Messages class.



143
144
145
146
# File 'lib/sakai-cle-test-api/page_objects/messages.rb', line 143

def messages
  frm.link(:text=>"Messages").click
  Messages.new(@browser)
end

#moveObject

Clicks the Move link, then instantiates the MoveMessageTo Class.



208
209
210
211
# File 'lib/sakai-cle-test-api/page_objects/messages.rb', line 208

def move
  frm.link(:text, "Move").click
  MoveMessageTo.new(@browser)
end

#open_message(subject) ⇒ Object

Clicks on the specified message subject then instantiates the MessageView class.



155
156
157
158
# File 'lib/sakai-cle-test-api/page_objects/messages.rb', line 155

def open_message(subject)
  frm.link(:text, /#{Regexp.escape(subject)}/).click
  MessageView.new(@browser)
end

#subjectsObject

Creates an array consisting of the message subject lines.



190
191
192
193
194
195
196
197
# File 'lib/sakai-cle-test-api/page_objects/messages.rb', line 190

def subjects
  titles = []
  messages = frm.table(:id=>"prefs_pvt_form:pvtmsgs")
  1.upto(messages.rows.size-1) do |x|
    titles << messages.row(:index=>x).a.title
  end
  return titles
end

#unread_messagesObject

Returns an Array object containing the subjects of the displayed messages that are marked unread.



202
203
204
# File 'lib/sakai-cle-test-api/page_objects/messages.rb', line 202

def unread_messages
  # TODO - Write this method
end