tw 0.3.2 → 0.3.3
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/Gemfile +1 -0
- data/Gemfile.lock +3 -0
- data/History.txt +4 -0
- data/Manifest.txt +2 -0
- data/Rakefile +1 -0
- data/lib/tw.rb +4 -1
- data/lib/tw/app/cmds.rb +1 -1
- data/lib/tw/app/main.rb +1 -1
- data/lib/tw/client/helper.rb +11 -0
- data/lib/tw/conf.rb +13 -0
- data/test/test_t_co.rb +15 -0
- metadata +6 -3
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -32,6 +32,8 @@ GEM
|
|
32
32
|
faraday (~> 0.8)
|
33
33
|
multi_json (~> 1.3)
|
34
34
|
simple_oauth (~> 0.1.6)
|
35
|
+
twitter-text (1.5.0)
|
36
|
+
activesupport
|
35
37
|
userstream (1.2.2)
|
36
38
|
hashie (~> 1.2.0)
|
37
39
|
oauth (~> 0.4.6)
|
@@ -49,4 +51,5 @@ DEPENDENCIES
|
|
49
51
|
parallel
|
50
52
|
rainbow
|
51
53
|
twitter
|
54
|
+
twitter-text
|
52
55
|
userstream
|
data/History.txt
CHANGED
data/Manifest.txt
CHANGED
@@ -13,6 +13,7 @@ lib/tw/app/opt_parser.rb
|
|
13
13
|
lib/tw/app/render.rb
|
14
14
|
lib/tw/client/auth.rb
|
15
15
|
lib/tw/client/error.rb
|
16
|
+
lib/tw/client/helper.rb
|
16
17
|
lib/tw/client/request.rb
|
17
18
|
lib/tw/client/stream.rb
|
18
19
|
lib/tw/client/tweet.rb
|
@@ -24,4 +25,5 @@ script/console
|
|
24
25
|
script/destroy
|
25
26
|
script/generate
|
26
27
|
test/test_helper.rb
|
28
|
+
test/test_t_co.rb
|
27
29
|
test/test_tw.rb
|
data/Rakefile
CHANGED
@@ -16,6 +16,7 @@ $hoe = Hoe.spec 'tw' do
|
|
16
16
|
self.rubyforge_name = self.name # TODO this is default value
|
17
17
|
self.extra_deps = [['oauth','>= 0.4.7', '< 1.0.0'],
|
18
18
|
['twitter', '>= 4.0.0', '< 5.0.0'],
|
19
|
+
['twitter', '>= 1.5.0', '< 2.0.0'],
|
19
20
|
['userstream', '>= 1.2.0', '< 1.3.0'],
|
20
21
|
['json', '>= 1.7.5', '< 1.8.0'],
|
21
22
|
['args_parser', '>= 0.1.2'],
|
data/lib/tw.rb
CHANGED
@@ -1,8 +1,10 @@
|
|
1
1
|
$:.unshift(File.dirname(__FILE__)) unless
|
2
2
|
$:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
|
3
3
|
|
4
|
+
$KCODE = 'u' if RUBY_VERSION < '1.9'
|
4
5
|
require 'oauth'
|
5
6
|
require 'twitter'
|
7
|
+
require 'twitter-text'
|
6
8
|
require 'time'
|
7
9
|
require 'user_stream'
|
8
10
|
require 'yaml'
|
@@ -18,9 +20,10 @@ require 'tw/client/request'
|
|
18
20
|
require 'tw/client/tweet'
|
19
21
|
require 'tw/client/stream'
|
20
22
|
require 'tw/client/error'
|
23
|
+
require 'tw/client/helper'
|
21
24
|
|
22
25
|
module Tw
|
23
|
-
VERSION = '0.3.
|
26
|
+
VERSION = '0.3.3'
|
24
27
|
class Conf
|
25
28
|
REQUIRE_VERSION = '0.1.0'
|
26
29
|
end
|
data/lib/tw/app/cmds.rb
CHANGED
data/lib/tw/app/main.rb
CHANGED
@@ -0,0 +1,11 @@
|
|
1
|
+
|
2
|
+
class String
|
3
|
+
def char_length_with_t_co
|
4
|
+
Tw::Conf.update_twitter_config
|
5
|
+
len = self.char_length
|
6
|
+
Twitter::Extractor.extract_urls(self).each do |url|
|
7
|
+
len += (url =~ /^https/ ? Tw::Conf['twitter_config']['short_url_length_https'] : Tw::Conf['twitter_config']['short_url_length']) - url.char_length
|
8
|
+
end
|
9
|
+
len
|
10
|
+
end
|
11
|
+
end
|
data/lib/tw/conf.rb
CHANGED
@@ -60,6 +60,19 @@ module Tw
|
|
60
60
|
end
|
61
61
|
end
|
62
62
|
|
63
|
+
def self.update_twitter_config(force_update=false)
|
64
|
+
if self['twitter_config'].kind_of? Hash and
|
65
|
+
self['twitter_config']['last_updated_at']+60*60*24 > Time.now.to_i and
|
66
|
+
!force_update
|
67
|
+
return
|
68
|
+
end
|
69
|
+
self['twitter_config'] = {}
|
70
|
+
self['twitter_config']['short_url_length'] = Twitter::configuration.short_url_length
|
71
|
+
self['twitter_config']['short_url_length_https'] = Twitter::configuration.short_url_length_https
|
72
|
+
self['twitter_config']['last_updated_at'] = Time.now.to_i
|
73
|
+
self.save
|
74
|
+
end
|
75
|
+
|
63
76
|
private
|
64
77
|
def self.open_conf_file(opt=nil, &block)
|
65
78
|
if block_given?
|
data/test/test_t_co.rb
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require File.dirname(__FILE__) + '/test_helper.rb'
|
3
|
+
|
4
|
+
class TestTCo < Test::Unit::TestCase
|
5
|
+
|
6
|
+
def setup
|
7
|
+
@client = Tw::Client.new
|
8
|
+
@client.auth
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_t_co_char_length
|
12
|
+
msg = "blog書いた → http://shokai.org/blog/archives/6513"
|
13
|
+
assert msg.char_length > msg.char_length_with_t_co
|
14
|
+
end
|
15
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tw
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-10-
|
12
|
+
date: 2012-10-17 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: oauth
|
@@ -233,6 +233,7 @@ files:
|
|
233
233
|
- lib/tw/app/render.rb
|
234
234
|
- lib/tw/client/auth.rb
|
235
235
|
- lib/tw/client/error.rb
|
236
|
+
- lib/tw/client/helper.rb
|
236
237
|
- lib/tw/client/request.rb
|
237
238
|
- lib/tw/client/stream.rb
|
238
239
|
- lib/tw/client/tweet.rb
|
@@ -244,6 +245,7 @@ files:
|
|
244
245
|
- script/destroy
|
245
246
|
- script/generate
|
246
247
|
- test/test_helper.rb
|
248
|
+
- test/test_t_co.rb
|
247
249
|
- test/test_tw.rb
|
248
250
|
- .gemtest
|
249
251
|
homepage: http://shokai.github.com/tw
|
@@ -262,7 +264,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
262
264
|
version: '0'
|
263
265
|
segments:
|
264
266
|
- 0
|
265
|
-
hash:
|
267
|
+
hash: 1015519835812409521
|
266
268
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
267
269
|
none: false
|
268
270
|
requirements:
|
@@ -277,4 +279,5 @@ specification_version: 3
|
|
277
279
|
summary: ! '* twitter client.'
|
278
280
|
test_files:
|
279
281
|
- test/test_helper.rb
|
282
|
+
- test/test_t_co.rb
|
280
283
|
- test/test_tw.rb
|