weibo_focus 1.0.8 → 1.0.9

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.
Files changed (46) hide show
  1. data/.gitignore +17 -0
  2. data/example/.sass-cache/0d4365dd4f25a1b2574fe0fe2e903692b6df08f1/screen.sassc +0 -0
  3. data/example/.sass-cache/80b2331c862c6e430e0af18caf62d12d982610f0/screen.sassc +0 -0
  4. data/example/.sass-cache/faf9751221db0b5ce76d45351b9591c3bfc59441/screen.sassc +0 -0
  5. data/example/Gemfile +7 -0
  6. data/example/Gemfile~ +7 -0
  7. data/example/config.ru +2 -0
  8. data/example/example.rb +84 -0
  9. data/example/example.rb~ +84 -0
  10. data/example/views/index.haml +42 -0
  11. data/example/views/layout.haml +12 -0
  12. data/example/views/screen.sass +13 -0
  13. data/example/weibo.rb +7 -0
  14. data/lib/weibo_focus/access_token.rb +20 -0
  15. data/lib/weibo_focus/api/v2/account.rb +31 -0
  16. data/lib/weibo_focus/api/v2/base.rb +64 -0
  17. data/lib/weibo_focus/api/v2/comments.rb +51 -0
  18. data/lib/weibo_focus/api/v2/common.rb +28 -0
  19. data/lib/weibo_focus/api/v2/favorites.rb +59 -0
  20. data/lib/weibo_focus/api/v2/friendships.rb +64 -0
  21. data/lib/weibo_focus/api/v2/location.rb +83 -0
  22. data/lib/weibo_focus/api/v2/notification.rb +12 -0
  23. data/lib/weibo_focus/api/v2/place.rb +123 -0
  24. data/lib/weibo_focus/api/v2/register.rb +14 -0
  25. data/lib/weibo_focus/api/v2/remind.rb +23 -0
  26. data/lib/weibo_focus/api/v2/search.rb +38 -0
  27. data/lib/weibo_focus/api/v2/short_url.rb +49 -0
  28. data/lib/weibo_focus/api/v2/statuses.rb +117 -0
  29. data/lib/weibo_focus/api/v2/suggestions.rb +45 -0
  30. data/lib/weibo_focus/api/v2/tags.rb +36 -0
  31. data/lib/weibo_focus/api/v2/trends.rb +39 -0
  32. data/lib/weibo_focus/api/v2/users.rb +30 -0
  33. data/lib/weibo_focus/base.rb +6 -0
  34. data/lib/weibo_focus/client.rb +102 -0
  35. data/lib/weibo_focus/config.rb +28 -4
  36. data/lib/weibo_focus/config.rb~ +30 -0
  37. data/lib/weibo_focus/oauth.rb +6 -0
  38. data/lib/weibo_focus/strategy/auth_code.rb +12 -0
  39. data/lib/weibo_focus/version.rb +1 -1
  40. data/lib/weibo_focus/version.rb~ +3 -0
  41. data/lib/weibo_focus.rb +20 -9
  42. data/lib/weibo_focus.rb~ +51 -0
  43. data/spec/weibo_spec.rb +44 -0
  44. data/weibo_focus.gemspec +11 -13
  45. data/weibo_focus.gemspec~ +25 -0
  46. metadata +128 -6
@@ -0,0 +1,30 @@
1
+ #encoding:utf-8
2
+ module Weibo
3
+ module Config
4
+
5
+ def self.api_key=(val)
6
+ @@api_key = val
7
+ end
8
+
9
+ def self.api_key
10
+ @@api_key
11
+ end
12
+
13
+ def self.api_secret=(val)
14
+ @@api_secret = val
15
+ end
16
+
17
+ def self.api_secret
18
+ @@api_secret
19
+ end
20
+
21
+ def self.redirect_uri=(val)
22
+ @@redirect_uri = val
23
+ end
24
+
25
+ def self.redirect_uri
26
+ @@redirect_uri
27
+ end
28
+
29
+ end
30
+ end
@@ -0,0 +1,6 @@
1
+ require 'oauth2'
2
+
3
+ module Weibo
4
+ class Base
5
+ end
6
+ end
@@ -0,0 +1,12 @@
1
+ module Weibo
2
+ module Strategy
3
+ class AuthCode < OAuth2::Strategy::AuthCode
4
+ def get_token(code, params={}, opts={})
5
+ params = {'grant_type' => 'authorization_code',
6
+ 'code' => code,
7
+ 'redirect_uri' => Weibo::Config.redirect_uri.to_s}.merge(client_params).merge(params)
8
+ @client.get_and_restore_token(params, opts)
9
+ end
10
+ end
11
+ end
12
+ end
@@ -1,3 +1,3 @@
1
1
  module Weibo
2
- VERSION = "1.0.8"
2
+ VERSION = "1.0.9"
3
3
  end
@@ -0,0 +1,3 @@
1
+ module Weibo
2
+ VERSION = "1.0.3"
3
+ end
data/lib/weibo_focus.rb CHANGED
@@ -1,14 +1,25 @@
1
1
  require "weibo_focus/version"
2
- require "weibo_focus/config"
3
-
4
- module Weibo
5
- class IntFocus
6
- def say(name)
7
- puts "hi #{name}!"
8
- end
9
- end
10
- end
2
+ #require "weibo_focus/config"
3
+ require "weibo_focus/base"
4
+ require "weibo_focus/client"
5
+ require "weibo_focus/access_token"
6
+ require "weibo_focus/api/v2/base"
7
+ require "weibo_focus/api/v2/statuses"
8
+ require "weibo_focus/api/v2/users"
9
+ require "weibo_focus/api/v2/comments"
10
+ require "weibo_focus/api/v2/friendships"
11
+ require "weibo_focus/api/v2/account"
12
+ require "weibo_focus/api/v2/favorites"
13
+ require "weibo_focus/api/v2/trends"
14
+ require "weibo_focus/api/v2/tags"
15
+ require "weibo_focus/api/v2/register"
16
+ require "weibo_focus/api/v2/search"
17
+ require "weibo_focus/api/v2/short_url"
18
+ require "weibo_focus/api/v2/suggestions"
19
+ require "weibo_focus/api/v2/remind"
20
+ require "weibo_focus/strategy/auth_code"
11
21
 
22
+ #encoding:utf-8
12
23
  module Weibo
13
24
  module Config
14
25
 
@@ -0,0 +1,51 @@
1
+ require "weibo_focus/version"
2
+ require "weibo_focus/config"
3
+ require "weibo_focus/base"
4
+ require "weibo_focus/client"
5
+ require "weibo_focus/access_token"
6
+ require "weibo_focus/api/v2/base"
7
+ require "weibo_focus/api/v2/statuses"
8
+ require "weibo_focus/api/v2/users"
9
+ require "weibo_focus/api/v2/comments"
10
+ require "weibo_focus/api/v2/friendships"
11
+ require "weibo_focus/api/v2/account"
12
+ require "weibo_focus/api/v2/favorites"
13
+ require "weibo_focus/api/v2/trends"
14
+ require "weibo_focus/api/v2/tags"
15
+ require "weibo_focus/api/v2/register"
16
+ require "weibo_focus/api/v2/search"
17
+ require "weibo_focus/api/v2/short_url"
18
+ require "weibo_focus/api/v2/suggestions"
19
+ require "weibo_focus/api/v2/remind"
20
+ require "weibo_focus/strategy/auth_code"
21
+
22
+ #encoding:utf-8
23
+ module Weibo
24
+ module Config
25
+
26
+ def self.api_key=(val)
27
+ @@api_key = val
28
+ end
29
+
30
+ def self.api_key
31
+ @@api_key
32
+ end
33
+
34
+ def self.api_secret=(val)
35
+ @@api_secret = val
36
+ end
37
+
38
+ def self.api_secret
39
+ @@api_secret
40
+ end
41
+
42
+ def self.redirect_uri=(val)
43
+ @@redirect_uri = val
44
+ end
45
+
46
+ def self.redirect_uri
47
+ @@redirect_uri
48
+ end
49
+
50
+ end
51
+ end
@@ -0,0 +1,44 @@
1
+ require 'weibo_focus'
2
+
3
+ Weibo::Config.api_key = 'abc'
4
+ Weibo::Config.api_secret = 'def'
5
+ Weibo::Config.redirect_uri = 'https://example.com/callback'
6
+
7
+ describe Weibo::Client do
8
+ it 'should assign id and secret from config' do
9
+ subject.id.should == 'abc'
10
+ subject.secret.should == 'def'
11
+ end
12
+
13
+ it 'should assign site from default' do
14
+ subject.site.should == 'https://api.weibo.com/2/'
15
+ end
16
+
17
+ it 'should get authorize_url' do
18
+ authorize_url = 'https://api.weibo.com/oauth2/authorize?client_id=abc&response_type=code&redirect_uri=https%3A%2F%2Fexample.com%2Fcallback'
19
+ subject.authorize_url.should == authorize_url
20
+ end
21
+
22
+ it 'should leave Faraday::Connection#ssl unset' do
23
+ subject.connection.ssl.should == {}
24
+ end
25
+
26
+ it "defaults raise_errors to true" do
27
+ subject.options[:raise_errors].should be_true
28
+ end
29
+
30
+ it "allows true/false for raise_errors option" do
31
+ client = OAuth2::Client.new('abc', 'def', :site => 'https://api.example.com', :raise_errors => false)
32
+ client.options[:raise_errors].should be_false
33
+ client = OAuth2::Client.new('abc', 'def', :site => 'https://api.example.com', :raise_errors => true)
34
+ client.options[:raise_errors].should be_true
35
+ end
36
+
37
+ it "allows get/post for access_token_method option" do
38
+ client = OAuth2::Client.new('abc', 'def', :site => 'https://api.example.com', :access_token_method => :get)
39
+ client.options[:access_token_method].should == :get
40
+ client = OAuth2::Client.new('abc', 'def', :site => 'https://api.example.com', :access_token_method => :post)
41
+ client.options[:access_token_method].should == :post
42
+ end
43
+
44
+ end
data/weibo_focus.gemspec CHANGED
@@ -4,24 +4,22 @@ require File.expand_path('../lib/weibo_focus/version', __FILE__)
4
4
  Gem::Specification.new do |gem|
5
5
  gem.authors = ["jay_li"]
6
6
  gem.email = ["jay_li@intfocus.com"]
7
- gem.description = %q{oauth2 intface for sina weibo}
7
+ gem.description = %q{oauth2 intface for weibo}
8
8
  gem.summary = %q{for sina weibo}
9
- gem.homepage = ""
9
+ gem.homepage = "https://github.com/jay16/weibo_focus"
10
10
 
11
- # gem.files = `git ls-files`.split($\)
11
+ gem.files = `git ls-files`.split($\)
12
12
  gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
13
13
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
14
14
  gem.name = "weibo_focus"
15
15
  gem.require_paths = ["lib"]
16
16
  gem.version = Weibo::VERSION
17
- gem.files = [
18
- "Gemfile",
19
- "LICENSE",
20
- "README.md",
21
- "Rakefile",
22
- "lib/weibo_focus.rb",
23
- "lib/weibo_focus/version.rb",
24
- "lib/weibo_focus/config.rb",
25
- "weibo_focus.gemspec"
26
- ]
17
+
18
+ gem.add_development_dependency "rspec", "~> 2.6"
19
+
20
+ gem.add_runtime_dependency 'oauth2', "~> 0.8.0"
21
+ gem.add_runtime_dependency 'hashie', "~> 1.2.0"
22
+ gem.add_runtime_dependency 'json' , "~> 1.7.3"
23
+ gem.add_runtime_dependency 'rest-client', "~> 1.6.7"
24
+
27
25
  end
@@ -0,0 +1,25 @@
1
+ # -*- encoding: utf-8 -*-
2
+ require File.expand_path('../lib/weibo_focus/version', __FILE__)
3
+
4
+ Gem::Specification.new do |gem|
5
+ gem.authors = ["jay_li"]
6
+ gem.email = ["jay_li@intfocus.com"]
7
+ gem.description = %q{oauth2 intface for weibo}
8
+ gem.summary = %q{for sina weibo}
9
+ gem.homepage = "https://github.com/jay16/weibo_focus"
10
+
11
+ gem.files = `git ls-files`.split($\)
12
+ gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
13
+ gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
14
+ gem.name = "weibo_focus"
15
+ gem.require_paths = ["lib"]
16
+ gem.version = Weibo::VERSION
17
+
18
+ gem.add_development_dependency "rspec", "~> 2.6"
19
+
20
+ gem.add_runtime_dependency 'oauth2', "~> 0.8.0"
21
+ gem.add_runtime_dependency 'hashie', "~> 1.2.0"
22
+ gem.add_runtime_dependency 'json' , "~> 1.7.3"
23
+ gem.add_runtime_dependency 'rest-client', "~> 1.6.7"
24
+
25
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: weibo_focus
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.8
4
+ version: 1.0.9
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,23 +10,144 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
  date: 2012-07-30 00:00:00.000000000 Z
13
- dependencies: []
14
- description: oauth2 intface for sina weibo
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rspec
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '2.6'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '2.6'
30
+ - !ruby/object:Gem::Dependency
31
+ name: oauth2
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ~>
36
+ - !ruby/object:Gem::Version
37
+ version: 0.8.0
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: 0.8.0
46
+ - !ruby/object:Gem::Dependency
47
+ name: hashie
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ~>
52
+ - !ruby/object:Gem::Version
53
+ version: 1.2.0
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 1.2.0
62
+ - !ruby/object:Gem::Dependency
63
+ name: json
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ~>
68
+ - !ruby/object:Gem::Version
69
+ version: 1.7.3
70
+ type: :runtime
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ version: 1.7.3
78
+ - !ruby/object:Gem::Dependency
79
+ name: rest-client
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ~>
84
+ - !ruby/object:Gem::Version
85
+ version: 1.6.7
86
+ type: :runtime
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: 1.6.7
94
+ description: oauth2 intface for weibo
15
95
  email:
16
96
  - jay_li@intfocus.com
17
97
  executables: []
18
98
  extensions: []
19
99
  extra_rdoc_files: []
20
100
  files:
101
+ - .gitignore
21
102
  - Gemfile
22
103
  - LICENSE
23
104
  - README.md
24
105
  - Rakefile
106
+ - example/.sass-cache/0d4365dd4f25a1b2574fe0fe2e903692b6df08f1/screen.sassc
107
+ - example/.sass-cache/80b2331c862c6e430e0af18caf62d12d982610f0/screen.sassc
108
+ - example/.sass-cache/faf9751221db0b5ce76d45351b9591c3bfc59441/screen.sassc
109
+ - example/Gemfile
110
+ - example/Gemfile~
111
+ - example/config.ru
112
+ - example/example.rb
113
+ - example/example.rb~
114
+ - example/views/index.haml
115
+ - example/views/layout.haml
116
+ - example/views/screen.sass
117
+ - example/weibo.rb
25
118
  - lib/weibo_focus.rb
26
- - lib/weibo_focus/version.rb
119
+ - lib/weibo_focus.rb~
120
+ - lib/weibo_focus/access_token.rb
121
+ - lib/weibo_focus/api/v2/account.rb
122
+ - lib/weibo_focus/api/v2/base.rb
123
+ - lib/weibo_focus/api/v2/comments.rb
124
+ - lib/weibo_focus/api/v2/common.rb
125
+ - lib/weibo_focus/api/v2/favorites.rb
126
+ - lib/weibo_focus/api/v2/friendships.rb
127
+ - lib/weibo_focus/api/v2/location.rb
128
+ - lib/weibo_focus/api/v2/notification.rb
129
+ - lib/weibo_focus/api/v2/place.rb
130
+ - lib/weibo_focus/api/v2/register.rb
131
+ - lib/weibo_focus/api/v2/remind.rb
132
+ - lib/weibo_focus/api/v2/search.rb
133
+ - lib/weibo_focus/api/v2/short_url.rb
134
+ - lib/weibo_focus/api/v2/statuses.rb
135
+ - lib/weibo_focus/api/v2/suggestions.rb
136
+ - lib/weibo_focus/api/v2/tags.rb
137
+ - lib/weibo_focus/api/v2/trends.rb
138
+ - lib/weibo_focus/api/v2/users.rb
139
+ - lib/weibo_focus/base.rb
140
+ - lib/weibo_focus/client.rb
27
141
  - lib/weibo_focus/config.rb
142
+ - lib/weibo_focus/config.rb~
143
+ - lib/weibo_focus/oauth.rb
144
+ - lib/weibo_focus/strategy/auth_code.rb
145
+ - lib/weibo_focus/version.rb
146
+ - lib/weibo_focus/version.rb~
147
+ - spec/weibo_spec.rb
28
148
  - weibo_focus.gemspec
29
- homepage: ''
149
+ - weibo_focus.gemspec~
150
+ homepage: https://github.com/jay16/weibo_focus
30
151
  licenses: []
31
152
  post_install_message:
32
153
  rdoc_options: []
@@ -50,4 +171,5 @@ rubygems_version: 1.8.22
50
171
  signing_key:
51
172
  specification_version: 3
52
173
  summary: for sina weibo
53
- test_files: []
174
+ test_files:
175
+ - spec/weibo_spec.rb