twitter-vine 0.1.6 → 0.1.7

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.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MjU3OWZiM2E1ZWY4YzNkNzFmY2I1YjNkMjEwMTkwNDA4ZDZhZGJiMQ==
4
+ NDAwNWM1Yjg4MmRlMzMxMzYwN2FmYjI4ZDlkMjc1ODRiMGY1NzUxMw==
5
5
  data.tar.gz: !binary |-
6
- N2MzMjFiNTBkMzU1ZDBiZjFlNTQzODhjMTE5MmRjN2E0MzUxZTk3YQ==
6
+ NzJiOThlNjNiZWQwYjQxMzFiOTY0ZDFlMDM1ZjQ3YTRmYzVhMWFkMA==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MzI4MjhjZDNhZmJkMzNiNWM5OGRmMmE5NDUzZDEzMzBhMDdmZjMzZWEzOWZk
10
- OTA5M2U4NDZjZmQ5NDQzNTlkZWMwNjA1NzBiNmRlN2Y2YjkxZjkwYWY0M2I1
11
- ZmI2NDVlNDIwNjJjNjg4MmY0ZGNhZDE1NWJhNWQ0YTIxZWZmM2M=
9
+ OWNmNjZhOTI2ZTMwM2RkMjhkN2MxOTcxYTIyNzg4ODllYTUxMDE2YTViMjI3
10
+ ZjlhOTBiZTNmZDVjMWE0NWNiOWUwNmIwZDE5ZmIwMTViODBlY2ZmOWI0NjZl
11
+ NjRhNGRhNjg0ODEzOTU0MDJlNTdmZjExNThhY2VhMDJlM2NhN2M=
12
12
  data.tar.gz: !binary |-
13
- NTA0ZTY2YmZiNzE3NzU0NDczZTMxYzM2YjBiYTc0MmJhZTg2ZDlkY2UyNzY4
14
- OTc2MWFjNzRkYzBmYWQyYjRmYzc3YWE5NWQ2NmMyMGY4MWJiYWZjODgxNTM0
15
- NzM5Y2U5ZjM4NzIwZDIzNzViMzljMWExYTIyMDFmMjFhNTZjYWM=
13
+ MWE4MzI5YjA2NTI0ZTFlYzBiNGVjNDRkM2QxOThlMjYxYjYzNjUyOTNkODkz
14
+ N2Y4ZjhlMjJiYTk3NmYzYzczYWZlMjM5NmFmNGE2YjU4MjllY2Q2NDk3MDc5
15
+ ZDRmMjRkNmNkYTJlNGFkY2I3NzYxMzdjZjk2NTc3NDc4NjRiZWM=
data/Gemfile.lock CHANGED
@@ -1,9 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- twitter-vine (0.1.6)
4
+ twitter-vine (0.1.7)
5
+ faraday (~> 0.8.9)
5
6
  nokogiri (>= 1.6.0)
6
- twitter (>= 5.5.1)
7
+ twitter (~> 5.1.1)
7
8
 
8
9
  GEM
9
10
  remote: http://rubygems.org/
@@ -14,16 +15,16 @@ GEM
14
15
  descendants_tracker (0.0.3)
15
16
  diff-lcs (1.2.5)
16
17
  equalizer (0.0.9)
17
- faraday (0.9.0)
18
- multipart-post (>= 1.2, < 3)
18
+ faraday (0.8.9)
19
+ multipart-post (~> 1.2.0)
19
20
  http (0.5.0)
20
21
  http_parser.rb
21
- http_parser.rb (0.6.0)
22
+ http_parser.rb (0.5.3)
22
23
  json (1.8.1)
23
- memoizable (0.4.0)
24
+ memoizable (0.2.0)
24
25
  thread_safe (~> 0.1.3)
25
26
  mini_portile (0.5.2)
26
- multipart-post (2.0.0)
27
+ multipart-post (1.2.0)
27
28
  nokogiri (1.6.1)
28
29
  mini_portile (~> 0.5.0)
29
30
  rake (10.1.1)
@@ -38,16 +39,16 @@ GEM
38
39
  simple_oauth (0.2.0)
39
40
  thread_safe (0.1.3)
40
41
  atomic
41
- twitter (5.5.1)
42
+ twitter (5.1.1)
42
43
  addressable (~> 2.3)
43
44
  buftok (~> 0.2.0)
44
- descendants_tracker (~> 0.0.3)
45
- equalizer (~> 0.0.9)
45
+ descendants_tracker (~> 0.0.1)
46
+ equalizer (~> 0.0.7)
46
47
  faraday (>= 0.8, < 0.10)
47
48
  http (~> 0.5.0)
48
- http_parser.rb (~> 0.6.0)
49
+ http_parser.rb (~> 0.5.0)
49
50
  json (~> 1.8)
50
- memoizable (~> 0.4.0)
51
+ memoizable (~> 0.2.0)
51
52
  simple_oauth (~> 0.2.0)
52
53
 
53
54
  PLATFORMS
@@ -48,26 +48,31 @@ module TwitterVine
48
48
  private
49
49
  # Does the processing inplace...
50
50
  def self._normalize(results)
51
- results.entries.map do |r|
51
+ results.to_h[:statuses].map do |r|
52
+ puts r
52
53
  vine_map = build_vine_map(r)
54
+ #puts "...mapping...#{r[:entities][:media]}"
53
55
  {
54
- time: r.created_at,
55
- id: r.id,
56
- url: r.url.to_s,
57
- author_id: r.user.id,
58
- author: r.user.name,
59
- screenname: r.user.screen_name,
60
- author_thumbnail: r.user.profile_image_url.to_s.gsub("normal","bigger"),
61
- text: r.text,
62
- friends_count: r.user.friends_count,
63
- followers_count: r.user.followers_count,
64
- # media: r.media.map{|m| m.media_uri.to_s},
56
+ time: (Time.parse(r[:created_at]) rescue Time.now),
57
+ id: r[:id],
58
+ url: "https://twitter.com/#{r[:user][:screen_name]}/status/#{r[:id]}",
59
+ author_id: r[:user][:id],
60
+ author: r[:user][:name],
61
+ screenname: r[:user][:screen_name],
62
+ author_thumbnail: r[:user][:profile_image_url].gsub("normal","bigger"),
63
+ bg_color: r[:user][:profile_background_color],
64
+ text_color: r[:user][:profile_text_color],
65
+ text: r[:text],
66
+ friends_count: r[:user][:friends_count],
67
+ followers_count: r[:user][:followers_count],
68
+ #media: r.media.map{|m| m.media_uri.to_s}
69
+ #media: (r[:entities][:media].map{|m| m[:media_url]} rescue [])
65
70
  }.merge(vine_map)
66
- end.compact
71
+ end.compact
67
72
  end
68
73
 
69
74
  def self.build_vine_map(twitter_result)
70
- vine_url = twitter_result.urls.map do |u|
75
+ vine_url = twitter_result[:entities][:urls].map do |u|
71
76
  if u[:display_url] =~ /vine\.co\/v/
72
77
  u[:expanded_url].to_s
73
78
  end
@@ -75,7 +80,6 @@ module TwitterVine
75
80
  TwitterVine.parse(vine_url)
76
81
  end
77
82
 
78
-
79
83
  end
80
84
  end
81
85
 
@@ -1,3 +1,3 @@
1
1
  module TwitterVine
2
- VERSION = "0.1.6"
2
+ VERSION = "0.1.7"
3
3
  end
data/spec/spec_helper.rb CHANGED
@@ -22,16 +22,22 @@ TwitterVine::Client.setup do |c|
22
22
  end
23
23
 
24
24
  class MockTweet
25
- def url;"https://twitter.com/DesliParra/status/407413145792413696";end
26
- def urls;[{display_url:"vine.co/v/hF7WOEl76T1", expanded_url:"https://vine.co/v/hF7WOEl76T1"}];end
27
- end
28
-
25
+ def self.normal
26
+ { entities: { url:"https://twitter.com/DesliParra/status/407413145792413696",
27
+ urls:[{display_url:"vine.co/v/hF7WOEl76T1", expanded_url:"https://vine.co/v/hF7WOEl76T1"}]
28
+ }
29
+ }
30
+ end
29
31
 
30
- class MockTweetWithHttpVineUrl
31
- def url;"https://twitter.com/DesliParra/status/407413145792413696";end
32
- def urls;[{display_url:"vine.co/v/hF7WOEl76T1", expanded_url:"http://vine.co/v/hF7WOEl76T1"}];end
32
+ def self.withHttpVineUrl
33
+ { entities: { url:"https://twitter.com/DesliParra/status/407413145792413696",
34
+ urls:[{display_url:"vine.co/v/hF7WOEl76T1", expanded_url:"http://vine.co/v/hF7WOEl76T1"}]
35
+ }
36
+ }
37
+ end
33
38
  end
34
39
 
40
+
35
41
  shared_context "vine results" do
36
42
 
37
43
  def expect_results(vine_map)
@@ -16,16 +16,18 @@ describe TwitterVine do
16
16
  #
17
17
  # it "should return results" do
18
18
  # l = TwitterVine::Client.search("Prank")
19
+ # puts "-------------------------------------------"
19
20
  # puts l
21
+ # puts "-------------------------------------------"
20
22
  # expect(l.size).to be > 0
21
23
  # end
22
24
 
23
25
  it "should be able to scrape Vine metadata from a Twitter API result" do
24
- expect_results(TwitterVine::Client.send :build_vine_map, MockTweet.new)
26
+ expect_results(TwitterVine::Client.send :build_vine_map, MockTweet.normal)
25
27
  end
26
28
 
27
29
  it "should be able to scrape Vine metadata from a Twitter API result even if expanded_url is http instead of https" do
28
- expect_results(TwitterVine::Client.send :build_vine_map, MockTweetWithHttpVineUrl.new)
30
+ expect_results(TwitterVine::Client.send :build_vine_map, MockTweet.withHttpVineUrl)
29
31
  end
30
32
 
31
33
  it "can parse a direct vine url" do
data/twitter-vine.gemspec CHANGED
@@ -20,7 +20,8 @@ Gem::Specification.new do |s|
20
20
 
21
21
  # Gem dependencies
22
22
  #
23
- s.add_runtime_dependency('twitter', '>=5.5.1')
23
+ s.add_runtime_dependency('twitter', '~>5.1.1')
24
+ s.add_runtime_dependency('faraday', '~>0.8.9')
24
25
  s.add_runtime_dependency('nokogiri', '>= 1.6.0')
25
26
 
26
27
  # Specs
metadata CHANGED
@@ -1,29 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twitter-vine
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Darren Hicks
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-01-25 00:00:00.000000000 Z
11
+ date: 2014-02-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: twitter
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ! '>='
17
+ - - ~>
18
18
  - !ruby/object:Gem::Version
19
- version: 5.5.1
19
+ version: 5.1.1
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ! '>='
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: 5.1.1
27
+ - !ruby/object:Gem::Dependency
28
+ name: faraday
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: 0.8.9
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ~>
25
39
  - !ruby/object:Gem::Version
26
- version: 5.5.1
40
+ version: 0.8.9
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: nokogiri
29
43
  requirement: !ruby/object:Gem::Requirement