nicoapi 0.0.1 → 0.0.4.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 85a27a872f8f739e54f3625c7e5e7d94f7e22d0c
4
- data.tar.gz: d61b31a878ac05fe5d641d277cd88a86088b7f90
3
+ metadata.gz: 0a3520fed29c4892f054b138419338f972479d4f
4
+ data.tar.gz: 1c26f1fadee7ac5460999736ffd5586719b60fe7
5
5
  SHA512:
6
- metadata.gz: e1de2052d855fdfe12a5434d299502c23f0004c242ced4717d2287ecc479efeea6955c9ed89869c7945c5842546469e7d2eb9e0887915e667704d132406156d8
7
- data.tar.gz: 88e5b5305a79fb3ef63979fe2159b4e4d0ae6b4ad7871411639d87cb7cf6fd9536d6729db8fe15b06eb3e80a1e0c9d49081f41de3715423a0b2570186715123c
6
+ metadata.gz: 13bd1d8d5e188ffc4b2e8d7be80831618aa19b5a2a407f7ea0a6e3ab3caf6caaffddf0828122c09f46bf1004007b618b57dde28cc2c3b115dd55659b1fbbfbdc
7
+ data.tar.gz: a6e40157df5e67bfd4eb73df6bfef5d76466828ee4ce8c78f48f35f77afdbf6d7d4866af776cd6b929987f60526e86dec74289fceff8dce6bc3c89dbb26e46c1
data/.gitignore CHANGED
@@ -1 +1,2 @@
1
- pkg
1
+ pkg
2
+ *.gem
data/.travis.yml ADDED
@@ -0,0 +1,3 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.0.0
data/Gemfile CHANGED
@@ -1,18 +1,5 @@
1
1
  source "https://rubygems.org"
2
2
 
3
- gem 'rest-client'
4
- gem 'active_support'
5
- gem 'i18n'
6
- gem 'nori'
7
- gem 'nokogiri'
8
-
9
- group :development, :test do
10
- gem 'pry'
11
- gem 'watchr'
12
- end
13
-
14
- group :test do
15
- gem 'rspec'
16
- gem 'factory_girl'
17
- end
3
+ gem "activesupport", "~> 4.0.0"
18
4
 
5
+ gemspec
data/Gemfile.lock CHANGED
@@ -1,47 +1,57 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ nicoapi (0.0.4.1)
5
+ activesupport (~> 4.0.0)
6
+ i18n
7
+ rest-client
8
+
1
9
  GEM
2
10
  remote: https://rubygems.org/
3
11
  specs:
4
- active_support (3.0.0)
5
- activesupport (= 3.0.0)
6
- activesupport (3.0.0)
12
+ activesupport (4.0.0)
13
+ i18n (~> 0.6, >= 0.6.4)
14
+ minitest (~> 4.2)
15
+ multi_json (~> 1.3)
16
+ thread_safe (~> 0.1)
17
+ tzinfo (~> 0.3.37)
18
+ atomic (1.1.12)
7
19
  coderay (1.0.9)
8
20
  diff-lcs (1.2.4)
9
- factory_girl (4.2.0)
10
- activesupport (>= 3.0.0)
11
21
  i18n (0.6.4)
12
- method_source (0.8.1)
22
+ method_source (0.8.2)
13
23
  mime-types (1.23)
14
- mini_portile (0.5.1)
15
- nokogiri (1.6.0)
16
- mini_portile (~> 0.5.0)
17
- nori (2.2.0)
24
+ minitest (4.7.5)
25
+ multi_json (1.7.8)
18
26
  pry (0.9.12.2)
19
27
  coderay (~> 1.0.5)
20
28
  method_source (~> 0.8)
21
29
  slop (~> 3.4)
30
+ rake (10.1.0)
22
31
  rest-client (1.6.7)
23
32
  mime-types (>= 1.16)
24
33
  rspec (2.14.1)
25
34
  rspec-core (~> 2.14.0)
26
35
  rspec-expectations (~> 2.14.0)
27
36
  rspec-mocks (~> 2.14.0)
28
- rspec-core (2.14.3)
37
+ rspec-core (2.14.4)
29
38
  rspec-expectations (2.14.0)
30
39
  diff-lcs (>= 1.1.3, < 2.0)
31
- rspec-mocks (2.14.1)
32
- slop (3.4.5)
40
+ rspec-mocks (2.14.2)
41
+ slop (3.4.6)
42
+ thread_safe (0.1.2)
43
+ atomic
44
+ tzinfo (0.3.37)
33
45
  watchr (0.7)
34
46
 
35
47
  PLATFORMS
36
48
  ruby
37
49
 
38
50
  DEPENDENCIES
39
- active_support
40
- factory_girl
41
- i18n
42
- nokogiri
43
- nori
51
+ activesupport (~> 4.0.0)
52
+ bundler (~> 1.3)
53
+ nicoapi!
44
54
  pry
45
- rest-client
55
+ rake
46
56
  rspec
47
57
  watchr
data/README.md ADDED
@@ -0,0 +1,31 @@
1
+ [![Build Status](https://secure.travis-ci.org/hdemon/NicoAPI.png)](http://travis-ci.org/hdemon/NicoAPI)
2
+
3
+ # NicoAPI::Core
4
+
5
+ TODO: Write a gem description
6
+
7
+ ## Installation
8
+
9
+ Add this line to your application's Gemfile:
10
+
11
+ gem 'NicoAPI'
12
+
13
+ And then execute:
14
+
15
+ $ bundle
16
+
17
+ Or install it yourself as:
18
+
19
+ $ gem install NicoAPI
20
+
21
+ ## Usage
22
+
23
+ TODO: Write usage instructions here
24
+
25
+ ## Contributing
26
+
27
+ 1. Fork it
28
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
29
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
30
+ 4. Push to the branch (`git push origin my-new-feature`)
31
+ 5. Create new Pull Request
data/Rakefile CHANGED
@@ -1 +1,11 @@
1
1
  require "bundler/gem_tasks"
2
+
3
+ task :default => [:spec]
4
+ begin
5
+ require 'rspec/core/rake_task'
6
+ RSpec::Core::RakeTask.new(:spec) do |spec|
7
+ spec.pattern = 'spec/**/*_spec.rb'
8
+ spec.rspec_opts = ['-cfs']
9
+ end
10
+ rescue LoadError => e
11
+ end
data/lib/nicoapi/base.rb CHANGED
@@ -1,4 +1,4 @@
1
- require 'nicoapi/http_client'
1
+ require 'NicoAPI/http_client'
2
2
 
3
3
 
4
4
  module NicoAPI
@@ -1,4 +1,4 @@
1
- require 'nicoapi/base'
1
+ require 'NicoAPI/base'
2
2
 
3
3
 
4
4
  module NicoAPI
@@ -0,0 +1,31 @@
1
+ require 'active_support/core_ext'
2
+ require 'NicoAPI/base'
3
+
4
+
5
+ module NicoAPI
6
+ class Mylist
7
+ include NicoAPI::Base
8
+
9
+ def set(mylist_id: mylist_id)
10
+ @dynamic_segment = mylist_id
11
+ @params_array = params_array
12
+ end
13
+
14
+ private
15
+ def host
16
+ 'www.nicovideo.jp'
17
+ end
18
+
19
+ def static_segment
20
+ 'mylist'
21
+ end
22
+
23
+ def params_array
24
+ [format]
25
+ end
26
+
27
+ def format
28
+ "rss=2.0"
29
+ end
30
+ end
31
+ end
@@ -1,14 +1,14 @@
1
1
  require 'active_support/core_ext'
2
- require 'nicoapi/base'
2
+ require 'NicoAPI/base'
3
3
 
4
4
 
5
5
  module NicoAPI
6
6
  class TagSearch
7
7
  include NicoAPI::Base
8
8
 
9
- def set(tag: tag, sort: sort, order: order)
9
+ def set(tag: tag, sort: sort, order: order, page: page)
10
10
  @dynamic_segment = tag
11
- @params_array = params_array(sort, order)
11
+ @params_array = params_array(sort, order, page)
12
12
  end
13
13
 
14
14
  private
@@ -20,14 +20,13 @@ module NicoAPI
20
20
  'tag'
21
21
  end
22
22
 
23
- def params_array(sort, order)
24
- array = []
25
-
26
- array.push sort_param(sort)
27
- array.push order_param(order)
28
- array.push "rss=2.0"
29
-
30
- array
23
+ def params_array(sort, order, page)
24
+ [
25
+ sort_param(sort),
26
+ order_param(order),
27
+ page_param(page),
28
+ format
29
+ ]
31
30
  end
32
31
 
33
32
  def format
@@ -36,12 +35,13 @@ module NicoAPI
36
35
 
37
36
  def sort_param(sort)
38
37
  sort_string = case sort
39
- when 'commented_at' then nil
40
- when 'view_count' then 'v'
41
- when 'comment_num' then 'r'
42
- when 'mylist_count' then 'm'
43
- when 'published_at' then 'f'
44
- when 'length' then 'l'
38
+ when :commented_at then nil
39
+ when :view_count then 'v'
40
+ when :comment_num then 'r'
41
+ when :mylist_count then 'm'
42
+ when :published_at then 'f'
43
+ when :length then 'l'
44
+ else nil
45
45
  end
46
46
 
47
47
  sort_string.present? ? "sort=#{sort_string}" : ''
@@ -49,11 +49,16 @@ module NicoAPI
49
49
 
50
50
  def order_param(order)
51
51
  order_string = case order
52
- when 'asc' then 'order=a'
52
+ when :asc then 'order=a'
53
+ when :desc then 'order=d'
53
54
  else nil
54
55
  end
55
56
 
56
- order_string.present? ? 'order=a' : ''
57
+ order_string.presence || ''
58
+ end
59
+
60
+ def page_param(page)
61
+ "page=#{page}"
57
62
  end
58
63
  end
59
64
  end
@@ -1,3 +1,3 @@
1
- module Nicoapi
2
- VERSION = "0.0.1"
1
+ module NicoAPI
2
+ VERSION = "0.0.4.1"
3
3
  end
@@ -1,4 +1,4 @@
1
- require 'nicoapi/base'
1
+ require 'NicoAPI/base'
2
2
 
3
3
 
4
4
  module NicoAPI
data/lib/nicoapi.rb CHANGED
@@ -1,8 +1,8 @@
1
- require "nicoapi/version"
1
+ require "NicoAPI/version"
2
2
 
3
- require "nicoapi/getthumbinfo"
4
- require "nicoapi/tag_search"
5
- require "nicoapi/video_array"
3
+ require "NicoAPI/getthumbinfo"
4
+ require "NicoAPI/tag_search"
5
+ require "NicoAPI/video_array"
6
6
 
7
7
 
8
8
  module NicoAPI
@@ -18,9 +18,9 @@ module NicoAPI
18
18
  instance.get
19
19
  end
20
20
 
21
- def tag_search(tag: tag, sort: sort, order: order)
21
+ def tag_search(tag: tag, sort: sort, order: order, page: page)
22
22
  instance = NicoAPI::TagSearch.new
23
- instance.set tag: tag, sort: sort, order: order
23
+ instance.set tag: tag, sort: sort, order: order, page: page
24
24
  instance.get
25
25
  end
26
26
 
data/nicoapi.gemspec CHANGED
@@ -1,11 +1,11 @@
1
1
  # coding: utf-8
2
2
  lib = File.expand_path('../lib', __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'nicoapi/version'
4
+ require 'NicoAPI/version'
5
5
 
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "nicoapi"
8
- spec.version = Nicoapi::VERSION
8
+ spec.version = NicoAPI::VERSION
9
9
  spec.authors = ["Masami Yonehara"]
10
10
  spec.email = ["zeitdiebe@gmail.com"]
11
11
  spec.description = %q{niconico low level api library}
@@ -18,6 +18,13 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
+ spec.add_runtime_dependency "activesupport", "~> 4.0.0"
22
+ spec.add_runtime_dependency "rest-client"
23
+ spec.add_runtime_dependency "i18n"
24
+
21
25
  spec.add_development_dependency "bundler", "~> 1.3"
22
26
  spec.add_development_dependency "rake"
27
+ spec.add_development_dependency "rspec"
28
+ spec.add_development_dependency "watchr"
29
+ spec.add_development_dependency "pry"
23
30
  end
@@ -1,13 +1,13 @@
1
- require './app/getthumbinfo'
1
+ require 'NicoAPI/getthumbinfo'
2
2
 
3
3
 
4
4
  describe "getthumbinfo" do
5
- describe "get" do
6
- before do
7
- @instance = NicoAPI::GetThumbInfo.new
8
- @instance.set video_id: 'sm9'
9
- end
5
+ before do
6
+ @instance = NicoAPI::GetThumbInfo.new
7
+ @instance.set 'sm9'
8
+ end
10
9
 
10
+ describe "uri" do
11
11
  subject { @instance.uri }
12
12
  specify {
13
13
  expect(subject).to match /http:\/\/ext\.nicovideo\.jp\/api\/getthumbinfo\/(sm|nm)\d/
@@ -0,0 +1,18 @@
1
+ require 'NicoAPI/mylist'
2
+
3
+
4
+ describe "mylist" do
5
+ before do
6
+ @instance = NicoAPI::Mylist.new
7
+ @instance.set mylist_id: "12345678"
8
+ end
9
+
10
+ describe "uri" do
11
+ subject { @instance.uri }
12
+
13
+ specify { expect(subject).to match /http:\/\/www\.nicovideo\.jp\/mylist/ }
14
+
15
+ specify { expect(subject).to match /12345678/ }
16
+ specify { expect(subject).to match /rss\=2\.0/ }
17
+ end
18
+ end
@@ -1,20 +1,20 @@
1
- require './app/tag_search'
1
+ require 'NicoAPI/tag_search'
2
2
 
3
3
 
4
4
  describe "tag_search" do
5
5
  before do
6
6
  @instance = NicoAPI::TagSearch.new
7
- @instance.set tag: 'ゆっくり実況プレイ', sort: 'published_at', order: 'asc'
7
+ @instance.set tag: 'ゆっくり実況プレイ', sort: :published_at, order: :asc, page: 1
8
8
  end
9
9
 
10
10
  describe "uri" do
11
11
  subject { @instance.uri }
12
- specify {
13
- # host and path
14
- expect(subject).to match /http:\/\/www\.nicovideo\.jp\/tag/
15
- # uri parameter
16
- expect(subject).to match /\?(sort=(v|r|m|f|l)){0,}/
17
- expect(subject).to match /\?(order=(a|d)){0,}/
18
- }
12
+
13
+ specify { expect(subject).to match /http:\/\/www\.nicovideo\.jp\/tag/ }
14
+
15
+ specify { expect(subject).to match /(sort=(v|r|m|f|l)){0,}/ }
16
+ specify { expect(subject).to match /(order=(a|d)){0,}/ }
17
+ specify { expect(subject).to match /(page=\d){1,}/ }
18
+ specify { expect(subject).to match /rss\=2\.0/ }
19
19
  end
20
20
  end
@@ -1,4 +1,5 @@
1
- require './app/video_array'
1
+ require 'NicoAPI/video_array'
2
+
2
3
 
3
4
  describe "VideoArray" do
4
5
  before do
metadata CHANGED
@@ -1,15 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nicoapi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Masami Yonehara
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-07-28 00:00:00.000000000 Z
11
+ date: 2013-08-08 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: activesupport
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: 4.0.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: 4.0.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: rest-client
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: i18n
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
13
55
  - !ruby/object:Gem::Dependency
14
56
  name: bundler
15
57
  requirement: !ruby/object:Gem::Requirement
@@ -38,6 +80,48 @@ dependencies:
38
80
  - - '>='
39
81
  - !ruby/object:Gem::Version
40
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rspec
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: watchr
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - '>='
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - '>='
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: pry
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - '>='
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
41
125
  description: niconico low level api library
42
126
  email:
43
127
  - zeitdiebe@gmail.com
@@ -47,8 +131,10 @@ extra_rdoc_files: []
47
131
  files:
48
132
  - .gitignore
49
133
  - .ruby-version
134
+ - .travis.yml
50
135
  - Gemfile
51
136
  - Gemfile.lock
137
+ - README.md
52
138
  - Rakefile
53
139
  - autorun.rb
54
140
  - lib/nicoapi.rb
@@ -56,11 +142,13 @@ files:
56
142
  - lib/nicoapi/getthumbinfo.rb
57
143
  - lib/nicoapi/hash_mapper.rb
58
144
  - lib/nicoapi/http_client.rb
145
+ - lib/nicoapi/mylist.rb
59
146
  - lib/nicoapi/tag_search.rb
60
147
  - lib/nicoapi/version.rb
61
148
  - lib/nicoapi/video_array.rb
62
149
  - nicoapi.gemspec
63
150
  - spec/getthumbinfo_spec.rb
151
+ - spec/mylist_spec.rb
64
152
  - spec/spec_helper.rb
65
153
  - spec/tag_search_spec.rb
66
154
  - spec/video_array_spec.rb
@@ -90,6 +178,7 @@ specification_version: 4
90
178
  summary: niconico low level api library
91
179
  test_files:
92
180
  - spec/getthumbinfo_spec.rb
181
+ - spec/mylist_spec.rb
93
182
  - spec/spec_helper.rb
94
183
  - spec/tag_search_spec.rb
95
184
  - spec/video_array_spec.rb