nicoapi 0.0.1 → 0.0.4.1

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,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