Sha256: 0e8b9cc6814d4f3f69e00fc4471b098553bfd3c80b4fb94eaaf06990e096331c

Contents?: true

Size: 1.26 KB

Versions: 2

Compression:

Stored size: 1.26 KB

Contents

require 'helper'

describe Twitter::ActionFactory do

  describe ".new" do
    it "generates a Favorite" do
      action = Twitter::ActionFactory.fetch_or_new(:action => 'favorite')
      action.should be_a Twitter::Action::Favorite
    end
    it "generates a Follow" do
      action = Twitter::ActionFactory.fetch_or_new(:action => 'follow')
      action.should be_a Twitter::Action::Follow
    end
    it "generates a ListMemberAdded" do
      action = Twitter::ActionFactory.fetch_or_new(:action => 'list_member_added')
      action.should be_a Twitter::Action::ListMemberAdded
    end
    it "generates a Mention" do
      action = Twitter::ActionFactory.fetch_or_new(:action => 'mention')
      action.should be_a Twitter::Action::Mention
    end
    it "generates a Reply" do
      action = Twitter::ActionFactory.fetch_or_new(:action => 'reply')
      action.should be_a Twitter::Action::Reply
    end
    it "generates a Retweet" do
      action = Twitter::ActionFactory.fetch_or_new(:action => 'retweet')
      action.should be_a Twitter::Action::Retweet
    end
    it "raises an ArgumentError when action is not specified" do
      lambda do
        Twitter::ActionFactory.fetch_or_new
      end.should raise_error(ArgumentError, "argument must have :action key")
    end
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
twitter-4.1.0 spec/twitter/action_factory_spec.rb
twitter-4.0.0 spec/twitter/action_factory_spec.rb