sofa 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 77023bd6c06d0b94e52b15e480be3e6aad45935d
4
+ data.tar.gz: fa4d22d0db1981257a968625654bac3c7f910ba7
5
+ SHA512:
6
+ metadata.gz: 4f1c6ae22b5f992da2d7b41564752ba9ccb15fbf7018a7f9bd7aa0973548d01a33a2007542ff599204d69017f5242051e086568d22440e2b09cb91d9e1bf8881
7
+ data.tar.gz: 3ba6deb9d884355871655d3583733ca27eeccb8ac49b3f07a08467c4e8f9d4c36e8ed0cf038d06d6c4b43fa69beecbcbcd90ecace8046b049f9bb58946ab668c
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Sofa
2
2
 
3
- A simple Ruby library for the TVRage API (viewable [here](http://services.tvrage.com/index.php?page=public)).
3
+ A simple Ruby library for the TVRage API (viewable [here](http://services.tvrage.com/info.php?page=main)).
4
4
 
5
5
  ## Shows
6
6
 
@@ -8,6 +8,11 @@ A simple Ruby library for the TVRage API (viewable [here](http://services.tvrage
8
8
  OR
9
9
  show = Sofa::TVRage::Show.new("15614") # => #<Sofa::TVRage::Show:0x1012ec3c0 @name="Chuck", @show_id="15614", ...>
10
10
 
11
+ #### List
12
+ Sofa::TVRage::Show.list #=> [ {"id"=>"1", "name"=>"Fernwood 2Night", "country"=>"US", "status"=>"2"},
13
+ {"id"=>"2", "name"=>"America 2Night", "country"=>"US", "status"=>"2"}}, {}
14
+ ]
15
+
11
16
  #### Eager loading Season and Episode info
12
17
 
13
18
  Sofa::TVRage::Show.by_name("Chuck", :greedy => true)
data/Rakefile CHANGED
@@ -21,57 +21,57 @@ begin
21
21
  # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
22
22
  end
23
23
  Jeweler::GemcutterTasks.new
24
- rescue LoadError
24
+ rescue LoadError => e
25
25
  puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
26
26
  end
27
27
 
28
- # require 'spec/rake/spectask'
29
- # Spec::Rake::SpecTask.new(:spec) do |spec|
30
- # spec.libs << 'lib' << 'spec'
31
- # spec.spec_files = FileList['spec/**/*_spec.rb']
32
- # end
28
+ require 'spec/rake/spectask'
29
+ Spec::Rake::SpecTask.new(:spec) do |spec|
30
+ spec.libs << 'lib' << 'spec'
31
+ spec.spec_files = FileList['spec/**/*_spec.rb']
32
+ end
33
33
 
34
- # Spec::Rake::SpecTask.new(:rcov) do |spec|
35
- # spec.libs << 'lib' << 'spec'
36
- # spec.pattern = 'spec/**/*_spec.rb'
37
- # spec.rcov = true
38
- # spec.rcov_opts = %w{--exclude spec/*,gems/*}
39
- # end
34
+ Spec::Rake::SpecTask.new(:rcov) do |spec|
35
+ spec.libs << 'lib' << 'spec'
36
+ spec.pattern = 'spec/**/*_spec.rb'
37
+ spec.rcov = true
38
+ spec.rcov_opts = %w{--exclude spec/*,gems/*}
39
+ end
40
40
 
41
- # task :spec => :check_dependencies
41
+ task :spec => :check_dependencies
42
42
 
43
- # begin
44
- # require 'reek/adapters/rake_task'
45
- # Reek::RakeTask.new do |t|
46
- # t.fail_on_error = true
47
- # t.verbose = false
48
- # t.source_files = 'lib/**/*.rb'
49
- # end
50
- # rescue LoadError
51
- # task :reek do
52
- # abort "Reek is not available. In order to run reek, you must: sudo gem install reek"
53
- # end
54
- # end
43
+ begin
44
+ require 'reek/adapters/rake_task'
45
+ Reek::RakeTask.new do |t|
46
+ t.fail_on_error = true
47
+ t.verbose = false
48
+ t.source_files = 'lib/**/*.rb'
49
+ end
50
+ rescue LoadError
51
+ task :reek do
52
+ abort "Reek is not available. In order to run reek, you must: sudo gem install reek"
53
+ end
54
+ end
55
55
 
56
- # begin
57
- # require 'roodi'
58
- # require 'roodi_task'
59
- # RoodiTask.new do |t|
60
- # t.verbose = false
61
- # end
62
- # rescue LoadError
63
- # task :roodi do
64
- # abort "Roodi is not available. In order to run roodi, you must: sudo gem install roodi"
65
- # end
66
- # end
56
+ begin
57
+ require 'roodi'
58
+ require 'roodi_task'
59
+ RoodiTask.new do |t|
60
+ t.verbose = false
61
+ end
62
+ rescue LoadError
63
+ task :roodi do
64
+ abort "Roodi is not available. In order to run roodi, you must: sudo gem install roodi"
65
+ end
66
+ end
67
67
 
68
- # task :default => :spec
68
+ task :default => :spec
69
69
 
70
- # begin
71
- # require 'yard'
72
- # YARD::Rake::YardocTask.new
73
- # rescue LoadError
74
- # task :yardoc do
75
- # abort "YARD is not available. In order to run yardoc, you must: sudo gem install yard"
76
- # end
77
- # end
70
+ begin
71
+ require 'yard'
72
+ YARD::Rake::YardocTask.new
73
+ rescue LoadError
74
+ task :yardoc do
75
+ abort "YARD is not available. In order to run yardoc, you must: sudo gem install yard"
76
+ end
77
+ end
@@ -10,6 +10,15 @@ module Sofa
10
10
  base_uri 'services.tvrage.com'
11
11
 
12
12
  class << self
13
+ # Gets the list of all shows
14
+ #
15
+ # @return [Hash] The parsed XML
16
+ # @see http://services.tvrage.com/feeds/show_list.php
17
+ def list
18
+ xml = get('/feeds/show_list.php', query: {})
19
+ xml["shows"]['show']
20
+ end
21
+
13
22
  # Gets the info for a Show.
14
23
  #
15
24
  # @param sid [String] The show's id
@@ -2,7 +2,7 @@ module Sofa
2
2
  module Version
3
3
  MAJOR = 0
4
4
  MINOR = 1
5
- PATCH = 3
5
+ PATCH = 4
6
6
  STRING = "#{MAJOR}.#{MINOR}.#{PATCH}"
7
7
  end
8
8
  end
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "sofa"
8
- s.version = "0.1.3"
8
+ s.version = "0.1.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Henry Hsu"]
@@ -9,6 +9,20 @@ describe Show do
9
9
  FakeWeb.register_uri(:get, "http://services.tvrage.com/feeds/showinfo.php?sid=#{@id}", :body => @show_xml)
10
10
  end
11
11
 
12
+ describe "show list" do
13
+ before do
14
+ @shows_xml = File.read("spec/fixtures/tvrage/show_list.xml")
15
+ FakeWeb.register_uri(:get, "http://services.tvrage.com/feeds/show_list.php", :body => @shows_xml)
16
+
17
+ @info = Crack::XML.parse(@shows_xml)
18
+ @shows = [Season.new(@info["Shows"]["show"])]
19
+ end
20
+
21
+ it "should get shows_list" do
22
+ subject.list.should == @shows
23
+ end
24
+ end
25
+
12
26
  describe "with id" do
13
27
  subject { Show.new(@id) }
14
28
 
metadata CHANGED
@@ -1,110 +1,97 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sofa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
5
- prerelease:
4
+ version: 0.1.4
6
5
  platform: ruby
7
6
  authors:
8
7
  - Henry Hsu
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-01-22 00:00:00.000000000 Z
11
+ date: 2014-11-19 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: httparty
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: crack
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ">="
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: rspec
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ">="
52
46
  - !ruby/object:Gem::Version
53
47
  version: 1.2.9
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - ">="
60
53
  - !ruby/object:Gem::Version
61
54
  version: 1.2.9
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: mocha
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - ">="
68
60
  - !ruby/object:Gem::Version
69
61
  version: '0'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - ">="
76
67
  - !ruby/object:Gem::Version
77
68
  version: '0'
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: fakeweb
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - ">="
84
74
  - !ruby/object:Gem::Version
85
75
  version: '0'
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - ">="
92
81
  - !ruby/object:Gem::Version
93
82
  version: '0'
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: yard
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
- - - ! '>='
87
+ - - ">="
100
88
  - !ruby/object:Gem::Version
101
89
  version: '0'
102
90
  type: :development
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
- - - ! '>='
94
+ - - ">="
108
95
  - !ruby/object:Gem::Version
109
96
  version: '0'
110
97
  description: A simple Ruby library for the TVRage API.
@@ -115,8 +102,8 @@ extra_rdoc_files:
115
102
  - LICENSE
116
103
  - README.md
117
104
  files:
118
- - .document
119
- - .yardopts
105
+ - ".document"
106
+ - ".yardopts"
120
107
  - LICENSE
121
108
  - README.md
122
109
  - Rakefile
@@ -180,26 +167,25 @@ files:
180
167
  - spec/spec_helper.rb
181
168
  homepage: http://github.com/hsume2/sofa
182
169
  licenses: []
170
+ metadata: {}
183
171
  post_install_message:
184
172
  rdoc_options: []
185
173
  require_paths:
186
174
  - lib
187
175
  required_ruby_version: !ruby/object:Gem::Requirement
188
- none: false
189
176
  requirements:
190
- - - ! '>='
177
+ - - ">="
191
178
  - !ruby/object:Gem::Version
192
179
  version: '0'
193
180
  required_rubygems_version: !ruby/object:Gem::Requirement
194
- none: false
195
181
  requirements:
196
- - - ! '>='
182
+ - - ">="
197
183
  - !ruby/object:Gem::Version
198
184
  version: '0'
199
185
  requirements: []
200
186
  rubyforge_project:
201
- rubygems_version: 1.8.24
187
+ rubygems_version: 2.2.2
202
188
  signing_key:
203
- specification_version: 3
189
+ specification_version: 4
204
190
  summary: A Ruby library for the TVRage API.
205
191
  test_files: []