oauth-cli-twitter 0.0.2 → 0.0.4

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.
data/README.md CHANGED
@@ -76,10 +76,10 @@ Usage
76
76
  Requirement
77
77
  -----------
78
78
 
79
- * oauth
80
79
  * readline
80
+ * oauth
81
81
  * termtter
82
- * pit
82
+ * [pit](http://rubygems.org/gems/pit)
83
83
 
84
84
  Install
85
85
  -------
data/Rakefile CHANGED
@@ -21,17 +21,14 @@ rescue LoadError
21
21
  puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
22
22
  end
23
23
 
24
- require 'spec/rake/spectask'
25
- Spec::Rake::SpecTask.new(:spec) do |spec|
26
- spec.libs << 'lib' << 'spec'
27
- spec.spec_files = FileList['spec/**/*_spec.rb']
24
+ require 'rspec/core/rake_task'
25
+ RSpec::Core::RakeTask.new(:spec) do |spec|
26
+ spec.pattern = FileList['spec/**/*_spec.rb']
28
27
  end
29
28
 
30
- Spec::Rake::SpecTask.new(:rcov) do |spec|
31
- spec.libs << 'lib' << 'spec'
29
+ RSpec::Core::RakeTask.new(:rcov) do |spec|
32
30
  spec.pattern = 'spec/**/*_spec.rb'
33
31
  spec.rcov = true
34
- spec.rcov_opts = ["--gcc"]
35
32
  end
36
33
 
37
34
  task :spec => :check_dependencies
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.2
1
+ 0.0.4
@@ -1,7 +1,7 @@
1
1
 
2
+ require 'readline'
2
3
  require 'rubygems'
3
4
  require 'oauth'
4
- require 'readline'
5
5
  require 'termtter/system_extensions'
6
6
  require 'pit'
7
7
 
@@ -16,14 +16,23 @@ module OAuth
16
16
  def self.included(includer)
17
17
  @includer = includer
18
18
  end
19
- attr_accessor :includer
19
+
20
+ def self.extended(extender)
21
+ @extender = extender
22
+ end
23
+
24
+ attr_accessor :includer, :extender
20
25
 
21
26
  def get_access_token(*args)
22
27
  case args.size
23
28
  when 1
24
29
  @options = args[0]
25
- # TODO: add extender ?
26
- if Twitter.includer &&
30
+ if Twitter.extender &&
31
+ Twitter.extender.const_defined?(:CONSUMER_TOKEN) &&
32
+ Twitter.extender.const_defined?(:CONSUMER_SECRET)
33
+ @consumer_token = Twitter.extender::CONSUMER_TOKEN
34
+ @consumer_secret = Twitter.extender::CONSUMER_SECRET
35
+ elsif Twitter.includer &&
27
36
  Twitter.includer.const_defined?(:CONSUMER_TOKEN) &&
28
37
  Twitter.includer.const_defined?(:CONSUMER_SECRET)
29
38
  @consumer_token = Twitter.includer::CONSUMER_TOKEN
@@ -55,7 +64,7 @@ module OAuth
55
64
  @access_token.params = config
56
65
  else
57
66
  @access_token = authorize
58
- save_config(config)
67
+ save_config(@access_token)
59
68
  end
60
69
  @access_token
61
70
  end
@@ -68,9 +77,11 @@ module OAuth
68
77
  end
69
78
  end
70
79
 
71
- def save_config(config)
72
- config = {} if !config
73
- config.update(@access_token.params)
80
+ def save_config(access_token)
81
+ config = {}
82
+ access_token.params.each do |k, v|
83
+ config[k] = v if k.is_a?(String)
84
+ end
74
85
  if @options[:pit]
75
86
  Pit.set(@options[:pit], :data => config)
76
87
  elsif @options[:file]
@@ -5,30 +5,24 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{oauth-cli-twitter}
8
- s.version = "0.0.2"
8
+ s.version = "0.0.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["tily"]
12
- s.date = %q{2010-10-31}
12
+ s.date = %q{2010-10-29}
13
13
  s.description = %q{Twitter OAuth Interface for CLI Applications}
14
14
  s.email = %q{tily05@gmail.com}
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE",
17
- "README.md"
17
+ "README.rdoc"
18
18
  ]
19
19
  s.files = [
20
20
  ".document",
21
21
  ".gitignore",
22
22
  "LICENSE",
23
- "README.md",
23
+ "README.rdoc",
24
24
  "Rakefile",
25
25
  "VERSION",
26
- "example/define_constant.rb",
27
- "example/inclusion.rb",
28
- "example/simple.rb",
29
- "lib/oauth/cli/twitter.rb",
30
- "oauth-cli-twitter.gemspec",
31
- "spec/oauth_cli_twitter_spec.rb",
32
26
  "spec/spec.opts",
33
27
  "spec/spec_helper.rb"
34
28
  ]
@@ -48,20 +42,11 @@ Gem::Specification.new do |s|
48
42
 
49
43
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
50
44
  s.add_development_dependency(%q<rspec>, [">= 1.2.9"])
51
- s.add_runtime_dependency(%q<oauth>, [">= 0"])
52
- s.add_runtime_dependency(%q<termtter>, [">= 0"])
53
- s.add_runtime_dependency(%q<pit>, [">= 0"])
54
45
  else
55
46
  s.add_dependency(%q<rspec>, [">= 1.2.9"])
56
- s.add_dependency(%q<oauth>, [">= 0"])
57
- s.add_dependency(%q<termtter>, [">= 0"])
58
- s.add_dependency(%q<pit>, [">= 0"])
59
47
  end
60
48
  else
61
49
  s.add_dependency(%q<rspec>, [">= 1.2.9"])
62
- s.add_dependency(%q<oauth>, [">= 0"])
63
- s.add_dependency(%q<termtter>, [">= 0"])
64
- s.add_dependency(%q<pit>, [">= 0"])
65
50
  end
66
51
  end
67
52
 
@@ -2,7 +2,9 @@ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
2
 
3
3
  describe OAuth::CLI::Twitter do
4
4
  before do
5
- @twitter = Object.new.extend(OAuth::CLI::Twitter)
5
+ @klass = Class.new
6
+ @klass.send(:include, OAuth::CLI::Twitter)
7
+ @twitter = @klass.new
6
8
  end
7
9
 
8
10
  describe 'taking arguments' do
@@ -49,11 +51,11 @@ describe OAuth::CLI::Twitter do
49
51
 
50
52
  it '#get_access_token gets constants of Object' do
51
53
  @twitter.should_receive(:execute).and_return(@access_token)
52
- Object::CONSUMER_TOKEN = 'object consumer token'
53
- Object::CONSUMER_SECRET = 'object consumer secret'
54
+ @klass::CONSUMER_TOKEN = 'object consumer token'
55
+ @klass::CONSUMER_SECRET = 'object consumer secret'
54
56
  @twitter.get_access_token(@options)
55
- @twitter.instance_variable_get('@consumer_token').should == Object::CONSUMER_TOKEN
56
- @twitter.instance_variable_get('@consumer_secret').should == Object::CONSUMER_SECRET
57
+ @twitter.instance_variable_get('@consumer_token').should == @klass::CONSUMER_TOKEN
58
+ @twitter.instance_variable_get('@consumer_secret').should == @klass::CONSUMER_SECRET
57
59
  end
58
60
 
59
61
  it '#get_access_token gets constants of includer' do
@@ -66,6 +68,17 @@ describe OAuth::CLI::Twitter do
66
68
  @twitter.instance_variable_get('@consumer_token').should == @klass::CONSUMER_TOKEN
67
69
  @twitter.instance_variable_get('@consumer_secret').should == @klass::CONSUMER_SECRET
68
70
  end
71
+
72
+ it '#get_access_token gets constants of extender' do
73
+ @twitter.should_receive(:execute).and_return(@access_token)
74
+ @obj = Class.new
75
+ @obj::CONSUMER_TOKEN = 'extender consumer token'
76
+ @obj::CONSUMER_SECRET = 'extender consumer secret'
77
+ @obj.send(:extend, OAuth::CLI::Twitter)
78
+ @twitter.get_access_token(@options)
79
+ @twitter.instance_variable_get('@consumer_token').should == @obj::CONSUMER_TOKEN
80
+ @twitter.instance_variable_get('@consumer_secret').should == @obj::CONSUMER_SECRET
81
+ end
69
82
  end
70
83
 
71
84
  describe 'execution' do
@@ -76,6 +89,7 @@ describe OAuth::CLI::Twitter do
76
89
  it '#execute and config loaded' do
77
90
  config = {'oauth_token' => 'dummy oauth token', 'oauth_token_secret' => 'dummy oauth token secret'}
78
91
  consumer = 'dummy consumer'
92
+ @access_token.should_receive(:params=).with(config)
79
93
  @twitter.should_receive(:load_config).and_return(config)
80
94
  @twitter.should_receive(:consumer).and_return(consumer)
81
95
  OAuth::AccessToken.should_receive(:new).with(consumer, config['oauth_token'], config['oauth_token_secret']).and_return(@access_token)
@@ -86,7 +100,7 @@ describe OAuth::CLI::Twitter do
86
100
  config = {}
87
101
  @twitter.should_receive(:load_config).and_return(config)
88
102
  @twitter.should_receive(:authorize).and_return(@access_token)
89
- @twitter.should_receive(:save_config).with(config)
103
+ @twitter.should_receive(:save_config).with(@access_token)
90
104
  @twitter.execute.should == @access_token
91
105
  end
92
106
  end
@@ -109,6 +123,7 @@ describe OAuth::CLI::Twitter do
109
123
  file = '/path/to/.conf'
110
124
  yaml = '- dummy yaml'
111
125
 
126
+ File.should_receive(:exist?).with(file).and_return(true)
112
127
  File.should_receive(:read).with(file).and_return(yaml)
113
128
  YAML.should_receive(:load).with(yaml).and_return(@config)
114
129
 
@@ -119,34 +134,33 @@ describe OAuth::CLI::Twitter do
119
134
 
120
135
  describe 'saving config' do
121
136
  before do
122
- @twitter.instance_variable_set('@access_token', mock.tap {|m|
123
- m.should_receive(:params).and_return('dummy access token params')
124
- })
125
- @config = mock.tap {|m| m.should_receive(:update).with('dummy access token params') }
137
+ @config = {'string_key' => 'value', :symbol_key => :value}
138
+ @access_token = mock.tap {|m| m.should_receive(:params).and_return(@config) }
139
+ @twitter.instance_variable_set('@access_token', @access_token)
126
140
  end
127
141
 
128
142
  it '#save_config to pit' do
129
143
  pit = 'pit key'
144
+ data = {'string_key' => 'value'}
130
145
 
131
- Pit.should_receive(:set).with(pit, :data => @config)
146
+ Pit.should_receive(:set).with(pit, :data => data)
132
147
 
133
148
  @twitter.instance_variable_set('@options', {:pit => pit})
134
149
  end
135
150
 
136
151
  it '#save_config to file' do
137
152
  file = '/path/to/.conf'
138
- yaml = '- dummy yaml'
153
+ yaml = "--- \nstring_key: value\n"
139
154
 
140
155
  File.should_receive(:open).with(file, 'w').and_yield(
141
156
  mock.tap {|m| m.should_receive(:write).with(yaml) }
142
157
  )
143
- @config.should_receive(:to_yaml).and_return(yaml)
144
158
 
145
159
  @twitter.instance_variable_set('@options', {:file => file})
146
160
  end
147
161
 
148
162
  after do
149
- @twitter.save_config(@config)
163
+ @twitter.save_config(@access_token)
150
164
  end
151
165
  end
152
166
 
@@ -1,9 +1,5 @@
1
1
  $LOAD_PATH.unshift(File.dirname(__FILE__))
2
2
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
3
3
  require 'oauth/cli/twitter'
4
- require 'spec'
5
- require 'spec/autorun'
6
-
7
- Spec::Runner.configure do |config|
8
-
9
- end
4
+ require 'rspec'
5
+ require 'rspec/autorun'
metadata CHANGED
@@ -1,93 +1,70 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: oauth-cli-twitter
3
- version: !ruby/object:Gem::Version
4
- hash: 27
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 0
9
- - 2
10
- version: 0.0.2
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.4
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - tily
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2010-10-31 00:00:00 +09:00
12
+ date: 2011-10-06 00:00:00.000000000 +09:00
19
13
  default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
22
16
  name: rspec
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
17
+ requirement: &209398320 !ruby/object:Gem::Requirement
25
18
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 13
30
- segments:
31
- - 1
32
- - 2
33
- - 9
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
34
22
  version: 1.2.9
35
23
  type: :development
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: oauth
39
24
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
25
+ version_requirements: *209398320
26
+ - !ruby/object:Gem::Dependency
27
+ name: oauth
28
+ requirement: &209397700 !ruby/object:Gem::Requirement
41
29
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- hash: 3
46
- segments:
47
- - 0
48
- version: "0"
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
49
34
  type: :runtime
50
- version_requirements: *id002
51
- - !ruby/object:Gem::Dependency
52
- name: termtter
53
35
  prerelease: false
54
- requirement: &id003 !ruby/object:Gem::Requirement
36
+ version_requirements: *209397700
37
+ - !ruby/object:Gem::Dependency
38
+ name: termtter
39
+ requirement: &209396800 !ruby/object:Gem::Requirement
55
40
  none: false
56
- requirements:
57
- - - ">="
58
- - !ruby/object:Gem::Version
59
- hash: 3
60
- segments:
61
- - 0
62
- version: "0"
41
+ requirements:
42
+ - - ! '>='
43
+ - !ruby/object:Gem::Version
44
+ version: '0'
63
45
  type: :runtime
64
- version_requirements: *id003
65
- - !ruby/object:Gem::Dependency
66
- name: pit
67
46
  prerelease: false
68
- requirement: &id004 !ruby/object:Gem::Requirement
47
+ version_requirements: *209396800
48
+ - !ruby/object:Gem::Dependency
49
+ name: pit
50
+ requirement: &209396000 !ruby/object:Gem::Requirement
69
51
  none: false
70
- requirements:
71
- - - ">="
72
- - !ruby/object:Gem::Version
73
- hash: 3
74
- segments:
75
- - 0
76
- version: "0"
52
+ requirements:
53
+ - - ! '>='
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
77
56
  type: :runtime
78
- version_requirements: *id004
57
+ prerelease: false
58
+ version_requirements: *209396000
79
59
  description: Twitter OAuth Interface for CLI Applications
80
60
  email: tily05@gmail.com
81
61
  executables: []
82
-
83
62
  extensions: []
84
-
85
- extra_rdoc_files:
63
+ extra_rdoc_files:
86
64
  - LICENSE
87
65
  - README.md
88
- files:
66
+ files:
89
67
  - .document
90
- - .gitignore
91
68
  - LICENSE
92
69
  - README.md
93
70
  - Rakefile
@@ -103,37 +80,26 @@ files:
103
80
  has_rdoc: true
104
81
  homepage: http://github.com/tily/ruby-oauth-cli-twitter
105
82
  licenses: []
106
-
107
83
  post_install_message:
108
- rdoc_options:
109
- - --charset=UTF-8
110
- require_paths:
84
+ rdoc_options: []
85
+ require_paths:
111
86
  - lib
112
- required_ruby_version: !ruby/object:Gem::Requirement
87
+ required_ruby_version: !ruby/object:Gem::Requirement
113
88
  none: false
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- hash: 3
118
- segments:
119
- - 0
120
- version: "0"
121
- required_rubygems_version: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - ! '>='
91
+ - !ruby/object:Gem::Version
92
+ version: '0'
93
+ required_rubygems_version: !ruby/object:Gem::Requirement
122
94
  none: false
123
- requirements:
124
- - - ">="
125
- - !ruby/object:Gem::Version
126
- hash: 3
127
- segments:
128
- - 0
129
- version: "0"
95
+ requirements:
96
+ - - ! '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
130
99
  requirements: []
131
-
132
100
  rubyforge_project:
133
- rubygems_version: 1.3.7
101
+ rubygems_version: 1.6.2
134
102
  signing_key:
135
103
  specification_version: 3
136
104
  summary: Twitter OAuth Interface for CLI Applications
137
- test_files:
138
- - spec/oauth_cli_twitter_spec.rb
139
- - spec/spec_helper.rb
105
+ test_files: []
data/.gitignore DELETED
@@ -1,21 +0,0 @@
1
- ## MAC OS
2
- .DS_Store
3
-
4
- ## TEXTMATE
5
- *.tmproj
6
- tmtags
7
-
8
- ## EMACS
9
- *~
10
- \#*
11
- .\#*
12
-
13
- ## VIM
14
- *.swp
15
-
16
- ## PROJECT::GENERAL
17
- coverage
18
- rdoc
19
- pkg
20
-
21
- ## PROJECT::SPECIFIC