Skip to content

Commit

Permalink
Timeline functionality with a few changes
Browse files Browse the repository at this point in the history
  • Loading branch information
seejohnrun committed May 20, 2011
1 parent 2c83549 commit 93af04c
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 20 deletions.
8 changes: 4 additions & 4 deletions Rakefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
require 'spec/rake/spectask'
require 'lib/console_tweet/version'
require 'rspec/core/rake_task'
require File.dirname(__FILE__) + '/lib/console_tweet/version'

task :build => :test do
system "gem build console_tweet.gemspec"
Expand All @@ -14,12 +14,12 @@ task :release => :build do
end

Spec::Rake::SpecTask.new(:test) do |t|
t.spec_files = FileList['spec/**/*_spec.rb']
t.pattern = 'spec/**/*_spec.rb'
fail_on_error = true # be explicit
end

Spec::Rake::SpecTask.new(:rcov) do |t|
t.spec_files = FileList['spec/**/*_spec.rb']
t.pattern = 'spec/**/*_spec.rb'
t.rcov = true
fail_on_error = true # be explicit
end
2 changes: 1 addition & 1 deletion console_tweet.gemspec
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
require 'rubygems'
require 'lib/console_tweet/version'
require File.dirname(__FILE__) + '/lib/console_tweet/version'

spec = Gem::Specification.new do |s|

Expand Down
32 changes: 18 additions & 14 deletions lib/console_tweet/cli.rb
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ def get_access_token
# Display the user's timeline
def timeline(*args)
load_default_token
return failtown("Unauthorized, re-run setup!") unless @client.authorized?
return failtown("Unauthorized, re-run setup!") unless @client && @client.authorized?

# Only send since_id to @client if it's not nil
home_timeline = since_id ? @client.home_timeline(:since_id => since_id) : @client.home_timeline
Expand All @@ -71,7 +71,7 @@ def timeline(*args)

# Print each tweet, with user name on next line
home_timeline.each do |tweet|
puts "#{tweet['text']}\n\t#{NameColor}#{tweet['user']['name']}#{DefaultColor}\n\n"
puts "#{tweet['text']}\n#{NameColor}@#{tweet['user']['screen_name']} (#{tweet['user']['name']})#{DefaultColor}\n\n"
end

# Save the last id as since_id
Expand All @@ -94,7 +94,7 @@ def tweet(*args)
end
return failtown("Empty Tweet") if tweet_text.empty?
return failtown("Tweet is too long!") if tweet_text.size > 140
return failtown("Unauthorized, re-run setup!") unless @client.authorized?
return failtown("Unauthorized, re-run setup!") unless @client && @client.authorized?
# actually post it
@client.update(tweet_text)
puts "Tweet Posted!"
Expand All @@ -103,7 +103,7 @@ def tweet(*args)
# Get the user's most recent status
def status(*args)
load_default_token
return failtown("Unauthorized, re-run setup!") unless @client.authorized?
return failtown("Unauthorized, re-run setup!") unless @client && @client.authorized?
user = @client.info
status = user['status']
puts "#{user['name']} (at #{status['created_at']}) #{status['text']}"
Expand Down Expand Up @@ -146,17 +146,21 @@ def method_missing(command, *arguments)

# Load the default token from the ~/.twitter file
def load_default_token
tokens = load_tokens
default_hash = tokens[:default]
@client = TwitterOAuth::Client.new(:consumer_key => ConsumerKey, :consumer_secret => ConsumerSecret, :token => default_hash[:token], :secret => default_hash[:secret])
if tokens = load_tokens
default_hash = tokens[:default]
@client = TwitterOAuth::Client.new(:consumer_key => ConsumerKey, :consumer_secret => ConsumerSecret, :token => default_hash[:token], :secret => default_hash[:secret])
default_hash
end
end

# Load tokens from the ~/.twitter file
def load_tokens
f = File.open(TOKEN_PATH, 'r')
tokens = YAML::load(f)
f.close
tokens
if File.exists?(TOKEN_PATH)
f = File.open(TOKEN_PATH, 'r')
tokens = YAML::load(f)
f.close
tokens
end
end

# Save the set of tokens to the ~/.twitter file
Expand All @@ -173,14 +177,14 @@ def self.get_input

# Getter for since_id in ~/.twitter file
def since_id
load_tokens[:since_id]
load_default_token[:since_id]
end

# Setter for since_id in ~/.twitter file
def since_id=(id)
tokens = load_tokens
tokens = load_default_token
tokens[:since_id] = id
save_tokens(tokens)
save_tokens(:default => tokens)
end

end
Expand Down
2 changes: 1 addition & 1 deletion lib/console_tweet/version.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
module ConsoleTweet

VERSION = '0.0.6'
VERSION = '0.1.0'

end

0 comments on commit 93af04c

Please sign in to comment.