movieDB 0.1.6 → 0.1.7

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.
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # MovieDB - Movie Data Analysis Tool
1
+ MovieDB - Movie Data Analysis Tool
2
2
 
3
3
  ## Description
4
4
 
@@ -10,6 +10,10 @@ Basic functions and Data Analysis:
10
10
  * Exploratory Data Analysis
11
11
  * Confirmatory Data Analysis
12
12
 
13
+ ## Requirements
14
+
15
+ ruby 1.9.x
16
+
13
17
  ## Installation
14
18
 
15
19
  Add this line to your application's Gemfile:
data/lib/movieDB.rb CHANGED
@@ -2,6 +2,7 @@ require "rubygems"
2
2
  require "time"
3
3
  require "open-uri"
4
4
  require "nokogiri"
5
+ require "zimdb"
5
6
  require "imdb"
6
7
  require "spreadsheet"
7
8
  require "MovieDB/base"
@@ -28,31 +29,78 @@ unless defined? MovieDB::Movie
28
29
 
29
30
  const_set("MovieError", Class.new(StandardError))
30
31
 
31
- attr_accessor :title, :cast, :director, :released_date, :film_release, :writer,
32
- :unique_id, :genre, :academy_award_nomination, :academy_award_wins, :golden_globe_nominations, :golden_globe_wins,
33
- :bafta_nomination, :bafta_wins, :worldwide_gross
34
- alias :released? :film_release
35
-
36
- DEFAULT_TITLE = "Method Missing"
37
- DEFAULT_CAST = ['David Black', "Paola Perotta", "Obie Fernandez", "David Chelimsky"]
32
+ attr_accessor :title,
33
+ :cast_members,
34
+ :cast_characters,
35
+ :cast_member_ids,
36
+ :cast_members_characters,
37
+ :trailer_url,
38
+ :director,
39
+ :writer,
40
+ :filming_locations,
41
+ :company,
42
+ :genres,
43
+ :languages,
44
+ :countries,
45
+ :length,
46
+ :plot,
47
+ :poster,
48
+ :rating,
49
+ :votes,
50
+ :mpaa_rating,
51
+ :tagline,
52
+ :year,
53
+ :release_date,
54
+ :released,
55
+ :unique_id,
56
+ :academy_award_nomination,
57
+ :academy_award_wins,
58
+ :golden_globe_nominations,
59
+ :golden_globe_wins,
60
+ :bafta_nomination,
61
+ :bafta_wins,
62
+ :worldwide_gross,
63
+ :film_release
64
+
65
+ DEFAULT_TITLE = "Method Missing 2: Rails Roars!"
66
+ DEFAULT_CAST_MEMBERS = ["David Black", "Paola Perotta", "Obie Fernandez", "David Chelimsky"]
67
+ DEFAULT_CAST_CHARACTERS = ["Developer", "Police Officer", "Hunter", "Hostage"]
68
+ DEFAULT_CAST_MEMBERS_CHARACTERS = ["David Black => Developer", "Paola Perotta => Police Officer",
69
+ "Obie Fernandez =>Hunter", "David Chelimsky =>Hostage"]
70
+ DEFAULT_CAST_MEMBER_IDS = ["nm3901234", "nm4901244", "nm5901235", "nm3601266"]
71
+ DEFAULT_TRAILER_URL = "http://imdb.com/video/screenplay/vi581042457/"
38
72
  DEFAULT_DIRECTOR = "Yukihiro 'Matz' Matsumoto"
39
- DEFAULT_RELEASED_DATE = "2005-12-13"
40
- DEFAULT_FILM_RELEASE = ['theatrical', 'video', 'television', 'internet', 'print']
41
73
  DEFAULT_WRITER = 'David Heinemeier Hansson'
74
+ DEFAULT_FILMING_LOCATIONS = ["Manhattan, New York, USA"]
75
+ DEFAULT_COMPANY = "Open Source Community Film Corporation"
76
+ DEFAULT_GENRES = ["Bromantic", "Syfy"]
77
+ DEFAULT_LANGUAGES = ["English", "German", "Italian"]
78
+ DEFAULT_COUNTRIES = ["USA", "Germany", "Italy"]
79
+ DEFAULT_LENGTH = 146
80
+ DEFAULT_PLOT = ["David Black, a developer, tries to write his flagship ruby book 'The Well-Grounded Rubyist vol. 186' only to find out that Ruby 9.0.2 and Rails 16.0.3 release dates have been postponed"]
81
+ DEFAULT_POSTER = "http://ia.media-imdb.com/images/M/MV5BMTY@@.jpg"
82
+ DEFAULT_RATING = 9.9
83
+ DEFAULT_VOTES = 110636
84
+ DEFAULT_MPAA_RATING = "Rated R for dynamic OOD language usage and private methods access (certificate 33087)"
85
+ DEFAULT_TAGLINE = 'Only One MVC Will rule Them All.'
86
+ DEFAULT_YEAR = 2013
87
+ DEFAULT_RELEASE_DATE = "11 October 2013 (USA)"
42
88
  DEFAULT_UNIQUE_ID = @unique_id
43
- DEFAULT_GENRE = ["Bromantic", "Syfy"]
44
89
  DEFAULT_ACADEMY_AWARD_NOMINATION = 4
45
90
  DEFAULT_ACADEMY_AWARD_WINS = 3
46
91
  DEFAULT_GOLDEN_GLOBE_NOMINATIONS = 4
47
92
  DEFAULT_GOLDEN_GLOBE_WINS = 2
48
93
  DEFAULT_BAFTA_NOMINATION = 3
49
94
  DEFAULT_BAFTA_WINS = 1
50
- DEFAULT_WORLDWIDE_GROSS = "$9750 Million"
95
+ DEFAULT_FILM_RELEASE = ['theatrical', 'video', 'television', 'internet', 'print']
96
+ DEFAULT_WORLDWIDE_GROSS = "$124.6M" # Not provided by imdb api.
51
97
 
52
98
  def initialize(attributes = {})
53
- movie_attr = %w(title cast director re leased_date film_release writer unique_id
54
- genre academy_award_nomination academy_award_wins golden_globe_nominations
55
- golden_globe_wins bafta_nomination bafta_wins worldwide_gross)
99
+ movie_attr = %w(title cast_members cast_characters cast_member_ids cast_members_characters
100
+ trailer_url director writer filming_locations company genres languages countries
101
+ length plot poster rating votes mpaa_rating tagline year release_date unique_id
102
+ academy_award_nomination academy_award_wins golden_globe_nominations golden_globe_wins
103
+ bafta_nomination bafta_wins film_release worldwide_gross)
56
104
  movie_attr.each do |attr|
57
105
  self.send "#{attr}=", (attributes.has_key?(attr.to_sym) ? attributes[attr.to_sym] : self.class.const_get("DEFAULT_#{attr.upcase}"))
58
106
  end
@@ -73,35 +121,73 @@ unless defined? MovieDB::Movie
73
121
  @unique_id ||= "#{Date.today}#{Array.new(9){rand(9)}.join}".gsub('-','')
74
122
  end
75
123
 
124
+
76
125
  class << self
77
- def create_movie_info(title, cast, director, released_date, film_release, writer, unique_id,
78
- genre, academy_award_nomination, academy_award_wins, golden_globe_nominations,
79
- golden_globe_wins, bafta_nomination, bafta_wins, worldwide_gross)
80
126
 
127
+ ##
128
+ # Get the data from imdb
129
+
130
+ def get_imdb_movie_data(value)
131
+ puts zimdb_value = "tt" << value.to_s
132
+ @movie_data = Imdb::Movie.new(value.to_s)
133
+ @zimdb_data = Zimdb::Movie.new( :id => zimdb_value)
134
+ return @movie_data
135
+ return @zimdb_data
136
+ end
137
+
138
+ def imdb_movie_search(name)
139
+ @movie_search = Imdb::Movie.search(name.to_s)
140
+ end
141
+
142
+ def create_movie_info(value)
143
+ get_imdb_movie_data(value)
81
144
  @movie_DS ||=[]
82
145
  movie_info = Movie.new
83
- movie_info.title = title
84
- movie_info.cast = cast
85
- movie_info.director = director
86
- movie_info.released_date = released_date
87
- movie_info.film_release = film_release
88
- movie_info.writer = writer
89
- movie_info.unique_id = @unique_id
90
- movie_info.genre = genre
91
- movie_info.academy_award_nomination = academy_award_nomination
92
- movie_info.academy_award_wins = academy_award_wins
93
- movie_info.golden_globe_nominations = golden_globe_nominations
94
- movie_info.golden_globe_wins = golden_globe_wins
95
- movie_info.bafta_nomination = bafta_nomination
96
- movie_info.bafta_wins = bafta_wins
97
- movie_info.worldwide_gross = worldwide_gross
146
+ movie_info.title = @movie_data.title
147
+ movie_info.cast_members = @movie_data.cast_members
148
+ movie_info.cast_member_ids = @movie_data.cast_member_ids
149
+ movie_info.cast_characters = @movie_data.cast_characters
150
+ movie_info.cast_members_characters = @movie_data.cast_members_characters
151
+ movie_info.trailer_url = @movie_data.trailer_url
152
+ movie_info.director = @movie_data.director
153
+ movie_info.writer = Array.new << @zimdb_data.writer
154
+ movie_info.filming_locations = @movie_data.filming_locations
155
+ movie_info.company = Array.new << @movie_data.company
156
+ movie_info.genres =@movie_data.genres
157
+ movie_info.languages = @movie_data.languages
158
+ movie_info.countries = @movie_data.countries
159
+ movie_info.length = Array.new << @movie_data
160
+ movie_info.plot = Array.new << @movie_data.plot
161
+ movie_info.poster = Array.new << @movie_data.poster
162
+ movie_info.rating = Array.new << @movie_data.rating
163
+ movie_info.votes = @movie_data.votes
164
+ movie_info.mpaa_rating = Array.new << @movie_data.mpaa_rating
165
+ movie_info.tagline = Array.new << @movie_data.tagline
166
+ movie_info.year = Array.new << @movie_data.year
167
+ movie_info.release_date = Array.new << @movie_data.release_date
168
+ movie_info.unique_id = @unique_id
169
+
170
+ ##
171
+ # TODO: Write API for the AMPAS.
172
+
173
+ #movie_info.academy_award_nomination = academy_award_nomination
174
+ #movie_info.academy_award_wins = academy_award_wins
175
+ #movie_info.golden_globe_nominations = golden_globe_nominations
176
+ #movie_info.golden_globe_wins = golden_globe_wins
177
+ #movie_info.bafta_nomination = bafta_nomination
178
+ #movie_info.bafta_wins = bafta_wins
179
+ #movie_info.worldwide_gross = worldwide_gross
98
180
  @movie_DS << movie_info
181
+ return @movieDS
182
+
183
+ ##
184
+ #TODO: Include this for later data analysis computation
99
185
 
100
- if Movie.title_present?
101
- raise ArgumentError, "The title #{@title_exist} has already been taking"
102
- else
103
- return @movie_DS
104
- end
186
+ #if Movie.title_present?
187
+ #raise ArgumentError, "The title #{@title_exist} has already been taking"
188
+ #else
189
+ #return @movie_DS
190
+ #end
105
191
 
106
192
  end
107
193
 
@@ -109,13 +195,13 @@ unless defined? MovieDB::Movie
109
195
  # Filter the data store for the movie attributes. Return an array of the attributes.
110
196
  #
111
197
  # Example.
112
- # Movie.filter_movie_attr('cast') #=> ["Chris_Hemsworth", "Natalie_Portman"]
198
+ # Movie.filter_movie_attr('cast_members') #=> ["Chris_Hemsworth", "Natalie_Portman"]
113
199
 
114
200
  def filter_movie_attr(attr)
115
201
  attr_raw = attr
116
202
  attr_sym = attr.to_sym
117
203
 
118
- raise ArgumentError, "#{attr_sym} is not a valid attribute." if !attr_sym == :director && :cast
204
+ raise ArgumentError, "#{attr_sym} is not a valid attribute." if !attr_sym == :director && :cast_members
119
205
  filtered = @movie_DS.select{|ds| ds.attr_title?}.map(&attr_sym).flatten
120
206
  attr_raw == 'title' ? filtered : filtered.uniq
121
207
  end
@@ -134,14 +220,13 @@ unless defined? MovieDB::Movie
134
220
  #
135
221
  # capture(synopsis: "Last Vegas - Four geriatric friends vow to set Las Vegas Ablaze.")
136
222
 
137
- def capture(**opts)
138
- @synopsis = opts
139
- end
223
+ #def capture(**opts)
224
+ #@synopsis = opts
225
+ #end
140
226
 
141
- def wrap(synopsis, before: "(", after: ")")
142
- "#{before}#{synopsis}#{after}"
143
- end
227
+ #def wrap(synopsis, before: "(", after: ")")
228
+ #"#{before}#{synopsis}#{after}"
229
+ #end
144
230
  end
145
231
  end
146
232
  end
147
-
@@ -28,7 +28,7 @@ module MovieDB
28
28
  end
29
29
  end
30
30
 
31
- module EstimationOfDensit
31
+ module EstimationOfDensity
32
32
  module Cluster_Weighted_Modeling; end
33
33
  module Density_Estimation; end
34
34
  module Discretization_Of_Continuous_Features; end
@@ -97,31 +97,41 @@ module MovieDB
97
97
  end
98
98
 
99
99
  ##
100
- #TODO: Add all more analysis
100
+ #TODO: All Mathetical Calculations go here.
101
+
101
102
  class ExportData
102
- def printout (data, data_analysis_name)
103
+ def write_spreadsheet (data, data_analysis_name)
103
104
 
104
105
  begin data_analysis.is_a? String
105
- data_analysis_name = data_analysis_name.split.join.gsub('_', ' ').downcase.to_s
106
-
106
+ @data_analysis_name = data_analysis_name.split.join.gsub('_', ' ').downcase.to_s
107
107
  case data_analysis_name
108
- when "coefficient of determination"
109
- book = Spreadsheet::Workbook.new
110
- sheet1 = book.create_worksheet name: "Data Analysis: #{data_analysis_name}"
111
- sheet1.row(0).concat %w{title released_date worldwide_gross}
112
-
113
- # Loop through the data to collect all values.
114
- # Then values into array
115
-
116
- data.each_with_index do |value, index|
117
- sheet1[1, index] = "#{value}"
118
- end
119
- when "discrete least squares meshless method"
120
- else
121
- end
108
+ when "coefficient of determination"
109
+ write_coefficient_of_determination
110
+ when "discrete least squares meshless method"
111
+ write_discrete_least_squares_meshless_method
112
+ when "discrete least squares meshless method"
113
+ write_discrete_least_squares_meshless_method
114
+ else
115
+ end
122
116
  rescue
123
117
  raise ArgumentError, 'invalid attribute'
124
118
  end
125
119
  end
120
+
121
+ def write_coefficient_of_determination
122
+ book = Spreadsheet::Workbook.new
123
+ sheet1 = book.create_worksheet name: "Data Analysis: #{@data_analysis_name}"
124
+ sheet1.row(0).concat %w{title released_date worldwide_gross}
125
+
126
+ # Loop through the data to collect all values.
127
+ # Then values into array
128
+
129
+ data.each_with_index do |value, index|
130
+ sheet1[1, index] = "#{value}"
131
+ end
132
+ end
133
+
134
+ def write_discrete_least_squares_meshless_method; end
135
+ def write_discrete_least_squares_meshless_method; end
126
136
  end
127
137
  end
@@ -1,3 +1,3 @@
1
1
  module MovieDB
2
- VERSION = "0.1.6"
2
+ VERSION = "0.1.7"
3
3
  end
data/movieDB.gemspec CHANGED
@@ -8,8 +8,8 @@ Gem::Specification.new do |spec|
8
8
  spec.version = MovieDB::VERSION
9
9
  spec.authors = ["Albert_McKeever"]
10
10
  spec.email = ["kotn_ep1@hotmail.com"]
11
- spec.description = %q{Collect Movie Information. Perform Confirmatory and Exploratory Data Analysis}
12
- spec.summary = %q{Movie Statistic and Data Analysis}
11
+ spec.description = %q{Perform Data Analysis on IMDB Movies}
12
+ spec.summary = %q{Movie/Film Statistic and Data Analysis}
13
13
  spec.homepage = "https://github.com/keeperofthenecklace/movieDB"
14
14
  spec.license = "MIT"
15
15
 
@@ -22,6 +22,7 @@ Gem::Specification.new do |spec|
22
22
  spec.add_development_dependency "rake"
23
23
  spec.add_development_dependency "rspec"
24
24
  spec.add_development_dependency 'imdb'
25
+ spec.add_development_dependency 'zimdb'
25
26
  spec.add_development_dependency 'highline'
26
27
  spec.add_development_dependency 'fakeweb'
27
28
  spec.add_dependency "activesupport", ">= 4.0.0"
@@ -0,0 +1,112 @@
1
+ require 'spec_helper'
2
+
3
+ describe MovieDB::DataAnalysis do
4
+
5
+ describe "#AnalysisOfVariance" do
6
+ describe "#LeastSquares" do
7
+ describe "#Coefficient_Of_Determination" do
8
+ pending
9
+ end
10
+
11
+ describe "#Discrete_Least_Squares_Meshless_Method" do
12
+ pending
13
+ end
14
+
15
+ describe "#Explained_Sum_Of_Squares" do
16
+ pending
17
+ end
18
+
19
+ describe "#Fraction_Of_Variance_Unexplained" do
20
+ pending
21
+ end
22
+
23
+ describe "#Gauss_Newton_Algorithm" do
24
+ pending
25
+ end
26
+
27
+ describe "#Iteratively_Reweighted_Least_Squares" do
28
+ pending
29
+ end
30
+
31
+ describe "#Lack_Of_Fit_Sum_Of_Squares" do
32
+ pending
33
+ end
34
+
35
+ describe "#Least_Squares_Support_Vector_Machine" do
36
+ pending
37
+ end
38
+
39
+ describe "#Mean_Squared_Error" do
40
+ pending
41
+ end
42
+
43
+ describe "#Moving_Least_Squares" do
44
+ pending
45
+ end
46
+
47
+ describe "#Non_Linear_Iterative_Partial_Least_Squares" do
48
+ pending
49
+ end
50
+
51
+ describe "#Non_Linear_Least_Squares" do
52
+ pending
53
+ end
54
+
55
+ describe "#Ordinary_Least_Squares" do
56
+ pending
57
+ end
58
+
59
+ describe "#Partial_Least_Squares_Regression" do
60
+ pending
61
+ end
62
+
63
+ describe "#Partition_Of_Sums_Of_Squares" do
64
+ pending
65
+ end
66
+
67
+ describe "#Proofs_Involving_Ordinary_Least_Squares" do
68
+ pending
69
+ end
70
+
71
+ describe "#Residual_Sum_Of_Squares" do
72
+ pending
73
+ end
74
+
75
+ describe "#Total_Least_Squares" do
76
+ pending
77
+ end
78
+
79
+ describe "#Total_Sum_Of_Squares" do
80
+ pending
81
+ end
82
+ end
83
+ end
84
+
85
+ describe "#EstimationOfDensity" do
86
+
87
+ end
88
+
89
+ describe "#ExploratoryDataAnalysis" do
90
+ pending
91
+ end
92
+
93
+ describe "#DataMining" do
94
+ pending
95
+ end
96
+
97
+ describe "RegressionAnalysis" do
98
+ pending
99
+ end
100
+
101
+ describe "#Resampling" do
102
+ pending
103
+ end
104
+
105
+ describe "#Sensitivity_Analysis" do
106
+ pending
107
+ end
108
+
109
+ describe "#Time_series_Analysis" do
110
+ pending
111
+ end
112
+ end
data/spec/movieDB_spec.rb CHANGED
@@ -1,64 +1,62 @@
1
1
  require 'spec_helper'
2
+ require 'imdb'
3
+ require "zimdb"
4
+
2
5
 
3
6
  describe MovieDB do
4
- let(:defaultMovie){ MovieDB::Movie.new() }
5
7
 
6
- describe "Initialize" do
7
- it "should create a default list of movie attributes" do
8
- defaultMovie.title.should == "Method Missing"
9
- defaultMovie.cast.should == ['David Black', "Paola Perotta", "Obie Fernandez", "David Chelimsky"]
10
- defaultMovie.director.should == "Yukihiro 'Matz' Matsumoto"
11
- defaultMovie.released_date.should == "2005-12-13"
12
- defaultMovie.film_release.should == ['theatrical', 'video', 'television', 'internet', 'print']
13
- defaultMovie.writer.should == 'David Heinemeier Hansson'
14
- defaultMovie.genre.should == ["Bromantic", "Syfy"]
15
- defaultMovie.academy_award_nomination.should == 4
16
- defaultMovie.academy_award_wins.should == 3
17
- defaultMovie.golden_globe_nominations.should == 4
18
- defaultMovie.golden_globe_wins.should == 2
19
- defaultMovie.bafta_nomination.should == 3
20
- defaultMovie.bafta_wins.should == 1
21
- defaultMovie.worldwide_gross.should == "$9750 Million"
8
+ describe "#get_imdb_movie_data" do
9
+ let(:movie_info){ MovieDB::Movie.send(:get_imdb_movie_data, "1951264") }
10
+
11
+ context "query imdb" do
12
+ it "returns movie data from imdb" do
13
+ movie_info.title.should == "The Hunger Games: Catching Fire"
14
+ movie_info.cast_members[0, 4].should == ["Jennifer Lawrence", "Liam Hemsworth", "Jack Quaid", "Taylor St. Clair"]
15
+ movie_info.cast_member_ids[0, 4].should == ["nm2225369", "nm2955013", "nm4425051", "nm1193262"]
16
+ movie_info.cast_characters[0, 4].should == ["Katniss Everdeen", "Gale Hawthorne", "Marvel", "Ripper"]
17
+ movie_info.cast_members_characters[0, 4].should == ["Jennifer Lawrence => Katniss Everdeen", "Liam Hemsworth => Gale Hawthorne", "Jack Quaid => Marvel", "Taylor St. Clair => Ripper"]
18
+ movie_info.trailer_url.should == "http://imdb.com/video/screenplay/vi365471769/"
19
+ movie_info.director.should == ["Francis Lawrence"]
20
+ #movie_info.writer.should == "Simon Beaufoy, Michael Arndt"
21
+ movie_info.filming_locations[0, 2].should == ["Oakland, New Jersey, USA", "O'ahu, Hawaii, USA"]
22
+ movie_info.company.should == "Color Force"
23
+ movie_info.genres.should == ["Action", "Adventure", "Sci-Fi", "Thriller"]
24
+ movie_info.languages.should == ["English"]
25
+ movie_info.countries.should == ["USA"]
26
+ movie_info.length.should == 146
27
+ movie_info.plot.should == "Katniss Everdeen and Peeta Mellark become targets of the Capitol after their victory in the 74th Hunger Games sparks a rebellion in the Districts of Panem."
28
+ movie_info.poster.should == "http://ia.media-imdb.com/images/M/MV5BMTAyMjQ3OTAxMzNeQTJeQWpwZ15BbWU4MDU0NzA1MzAx.jpg"
29
+ movie_info.rating.should == 8.2
30
+ movie_info.votes.should == 110636
31
+ movie_info.mpaa_rating.should == "Rated PG-13 for intense sequences of violence and action, some frightening images, thematic elements, a suggestive situation and language"
32
+ movie_info.tagline.should == "Every revolution begins with a spark.  »"
33
+ movie_info.year.should == 2013
34
+ movie_info.release_date.should == "22 November 2013 (USA)"
35
+ end
22
36
  end
23
37
 
24
- it "should allow you to update title" do
25
- defaultMovie.title = "Rails 4: Turbolinks Reloaded!"
26
- defaultMovie.title.should == "Rails 4: Turbolinks Reloaded!"
38
+ it "allows you to update attributes" do
39
+ movie_info.title = "Rails 4 Games: Turbolinks Reloaded!"
40
+ movie_info.title.should == "Rails 4 Games: Turbolinks Reloaded!"
27
41
  end
28
42
  end
29
43
 
30
- describe "Adding movies to data store" do
44
+ describe "Adding multiple movies to data store" do
31
45
  before :each do
32
- movie_DS = MovieDB::Movie.instance_eval{create_movie_info('Thor', %w(Chris_Hemsworth Natalie_Portman Tom_Hiddleston), 'Jon Turteltaub',
33
- '2013-10-30', ['theatrical', 'print'], ["Christopher_Yost", "Christopher Markus"], ['Action', 'Adventure', 'Fantasy'], "",
34
- "", "", "", "", "", "", '$86.1 Million')}
35
- movie_DS = MovieDB::Movie.instance_eval{create_movie_info('Last Vegas', %w(Morgan Freeman', 'Robert De Niro', 'Michael Douglas', 'Kevin Kline', 'Mary Steenburgen'), 'Alan Taylor',
36
- '2013-10-30', ['theatrical', 'print'], ["Dan Fogelman"], ['Comedy'], "",
37
- "", "", "", "", "", "", '$11.2 Million')}
38
-
46
+ movie_DS = MovieDB::Movie.instance_eval{create_movie_info("2024544")}
47
+ movie_DS = MovieDB::Movie.instance_eval{create_movie_info("1800241")}
39
48
  end
40
49
 
41
50
  it "Should return names of all titles" do
42
- MovieDB::Movie.instance_eval{filter_movie_attr("title")}.should == ["Thor", "Last Vegas"]
51
+ MovieDB::Movie.instance_eval{filter_movie_attr("title")}.should == ["12 Years a Slave", "American Hustle"]
43
52
  end
44
53
 
45
54
  it "Should return names of all directors" do
46
- MovieDB::Movie.instance_eval{filter_movie_attr("director")}.should == ["Jon Turteltaub", "Alan Taylor"]
55
+ MovieDB::Movie.instance_eval{filter_movie_attr("director")}.should == ["Steve McQueen", "David O. Russell"]
47
56
  end
48
- end
49
57
 
50
- describe "Raise an Error" do
51
- it "should raise an error if title already exists" do
52
- expect { movie_DS }.to raise_error
58
+ it "Should return names of all writers" do
59
+ MovieDB::Movie.instance_eval{filter_movie_attr("writer")}.should == ["John Ridley, Solomon Northup", "Eric Singer, David O. Russell"]
53
60
  end
54
61
  end
55
-
56
- context "#capture" do
57
- let!(:newCap){ MovieDB::Movie.new()}
58
-
59
- it "should accept new synopsis argument" do
60
- newCap.capture( synopsis: "Last Vegas - Four geriatric friends vow to set Las Vegas Ablaze.").should === {:synopsis=>"Last Vegas - Four geriatric friends vow to set Las Vegas Ablaze."}
61
- end
62
- end
63
-
64
62
  end
metadata CHANGED
@@ -1,136 +1,168 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: movieDB
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Albert_McKeever
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2013-12-11 00:00:00.000000000 Z
12
+ date: 2013-12-12 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: bundler
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
- - - "~>"
19
+ - - ~>
18
20
  - !ruby/object:Gem::Version
19
21
  version: '1.3'
20
22
  type: :development
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
- - - "~>"
27
+ - - ~>
25
28
  - !ruby/object:Gem::Version
26
29
  version: '1.3'
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: rake
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
- - - ">="
35
+ - - ! '>='
32
36
  - !ruby/object:Gem::Version
33
37
  version: '0'
34
38
  type: :development
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
- - - ">="
43
+ - - ! '>='
39
44
  - !ruby/object:Gem::Version
40
45
  version: '0'
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: rspec
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
- - - ">="
51
+ - - ! '>='
46
52
  - !ruby/object:Gem::Version
47
53
  version: '0'
48
54
  type: :development
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
- - - ">="
59
+ - - ! '>='
53
60
  - !ruby/object:Gem::Version
54
61
  version: '0'
55
62
  - !ruby/object:Gem::Dependency
56
63
  name: imdb
57
64
  requirement: !ruby/object:Gem::Requirement
65
+ none: false
58
66
  requirements:
59
- - - ">="
67
+ - - ! '>='
60
68
  - !ruby/object:Gem::Version
61
69
  version: '0'
62
70
  type: :development
63
71
  prerelease: false
64
72
  version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
65
74
  requirements:
66
- - - ">="
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: zimdb
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ type: :development
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
67
92
  - !ruby/object:Gem::Version
68
93
  version: '0'
69
94
  - !ruby/object:Gem::Dependency
70
95
  name: highline
71
96
  requirement: !ruby/object:Gem::Requirement
97
+ none: false
72
98
  requirements:
73
- - - ">="
99
+ - - ! '>='
74
100
  - !ruby/object:Gem::Version
75
101
  version: '0'
76
102
  type: :development
77
103
  prerelease: false
78
104
  version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
79
106
  requirements:
80
- - - ">="
107
+ - - ! '>='
81
108
  - !ruby/object:Gem::Version
82
109
  version: '0'
83
110
  - !ruby/object:Gem::Dependency
84
111
  name: fakeweb
85
112
  requirement: !ruby/object:Gem::Requirement
113
+ none: false
86
114
  requirements:
87
- - - ">="
115
+ - - ! '>='
88
116
  - !ruby/object:Gem::Version
89
117
  version: '0'
90
118
  type: :development
91
119
  prerelease: false
92
120
  version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
93
122
  requirements:
94
- - - ">="
123
+ - - ! '>='
95
124
  - !ruby/object:Gem::Version
96
125
  version: '0'
97
126
  - !ruby/object:Gem::Dependency
98
127
  name: activesupport
99
128
  requirement: !ruby/object:Gem::Requirement
129
+ none: false
100
130
  requirements:
101
- - - ">="
131
+ - - ! '>='
102
132
  - !ruby/object:Gem::Version
103
133
  version: 4.0.0
104
134
  type: :runtime
105
135
  prerelease: false
106
136
  version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
107
138
  requirements:
108
- - - ">="
139
+ - - ! '>='
109
140
  - !ruby/object:Gem::Version
110
141
  version: 4.0.0
111
142
  - !ruby/object:Gem::Dependency
112
143
  name: spreadsheet
113
144
  requirement: !ruby/object:Gem::Requirement
145
+ none: false
114
146
  requirements:
115
- - - ">="
147
+ - - ! '>='
116
148
  - !ruby/object:Gem::Version
117
149
  version: '0'
118
150
  type: :runtime
119
151
  prerelease: false
120
152
  version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
121
154
  requirements:
122
- - - ">="
155
+ - - ! '>='
123
156
  - !ruby/object:Gem::Version
124
157
  version: '0'
125
- description: Collect Movie Information. Perform Confirmatory and Exploratory Data
126
- Analysis
158
+ description: Perform Data Analysis on IMDB Movies
127
159
  email:
128
160
  - kotn_ep1@hotmail.com
129
161
  executables: []
130
162
  extensions: []
131
163
  extra_rdoc_files: []
132
164
  files:
133
- - ".gitignore"
165
+ - .gitignore
134
166
  - Gemfile
135
167
  - LICENSE.txt
136
168
  - README.md
@@ -146,35 +178,38 @@ files:
146
178
  - lib/movieDB/version.rb
147
179
  - movieDB.gemspec
148
180
  - spec/.DS_Store
181
+ - spec/data_analysis_spec.rb
149
182
  - spec/movieDB_spec.rb
150
183
  - spec/person_spec.rb
151
184
  - spec/spec_helper.rb
152
185
  homepage: https://github.com/keeperofthenecklace/movieDB
153
186
  licenses:
154
187
  - MIT
155
- metadata: {}
156
188
  post_install_message:
157
189
  rdoc_options: []
158
190
  require_paths:
159
191
  - lib
160
192
  required_ruby_version: !ruby/object:Gem::Requirement
193
+ none: false
161
194
  requirements:
162
- - - ">="
195
+ - - ! '>='
163
196
  - !ruby/object:Gem::Version
164
197
  version: '0'
165
198
  required_rubygems_version: !ruby/object:Gem::Requirement
199
+ none: false
166
200
  requirements:
167
- - - ">="
201
+ - - ! '>='
168
202
  - !ruby/object:Gem::Version
169
203
  version: '0'
170
204
  requirements: []
171
205
  rubyforge_project:
172
- rubygems_version: 2.1.11
206
+ rubygems_version: 1.8.25
173
207
  signing_key:
174
- specification_version: 4
175
- summary: Movie Statistic and Data Analysis
208
+ specification_version: 3
209
+ summary: Movie/Film Statistic and Data Analysis
176
210
  test_files:
177
211
  - spec/.DS_Store
212
+ - spec/data_analysis_spec.rb
178
213
  - spec/movieDB_spec.rb
179
214
  - spec/person_spec.rb
180
215
  - spec/spec_helper.rb
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 47a6b5c9b4e330fe911c6e9e1374767c5dc26208
4
- data.tar.gz: aba7b9074ec6759e349e4bf49379725903107c9e
5
- SHA512:
6
- metadata.gz: c44775435f1b8eda891c8b9a484cd49fc9ca0d7423acc3fa3a1018251d785e2c2d8f771006595e659602ebd2cc867fe4a385c5f969f2c26807f6f5d7245c7961
7
- data.tar.gz: f36907d783dbd939bf01171b2b797cb9196d8d5d44eafeafba2209838e9d4d33cdb6d18783dfcf1cda673c963156afa7077e6cabc78326615a3c0dc683dffa4b