t 0.0.2 → 0.1.0

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/spec/set_spec.rb ADDED
@@ -0,0 +1,125 @@
1
+ # encoding: utf-8
2
+ require 'helper'
3
+
4
+ describe T::Set do
5
+
6
+ before do
7
+ @t = T::CLI.new
8
+ Timecop.freeze(Time.local(2011, 11, 24, 16, 20, 0))
9
+ @old_stderr = $stderr
10
+ $stderr = StringIO.new
11
+ @old_stdout = $stdout
12
+ $stdout = StringIO.new
13
+ end
14
+
15
+ after do
16
+ $stderr = @old_stderr
17
+ $stdout = @old_stdout
18
+ end
19
+
20
+ describe "#bio" do
21
+ before do
22
+ @t.options = @t.options.merge(:profile => File.expand_path('../fixtures/.trc', __FILE__))
23
+ stub_post("/1/account/update_profile.json").
24
+ with(:body => {:description => "A mind forever voyaging through strange seas of thought, alone."}).
25
+ to_return(:body => fixture("sferik.json"), :headers => {:content_type => "application/json; charset=utf-8"})
26
+ end
27
+ it "should request the correct resource" do
28
+ @t.set("bio", "A mind forever voyaging through strange seas of thought, alone.")
29
+ a_post("/1/account/update_profile.json").
30
+ with(:body => {:description => "A mind forever voyaging through strange seas of thought, alone."}).
31
+ should have_been_made
32
+ end
33
+ it "should have the correct output" do
34
+ @t.set("bio", "A mind forever voyaging through strange seas of thought, alone.")
35
+ $stdout.string.chomp.should == "@testcli's bio has been updated."
36
+ end
37
+ end
38
+
39
+ describe "#bio" do
40
+ before do
41
+ @t.options = @t.options.merge(:profile => File.expand_path('../fixtures/.trc', __FILE__))
42
+ end
43
+ it "should have the correct output" do
44
+ @t.set("default", "testcli", "abc123")
45
+ $stdout.string.chomp.should == "Default account has been updated."
46
+ end
47
+ end
48
+
49
+ describe "#language" do
50
+ before do
51
+ @t.options = @t.options.merge(:profile => File.expand_path('../fixtures/.trc', __FILE__))
52
+ stub_post("/1/account/settings.json").
53
+ with(:body => {:lang => "en"}).
54
+ to_return(:body => fixture("settings.json"), :headers => {:content_type => "application/json; charset=utf-8"})
55
+ end
56
+ it "should request the correct resource" do
57
+ @t.set("language", "en")
58
+ a_post("/1/account/settings.json").
59
+ with(:body => {:lang => "en"}).
60
+ should have_been_made
61
+ end
62
+ it "should have the correct output" do
63
+ @t.set("language", "en")
64
+ $stdout.string.chomp.should == "@testcli's language has been updated."
65
+ end
66
+ end
67
+
68
+ describe "#location" do
69
+ before do
70
+ @t.options = @t.options.merge(:profile => File.expand_path('../fixtures/.trc', __FILE__))
71
+ stub_post("/1/account/update_profile.json").
72
+ with(:body => {:location => "San Francisco"}).
73
+ to_return(:body => fixture("sferik.json"), :headers => {:content_type => "application/json; charset=utf-8"})
74
+ end
75
+ it "should request the correct resource" do
76
+ @t.set("location", "San Francisco")
77
+ a_post("/1/account/update_profile.json").
78
+ with(:body => {:location => "San Francisco"}).
79
+ should have_been_made
80
+ end
81
+ it "should have the correct output" do
82
+ @t.set("location", "San Francisco")
83
+ $stdout.string.chomp.should == "@testcli's location has been updated."
84
+ end
85
+ end
86
+
87
+ describe "#name" do
88
+ before do
89
+ @t.options = @t.options.merge(:profile => File.expand_path('../fixtures/.trc', __FILE__))
90
+ stub_post("/1/account/update_profile.json").
91
+ with(:body => {:name => "Erik Michaels-Ober"}).
92
+ to_return(:body => fixture("sferik.json"), :headers => {:content_type => "application/json; charset=utf-8"})
93
+ end
94
+ it "should request the correct resource" do
95
+ @t.set("name", "Erik Michaels-Ober")
96
+ a_post("/1/account/update_profile.json").
97
+ with(:body => {:name => "Erik Michaels-Ober"}).
98
+ should have_been_made
99
+ end
100
+ it "should have the correct output" do
101
+ @t.set("name", "Erik Michaels-Ober")
102
+ $stdout.string.chomp.should == "@testcli's name has been updated."
103
+ end
104
+ end
105
+
106
+ describe "#url" do
107
+ before do
108
+ @t.options = @t.options.merge(:profile => File.expand_path('../fixtures/.trc', __FILE__))
109
+ stub_post("/1/account/update_profile.json").
110
+ with(:body => {:url => "https://github.com/sferik"}).
111
+ to_return(:body => fixture("sferik.json"), :headers => {:content_type => "application/json; charset=utf-8"})
112
+ end
113
+ it "should request the correct resource" do
114
+ @t.set("url", "https://github.com/sferik")
115
+ a_post("/1/account/update_profile.json").
116
+ with(:body => {:url => "https://github.com/sferik"}).
117
+ should have_been_made
118
+ end
119
+ it "should have the correct output" do
120
+ @t.set("url", "https://github.com/sferik")
121
+ $stdout.string.chomp.should == "@testcli's URL has been updated."
122
+ end
123
+ end
124
+
125
+ end
data/t.gemspec CHANGED
@@ -2,16 +2,18 @@
2
2
  require File.expand_path("../lib/t/version", __FILE__)
3
3
 
4
4
  Gem::Specification.new do |gem|
5
- gem.add_dependency 'actionpack', '~> 3.1'
5
+ gem.add_dependency 'actionpack', ['>= 2.3.11', '< 4']
6
6
  gem.add_dependency 'launchy', '~> 2.0'
7
- gem.add_dependency 'thor', '~> 0.15.0.rc2'
8
- gem.add_dependency 'twitter', ['~> 2.0', '>= 2.0.1']
7
+ gem.add_dependency 'geokit', '~> 1.6'
9
8
  gem.add_dependency 'oauth', '~> 0.4'
9
+ gem.add_dependency 'thor', '~> 0.15.0.rc2'
10
+ gem.add_dependency 'twitter', ['>= 2.0.2', '< 3']
10
11
  gem.add_dependency 'yajl-ruby', '~> 1.1'
11
12
  gem.add_development_dependency 'pry'
12
13
  gem.add_development_dependency 'rake'
13
14
  gem.add_development_dependency 'rspec'
14
15
  gem.add_development_dependency 'simplecov'
16
+ gem.add_development_dependency 'timecop'
15
17
  gem.add_development_dependency 'webmock'
16
18
  gem.author = "Erik Michaels-Ober"
17
19
  gem.bindir = 'bin'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: t
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,22 +9,25 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-12-02 00:00:00.000000000Z
12
+ date: 2011-12-10 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: actionpack
16
- requirement: &70224079379220 !ruby/object:Gem::Requirement
16
+ requirement: &70255154627420 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
- - - ~>
19
+ - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
- version: '3.1'
21
+ version: 2.3.11
22
+ - - <
23
+ - !ruby/object:Gem::Version
24
+ version: '4'
22
25
  type: :runtime
23
26
  prerelease: false
24
- version_requirements: *70224079379220
27
+ version_requirements: *70255154627420
25
28
  - !ruby/object:Gem::Dependency
26
29
  name: launchy
27
- requirement: &70224079377600 !ruby/object:Gem::Requirement
30
+ requirement: &70255154625340 !ruby/object:Gem::Requirement
28
31
  none: false
29
32
  requirements:
30
33
  - - ~>
@@ -32,46 +35,57 @@ dependencies:
32
35
  version: '2.0'
33
36
  type: :runtime
34
37
  prerelease: false
35
- version_requirements: *70224079377600
38
+ version_requirements: *70255154625340
36
39
  - !ruby/object:Gem::Dependency
37
- name: thor
38
- requirement: &70224079376940 !ruby/object:Gem::Requirement
40
+ name: geokit
41
+ requirement: &70255154624800 !ruby/object:Gem::Requirement
39
42
  none: false
40
43
  requirements:
41
44
  - - ~>
42
45
  - !ruby/object:Gem::Version
43
- version: 0.15.0.rc2
46
+ version: '1.6'
44
47
  type: :runtime
45
48
  prerelease: false
46
- version_requirements: *70224079376940
49
+ version_requirements: *70255154624800
47
50
  - !ruby/object:Gem::Dependency
48
- name: twitter
49
- requirement: &70224079375980 !ruby/object:Gem::Requirement
51
+ name: oauth
52
+ requirement: &70255154623920 !ruby/object:Gem::Requirement
50
53
  none: false
51
54
  requirements:
52
55
  - - ~>
53
56
  - !ruby/object:Gem::Version
54
- version: '2.0'
55
- - - ! '>='
56
- - !ruby/object:Gem::Version
57
- version: 2.0.1
57
+ version: '0.4'
58
58
  type: :runtime
59
59
  prerelease: false
60
- version_requirements: *70224079375980
60
+ version_requirements: *70255154623920
61
61
  - !ruby/object:Gem::Dependency
62
- name: oauth
63
- requirement: &70224079374920 !ruby/object:Gem::Requirement
62
+ name: thor
63
+ requirement: &70255154623220 !ruby/object:Gem::Requirement
64
64
  none: false
65
65
  requirements:
66
66
  - - ~>
67
67
  - !ruby/object:Gem::Version
68
- version: '0.4'
68
+ version: 0.15.0.rc2
69
+ type: :runtime
70
+ prerelease: false
71
+ version_requirements: *70255154623220
72
+ - !ruby/object:Gem::Dependency
73
+ name: twitter
74
+ requirement: &70255154622300 !ruby/object:Gem::Requirement
75
+ none: false
76
+ requirements:
77
+ - - ! '>='
78
+ - !ruby/object:Gem::Version
79
+ version: 2.0.2
80
+ - - <
81
+ - !ruby/object:Gem::Version
82
+ version: '3'
69
83
  type: :runtime
70
84
  prerelease: false
71
- version_requirements: *70224079374920
85
+ version_requirements: *70255154622300
72
86
  - !ruby/object:Gem::Dependency
73
87
  name: yajl-ruby
74
- requirement: &70224079372960 !ruby/object:Gem::Requirement
88
+ requirement: &70255154621520 !ruby/object:Gem::Requirement
75
89
  none: false
76
90
  requirements:
77
91
  - - ~>
@@ -79,10 +93,10 @@ dependencies:
79
93
  version: '1.1'
80
94
  type: :runtime
81
95
  prerelease: false
82
- version_requirements: *70224079372960
96
+ version_requirements: *70255154621520
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: pry
85
- requirement: &70224079372080 !ruby/object:Gem::Requirement
99
+ requirement: &70255154621000 !ruby/object:Gem::Requirement
86
100
  none: false
87
101
  requirements:
88
102
  - - ! '>='
@@ -90,10 +104,10 @@ dependencies:
90
104
  version: '0'
91
105
  type: :development
92
106
  prerelease: false
93
- version_requirements: *70224079372080
107
+ version_requirements: *70255154621000
94
108
  - !ruby/object:Gem::Dependency
95
109
  name: rake
96
- requirement: &70224079371020 !ruby/object:Gem::Requirement
110
+ requirement: &70255154620260 !ruby/object:Gem::Requirement
97
111
  none: false
98
112
  requirements:
99
113
  - - ! '>='
@@ -101,10 +115,10 @@ dependencies:
101
115
  version: '0'
102
116
  type: :development
103
117
  prerelease: false
104
- version_requirements: *70224079371020
118
+ version_requirements: *70255154620260
105
119
  - !ruby/object:Gem::Dependency
106
120
  name: rspec
107
- requirement: &70224079369980 !ruby/object:Gem::Requirement
121
+ requirement: &70255154619800 !ruby/object:Gem::Requirement
108
122
  none: false
109
123
  requirements:
110
124
  - - ! '>='
@@ -112,10 +126,21 @@ dependencies:
112
126
  version: '0'
113
127
  type: :development
114
128
  prerelease: false
115
- version_requirements: *70224079369980
129
+ version_requirements: *70255154619800
116
130
  - !ruby/object:Gem::Dependency
117
131
  name: simplecov
118
- requirement: &70224079368880 !ruby/object:Gem::Requirement
132
+ requirement: &70255154619220 !ruby/object:Gem::Requirement
133
+ none: false
134
+ requirements:
135
+ - - ! '>='
136
+ - !ruby/object:Gem::Version
137
+ version: '0'
138
+ type: :development
139
+ prerelease: false
140
+ version_requirements: *70255154619220
141
+ - !ruby/object:Gem::Dependency
142
+ name: timecop
143
+ requirement: &70255154618420 !ruby/object:Gem::Requirement
119
144
  none: false
120
145
  requirements:
121
146
  - - ! '>='
@@ -123,10 +148,10 @@ dependencies:
123
148
  version: '0'
124
149
  type: :development
125
150
  prerelease: false
126
- version_requirements: *70224079368880
151
+ version_requirements: *70255154618420
127
152
  - !ruby/object:Gem::Dependency
128
153
  name: webmock
129
- requirement: &70224079367720 !ruby/object:Gem::Requirement
154
+ requirement: &70255154616840 !ruby/object:Gem::Requirement
130
155
  none: false
131
156
  requirements:
132
157
  - - ! '>='
@@ -134,7 +159,7 @@ dependencies:
134
159
  version: '0'
135
160
  type: :development
136
161
  prerelease: false
137
- version_requirements: *70224079367720
162
+ version_requirements: *70255154616840
138
163
  description: A command-line interface for Twitter.
139
164
  email: sferik@gmail.com
140
165
  executables:
@@ -152,12 +177,30 @@ files:
152
177
  - bin/t
153
178
  - lib/t.rb
154
179
  - lib/t/cli.rb
180
+ - lib/t/core_ext/string.rb
181
+ - lib/t/delete.rb
155
182
  - lib/t/rcfile.rb
156
183
  - lib/t/set.rb
157
184
  - lib/t/version.rb
185
+ - spec/cli_spec.rb
186
+ - spec/delete_spec.rb
158
187
  - spec/fixtures/.trc
188
+ - spec/fixtures/access_token
189
+ - spec/fixtures/checkip.html
190
+ - spec/fixtures/direct_message.json
191
+ - spec/fixtures/direct_messages.json
192
+ - spec/fixtures/favorites.json
193
+ - spec/fixtures/recommendations.json
194
+ - spec/fixtures/request_token
195
+ - spec/fixtures/retweet.json
196
+ - spec/fixtures/settings.json
197
+ - spec/fixtures/sferik.json
198
+ - spec/fixtures/status.json
199
+ - spec/fixtures/statuses.json
200
+ - spec/fixtures/xml.gp
159
201
  - spec/helper.rb
160
202
  - spec/rcfile_spec.rb
203
+ - spec/set_spec.rb
161
204
  - t.gemspec
162
205
  homepage: http://github.com/sferik/t
163
206
  licenses: []
@@ -179,12 +222,28 @@ required_rubygems_version: !ruby/object:Gem::Requirement
179
222
  version: 1.3.6
180
223
  requirements: []
181
224
  rubyforge_project:
182
- rubygems_version: 1.8.10
225
+ rubygems_version: 1.8.12
183
226
  signing_key:
184
227
  specification_version: 3
185
228
  summary: CLI for Twitter
186
229
  test_files:
230
+ - spec/cli_spec.rb
231
+ - spec/delete_spec.rb
187
232
  - spec/fixtures/.trc
233
+ - spec/fixtures/access_token
234
+ - spec/fixtures/checkip.html
235
+ - spec/fixtures/direct_message.json
236
+ - spec/fixtures/direct_messages.json
237
+ - spec/fixtures/favorites.json
238
+ - spec/fixtures/recommendations.json
239
+ - spec/fixtures/request_token
240
+ - spec/fixtures/retweet.json
241
+ - spec/fixtures/settings.json
242
+ - spec/fixtures/sferik.json
243
+ - spec/fixtures/status.json
244
+ - spec/fixtures/statuses.json
245
+ - spec/fixtures/xml.gp
188
246
  - spec/helper.rb
189
247
  - spec/rcfile_spec.rb
248
+ - spec/set_spec.rb
190
249
  has_rdoc: