DG MS; Status messages have owner field; defaults to user
This commit is contained in:
parent
1f73c2351e
commit
4532c39e93
6 changed files with 34 additions and 15 deletions
|
|
@ -4,10 +4,20 @@ class StatusMessage
|
|||
include ROXML
|
||||
|
||||
xml_accessor :message
|
||||
xml_accessor :owner
|
||||
|
||||
|
||||
field :message
|
||||
field :owner
|
||||
|
||||
validates_presence_of :message
|
||||
|
||||
before_create :add_owner
|
||||
|
||||
protected
|
||||
|
||||
def add_owner
|
||||
self.owner ||= User.first.email
|
||||
end
|
||||
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,13 +1,14 @@
|
|||
- title "Status Messages"
|
||||
|
||||
%table
|
||||
%tr
|
||||
%th Message
|
||||
|
||||
%h3 Messages
|
||||
%ul
|
||||
- for status_message in @status_messages
|
||||
%tr
|
||||
%td= status_message.message
|
||||
%td= link_to 'Show', status_message
|
||||
%td= link_to 'Destroy', status_message, :confirm => 'Are you sure?', :method => :delete
|
||||
%li
|
||||
= "#{status_message.message} by #{status_message.owner}"
|
||||
= link_to 'Show', status_message
|
||||
|
|
||||
=link_to 'Destroy', status_message, :confirm => 'Are you sure?', :method => :delete
|
||||
|
||||
|
||||
%h2 Friends
|
||||
|
|
|
|||
|
|
@ -3,6 +3,10 @@
|
|||
%p
|
||||
%strong Message:
|
||||
= @status_message.message
|
||||
|
||||
%p
|
||||
%strong Owner:
|
||||
= @status_message.owner
|
||||
|
||||
%p
|
||||
= link_to "Destroy", @status_message, :confirm => 'Are you sure?', :method => :delete
|
||||
|
|
|
|||
|
|
@ -1,10 +1,5 @@
|
|||
defaults: &defaults
|
||||
host: localhost
|
||||
# slaves:
|
||||
# - host: slave1.local
|
||||
# port: 27018
|
||||
# - host: slave2.local
|
||||
# port: 27019
|
||||
allow_dynamic_fields: false
|
||||
parameterize_keys: true
|
||||
persist_in_safe_mode: true
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ describe StatusMessagesController do
|
|||
before do
|
||||
#TODO(dan) Mocking Warden; this is a temp fix
|
||||
request.env['warden'] = mock_model(Warden, :authenticate => @user, :authenticate! => @user)
|
||||
User.create(:email => "bob@aol.com", :password => "secret")
|
||||
StatusMessage.create(:message => "yodels.")
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -8,18 +8,26 @@ describe StatusMessage do
|
|||
n.valid?.should be true
|
||||
end
|
||||
|
||||
it "should add an owner if none is present" do
|
||||
User.create(:email => "bob@aol.com", :password => "big bux")
|
||||
n = StatusMessage.create(:message => "puppies!")
|
||||
n.owner.should == "bob@aol.com"
|
||||
end
|
||||
|
||||
describe "XML" do
|
||||
before do
|
||||
@xml = "<statusmessage>\n <message>I hate WALRUSES!</message>\n</statusmessage>"
|
||||
@xml = "<statusmessage>\n <message>I hate WALRUSES!</message>\n <owner>Bob</owner>\n</statusmessage>"
|
||||
end
|
||||
|
||||
it 'should serialize to XML' do
|
||||
message = StatusMessage.new(:message => "I hate WALRUSES!")
|
||||
message = StatusMessage.create(:message => "I hate WALRUSES!", :owner => "Bob")
|
||||
message.to_xml.to_s.should == @xml
|
||||
end
|
||||
|
||||
it 'should marshal serialized XML to object' do
|
||||
StatusMessage.from_xml(@xml).message.should == "I hate WALRUSES!"
|
||||
parsed = StatusMessage.from_xml(@xml)
|
||||
parsed.message.should == "I hate WALRUSES!"
|
||||
parsed.owner.should == "Bob"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
Loading…
Reference in a new issue