royw-dvdprofiler2xbmc 0.0.8 → 0.0.12
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +63 -31
- data/VERSION.yml +4 -0
- data/lib/dvdprofiler2xbmc/controllers/nfo_controller.rb +2 -1
- data/lib/dvdprofiler2xbmc.rb +4 -6
- data/spec/app_spec.rb +2 -2
- data/spec/dvdprofiler2xbmc_spec.rb +2 -1
- data/spec/samples/api.themoviedb.org/2.0/Movie.imdbLookup?imdb_id=tt0039349&api_key=7a2f6eb9b6aa01651000f0a9324db835 +8 -0
- data/spec/samples/api.themoviedb.org/2.0/Movie.imdbLookup?imdb_id=tt0060934&api_key=7a2f6eb9b6aa01651000f0a9324db835 +8 -0
- data/spec/samples/api.themoviedb.org/2.0/Movie.imdbLookup?imdb_id=tt0465234&api_key=7a2f6eb9b6aa01651000f0a9324db835 +26 -0
- data/spec/samples/www.imdb.com/find?q=Captain+Corelli%27s+Mandolin;s=tt +517 -0
- data/spec/samples/www.imdb.com/find?q=Flyboys;s=tt +517 -0
- data/spec/samples/www.imdb.com/find?q=National+Treasure%3A+Book+of+Secrets;s=tt +1044 -0
- data/spec/samples/www.imdb.com/find?q=National+Treasure+2;s=tt +1059 -0
- data/spec/samples/www.imdb.com/find?q=The+Alamo;s=tt +531 -0
- data/spec/samples/www.imdb.com/find?q=The+Egg+and+I;s=tt +497 -0
- metadata +41 -45
- data/.gitignore +0 -7
- data/dvdprofiler2xbmc.gemspec +0 -62
- data/lib/dvdprofiler2xbmc/models/imdb_profile.rb +0 -218
- data/lib/dvdprofiler2xbmc/models/tmdb_movie.rb +0 -136
- data/lib/dvdprofiler2xbmc/models/tmdb_profile.rb +0 -100
- data/spec/imdb_profile_spec.rb +0 -60
- data/spec/tmdb_movie_spec.rb +0 -84
- data/spec/tmdb_profile_spec.rb +0 -106
- data/tasks/rspec.rake +0 -21
data/Rakefile
CHANGED
@@ -1,34 +1,66 @@
|
|
1
|
-
%w[rubygems rake rake/clean fileutils newgem rubigen].each { |f| require f }
|
2
|
-
require File.dirname(__FILE__) + '/lib/dvdprofiler2xbmc'
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
[
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
1
|
+
# %w[rubygems rake rake/clean fileutils newgem rubigen].each { |f| require f }
|
2
|
+
#require File.dirname(__FILE__) + '/lib/dvdprofiler2xbmc'
|
3
|
+
require 'rubygems'
|
4
|
+
require 'rake'
|
5
|
+
require 'spec/rake/spectask'
|
6
|
+
require 'rake/rdoctask'
|
7
|
+
|
8
|
+
begin
|
9
|
+
require 'jeweler'
|
10
|
+
Jeweler::Tasks.new do |gem|
|
11
|
+
gem.name = "dvdprofiler2xbmc"
|
12
|
+
gem.summary = %Q{TODO}
|
13
|
+
gem.email = "roy@wright.org"
|
14
|
+
gem.homepage = "http://github.com/royw/dvdprofiler2xbmc"
|
15
|
+
gem.authors = ["Roy Wright"]
|
16
|
+
|
17
|
+
# gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
|
18
|
+
gem.add_dependency('activesupport','>= 2.0.2')
|
19
|
+
gem.add_dependency('xml-simple','>= 1.0.12')
|
20
|
+
gem.add_dependency('royw-imdb','>= 0.0.19')
|
21
|
+
gem.add_dependency('royw-tmdb','>= 0.0.1')
|
22
|
+
gem.add_dependency('log4r','>= 1.0.5')
|
23
|
+
gem.add_dependency('commandline','>= 0.7.10')
|
24
|
+
gem.add_dependency('mash','>= 0.0.3')
|
25
|
+
gem.add_dependency('highline', '>= 1.5.0')
|
26
|
+
|
27
|
+
gem.files.reject! do |fn|
|
28
|
+
result = false
|
29
|
+
basename = File.basename(fn)
|
30
|
+
result = true if basename =~ /^tt\d+\.html/
|
31
|
+
result = true if basename =~ /^Collection.yaml/
|
32
|
+
result
|
33
|
+
end
|
34
|
+
end
|
35
|
+
rescue LoadError
|
36
|
+
puts "Jeweler not available. Install it with: sudo gem install technicalpickles-jeweler -s http://gems.github.com"
|
37
|
+
end
|
38
|
+
|
39
|
+
Spec::Rake::SpecTask.new(:spec) do |spec|
|
40
|
+
spec.libs << 'lib' << 'spec'
|
41
|
+
spec.spec_files = FileList['spec/**/*_spec.rb']
|
42
|
+
end
|
43
|
+
|
44
|
+
Spec::Rake::SpecTask.new(:rcov) do |spec|
|
45
|
+
spec.libs << 'lib' << 'spec'
|
46
|
+
spec.pattern = 'spec/**/*_spec.rb'
|
47
|
+
spec.rcov = true
|
48
|
+
end
|
49
|
+
|
50
|
+
task :default => :spec
|
51
|
+
|
52
|
+
Rake::RDocTask.new do |rdoc|
|
53
|
+
if File.exist?('VERSION.yml')
|
54
|
+
config = YAML.load(File.read('VERSION.yml'))
|
55
|
+
version = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}"
|
56
|
+
else
|
57
|
+
version = ""
|
58
|
+
end
|
59
|
+
|
60
|
+
rdoc.rdoc_dir = 'rdoc'
|
61
|
+
rdoc.title = "dvdprofiler2xbmc #{version}"
|
62
|
+
rdoc.rdoc_files.include('README*')
|
63
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
28
64
|
end
|
29
65
|
|
30
|
-
require 'newgem/tasks' # load /tasks/*.rake
|
31
|
-
Dir['tasks/**/*.rake'].each { |t| load t }
|
32
66
|
|
33
|
-
# TODO - want other tests/tasks run by default? Add them to the list
|
34
|
-
# task :default => [:spec, :features]
|
data/VERSION.yml
ADDED
@@ -142,7 +142,8 @@ class NfoController
|
|
142
142
|
:media_years => [@media.year.to_i],
|
143
143
|
:production_years => dvd_hash[:productionyear],
|
144
144
|
:released_years => dvd_hash[:released],
|
145
|
-
:filespec => @media.path_to(:imdb_xml)
|
145
|
+
:filespec => @media.path_to(:imdb_xml),
|
146
|
+
:logger => AppConfig[:logger]
|
146
147
|
)
|
147
148
|
unless profile.nil?
|
148
149
|
self.imdb_id ||= profile.imdb_id
|
data/lib/dvdprofiler2xbmc.rb
CHANGED
@@ -6,6 +6,7 @@ require 'yaml'
|
|
6
6
|
require 'xmlsimple'
|
7
7
|
require 'ftools'
|
8
8
|
require 'imdb'
|
9
|
+
require 'tmdb'
|
9
10
|
require 'mash'
|
10
11
|
require 'log4r'
|
11
12
|
require 'ruby-debug'
|
@@ -18,14 +19,11 @@ require 'dvdprofiler2xbmc/controllers/nfo_controller'
|
|
18
19
|
require 'dvdprofiler2xbmc/controllers/thumbnail_controller'
|
19
20
|
require 'dvdprofiler2xbmc/models/collection'
|
20
21
|
require 'dvdprofiler2xbmc/models/dvdprofiler_profile'
|
21
|
-
require 'dvdprofiler2xbmc/models/imdb_profile'
|
22
22
|
require 'dvdprofiler2xbmc/models/media'
|
23
23
|
require 'dvdprofiler2xbmc/models/media_files'
|
24
|
-
require 'dvdprofiler2xbmc/models/tmdb_movie'
|
25
|
-
require 'dvdprofiler2xbmc/models/tmdb_profile'
|
26
24
|
require 'dvdprofiler2xbmc/models/xbmc_info'
|
27
25
|
|
28
26
|
|
29
|
-
module Dvdprofiler2xbmc
|
30
|
-
|
31
|
-
end
|
27
|
+
# module Dvdprofiler2xbmc
|
28
|
+
# VERSION = '0.0.8'
|
29
|
+
# end
|
data/spec/app_spec.rb
CHANGED
@@ -25,7 +25,7 @@ describe "App" do
|
|
25
25
|
|
26
26
|
it 'should save a file' do
|
27
27
|
# get a temp filename to a non-existing file
|
28
|
-
outfile = Tempfile.new('
|
28
|
+
outfile = Tempfile.new('app_spec', TMPDIR)
|
29
29
|
filespec = outfile.path
|
30
30
|
outfile.unlink
|
31
31
|
|
@@ -37,7 +37,7 @@ describe "App" do
|
|
37
37
|
|
38
38
|
it 'should backup the file before saving' do
|
39
39
|
# get a temp filename to a non-existing file
|
40
|
-
outfile = Tempfile.new('
|
40
|
+
outfile = Tempfile.new('app_spec', TMPDIR)
|
41
41
|
filespec = outfile.path
|
42
42
|
backupspec = filespec + AppConfig[:extensions][:backup]
|
43
43
|
outfile.unlink
|
@@ -84,7 +84,8 @@ describe "Dvdprofiler2xbmc" do
|
|
84
84
|
count += 1
|
85
85
|
imdb_profile = ImdbProfile.first(:titles => [dvd_hash[:title], title],
|
86
86
|
:production_years => dvd_hash[:productionyear],
|
87
|
-
:released_years => dvd_hash[:released]
|
87
|
+
:released_years => dvd_hash[:released],
|
88
|
+
:logger => AppConfig[:logger])
|
88
89
|
if imdb_profile.blank?
|
89
90
|
buf << "Can not find IMDB ID for #{isbn} #{title}"
|
90
91
|
else
|
@@ -0,0 +1,8 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<results for="tt0039349" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/">
|
3
|
+
<opensearch:Query searchTerms="tt0039349"/>
|
4
|
+
<opensearch:totalResults>0</opensearch:totalResults>
|
5
|
+
<moviematches>
|
6
|
+
<movie>Your query didn't return any results.</movie>
|
7
|
+
</moviematches>
|
8
|
+
</results>
|
@@ -0,0 +1,8 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<results for="tt0060934" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/">
|
3
|
+
<opensearch:Query searchTerms="tt0060934"/>
|
4
|
+
<opensearch:totalResults>0</opensearch:totalResults>
|
5
|
+
<moviematches>
|
6
|
+
<movie>Your query didn't return any results.</movie>
|
7
|
+
</moviematches>
|
8
|
+
</results>
|
@@ -0,0 +1,26 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<results for="tt0465234" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/">
|
3
|
+
<opensearch:Query searchTerms="tt0465234"/>
|
4
|
+
<opensearch:totalResults>1</opensearch:totalResults>
|
5
|
+
<moviematches>
|
6
|
+
<movie>
|
7
|
+
<score>1.0</score>
|
8
|
+
<popularity>6</popularity>
|
9
|
+
<title>National Treasure: Book of Secrets</title>
|
10
|
+
<alternative_title>National Treasure 2</alternative_title>
|
11
|
+
<type>movie</type>
|
12
|
+
<id>6637</id>
|
13
|
+
<imdb>tt0465234</imdb>
|
14
|
+
<url>http://www.themoviedb.org/movie/6637</url>
|
15
|
+
<short_overview>Treasure hunter Benjamin Franklin Gates looks to discover the truth behind the assassination of Abraham Lincoln, by uncovering the mystery within the 18 pages missing from assassin John Wilkes Booth's diary.</short_overview>
|
16
|
+
<release>2007-12-13</release>
|
17
|
+
<poster size="original">http://www.themoviedb.org/image/posters/6577/National_Treasure_Book_Of_Secrets_-_Poster_1__2007_.jpg</poster>
|
18
|
+
<poster size="mid">http://www.themoviedb.org/image/posters/6577/National_Treasure_Book_Of_Secrets_-_Poster_1__2007__mid.jpg</poster>
|
19
|
+
<poster size="cover">http://www.themoviedb.org/image/posters/6577/National_Treasure_Book_Of_Secrets_-_Poster_1__2007__cover.jpg</poster>
|
20
|
+
<poster size="thumb">http://www.themoviedb.org/image/posters/6577/National_Treasure_Book_Of_Secrets_-_Poster_1__2007__thumb.jpg</poster>
|
21
|
+
<backdrop size="original">http://www.themoviedb.org/image/backdrops/14621/National_Treasure_-_Book_Of_Secrets__XVID___2007_-fanart.jpg</backdrop>
|
22
|
+
<backdrop size="mid">http://www.themoviedb.org/image/backdrops/14621/National_Treasure_-_Book_Of_Secrets__XVID___2007_-fanart_poster.jpg</backdrop>
|
23
|
+
<backdrop size="thumb">http://www.themoviedb.org/image/backdrops/14621/National_Treasure_-_Book_Of_Secrets__XVID___2007_-fanart_thumb.jpg</backdrop>
|
24
|
+
</movie>
|
25
|
+
</moviematches>
|
26
|
+
</results>
|