odeon_uk 1.0.0 → 1.1.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.
@@ -25,28 +25,40 @@ describe OdeonUk::Cinema do
25
25
  end
26
26
 
27
27
  describe '.find(id)' do
28
- let(:id) { 71 }
29
-
30
28
  subject { OdeonUk::Cinema.find(id) }
31
29
 
32
30
  before do
33
31
  sitemap_body = File.read( File.join(File.dirname(__FILE__), '..', '..', 'fixtures', 'odeon-sitemap.html') )
34
32
  stub_request(:get, 'http://www.odeon.co.uk/sitemap/').to_return( status: 200, body: sitemap_body, headers: {} )
35
-
36
- # cinema_page_body = File.read( File.join(File.dirname(__FILE__), '..', '..', 'fixtures', 'odeon-brighton.html') )
37
- # stub_request(:get, 'http://www.odeon.co.uk/cinema/brighton/23/').to_return( status: 200, body: cinema_page_body, headers: {} )
38
33
  end
39
34
 
40
- it 'returns a cinema' do
41
- subject.must_be_instance_of(OdeonUk::Cinema)
35
+ describe 'Brighton' do
36
+ let(:id) { 71 }
37
+
38
+ it 'returns a cinema' do
39
+ subject.must_be_instance_of(OdeonUk::Cinema)
42
40
 
43
- subject.id.must_equal 71
44
- subject.brand.must_equal 'Odeon'
45
- subject.name.must_equal 'Brighton'
46
- subject.slug.must_equal 'brighton'
47
- subject.url.must_equal 'http://www.odeon.co.uk/cinemas/brighton/71/'
41
+ subject.id.must_equal 71
42
+ subject.brand.must_equal 'Odeon'
43
+ subject.name.must_equal 'Brighton'
44
+ subject.slug.must_equal 'brighton'
45
+ subject.url.must_equal 'http://www.odeon.co.uk/cinemas/brighton/71/'
46
+ end
48
47
  end
49
- end
48
+
49
+ describe 'Leicester Square' do
50
+ let(:id) { 105 }
51
+
52
+ it 'returns a cinema with London prefix removed in the name' do
53
+ subject.must_be_instance_of(OdeonUk::Cinema)
54
+
55
+ subject.id.must_equal 105
56
+ subject.brand.must_equal 'Odeon'
57
+ subject.name.must_equal 'Leicester Square'
58
+ subject.slug.must_equal 'leicester-square'
59
+ subject.url.must_equal 'http://www.odeon.co.uk/cinemas/london_leicester_square/105/'
60
+ end
61
+ end end
50
62
 
51
63
  describe '.new id, name, url' do
52
64
  it 'stores id, name, slug and url' do
@@ -59,6 +71,31 @@ describe OdeonUk::Cinema do
59
71
  end
60
72
  end
61
73
 
74
+ describe '#adr' do
75
+ describe 'short address' do
76
+ let(:cinema) { OdeonUk::Cinema.new('71', 'Brighton', '/cinemas/brighton/71/') }
77
+ subject { cinema.adr }
78
+
79
+ before do
80
+ brighton_cinema_body = File.read( File.join(File.dirname(__FILE__), '..', '..', 'fixtures', 'odeon-brighton.html') )
81
+ stub_request(:get, 'http://www.odeon.co.uk/cinemas/brighton/71/').to_return( status: 200, body: brighton_cinema_body, headers: {} )
82
+ end
83
+
84
+ it 'returns a Hash' do
85
+ subject.must_be_instance_of Hash
86
+ end
87
+
88
+ it 'returns address hash' do
89
+ subject.must_equal({
90
+ street_address: 'Kingswest',
91
+ locality: 'Brighton',
92
+ postal_code: 'BN1 2RE',
93
+ country: 'United Kingdom'
94
+ })
95
+ end
96
+ end
97
+ end
98
+
62
99
  describe '#films' do
63
100
  let(:cinema) { OdeonUk::Cinema.new('71', 'Brighton & Hove', '/cinemas/brighton/71/') }
64
101
  subject { cinema.films }
@@ -76,7 +113,18 @@ describe OdeonUk::Cinema do
76
113
  end
77
114
 
78
115
  it 'returns correct number of films' do
79
- subject.count.must_equal 17
116
+ subject.count.must_equal 16
117
+ end
118
+
119
+ it 'returns uniquely named films' do
120
+ subject.each_with_index do |item, index|
121
+ subject.each_with_index do |jtem, i|
122
+ if index != i
123
+ item.name.wont_equal jtem.name
124
+ item.wont_equal jtem
125
+ end
126
+ end
127
+ end
80
128
  end
81
129
 
82
130
  it 'returns film objects with correct names' do
@@ -85,6 +133,74 @@ describe OdeonUk::Cinema do
85
133
  end
86
134
  end
87
135
 
136
+ describe '#locality' do
137
+ describe 'short address' do
138
+ let(:cinema) { OdeonUk::Cinema.new('71', 'Brighton', '/cinemas/brighton/71/') }
139
+ subject { cinema.locality }
140
+
141
+ before do
142
+ brighton_cinema_body = File.read( File.join(File.dirname(__FILE__), '..', '..', 'fixtures', 'odeon-brighton.html') )
143
+ stub_request(:get, 'http://www.odeon.co.uk/cinemas/brighton/71/').to_return( status: 200, body: brighton_cinema_body, headers: {} )
144
+ end
145
+
146
+ it 'returns a string' do
147
+ subject.must_be_instance_of String
148
+ end
149
+
150
+ it 'returns town name' do
151
+ subject.must_equal 'Brighton'
152
+ end
153
+ end
154
+ end
155
+
156
+ describe '#postal_code' do
157
+ describe 'short address' do
158
+ let(:cinema) { OdeonUk::Cinema.new('71', 'Brighton', '/cinemas/brighton/71/') }
159
+ subject { cinema.postal_code }
160
+
161
+ before do
162
+ brighton_cinema_body = File.read( File.join(File.dirname(__FILE__), '..', '..', 'fixtures', 'odeon-brighton.html') )
163
+ stub_request(:get, 'http://www.odeon.co.uk/cinemas/brighton/71/').to_return( status: 200, body: brighton_cinema_body, headers: {} )
164
+ end
165
+
166
+ it 'returns a string' do
167
+ subject.must_be_instance_of String
168
+ end
169
+
170
+ it 'returns the postcode' do
171
+ subject.must_equal 'BN1 2RE'
172
+ end
173
+ end
174
+
175
+ describe 'short address (London)' do
176
+ let(:cinema) { OdeonUk::Cinema.new('211', 'BFI Imax', '/cinemas/bfi_imax/211/') }
177
+ subject { cinema.postal_code }
178
+
179
+ before do
180
+ body = File.read( File.join(File.dirname(__FILE__), '..', '..', 'fixtures', 'odeon-bfi-imax.html') )
181
+ stub_request(:get, 'http://www.odeon.co.uk/cinemas/bfi_imax/211/').to_return( status: 200, body: body, headers: {} )
182
+ end
183
+
184
+ it 'returns the postcode' do
185
+ subject.must_equal 'SE1 8XR'
186
+ end
187
+ end
188
+
189
+ describe 'short address (extra London Postcode)' do
190
+ let(:cinema) { OdeonUk::Cinema.new('105', 'Leicester Square', '/cinemas/london_leicester_square/105/') }
191
+ subject { cinema.postal_code }
192
+
193
+ before do
194
+ body = File.read( File.join(File.dirname(__FILE__), '..', '..', 'fixtures', 'odeon-london-leicester-square.html') )
195
+ stub_request(:get, 'http://www.odeon.co.uk/cinemas/london_leicester_square/105/').to_return( status: 200, body: body, headers: {} )
196
+ end
197
+
198
+ it 'returns the postcode' do
199
+ subject.must_equal 'WC2H 7LQ'
200
+ end
201
+ end
202
+ end
203
+
88
204
  describe '#screenings' do
89
205
  let(:cinema) { OdeonUk::Cinema.new('71', 'Brighton', '/cinemas/brighton/71/') }
90
206
  subject { cinema.screenings }
@@ -114,6 +230,26 @@ describe OdeonUk::Cinema do
114
230
  subject.first.when.must_equal Time.utc(2013, 9, 14, 11, 20, 0)
115
231
  subject.last.when.must_equal Time.utc(2013, 9, 19, 19, 40, 0)
116
232
  end
233
+
234
+ it 'returns screening objects with correct varients' do
235
+ subject.each do |screening|
236
+ screening.varient.wont_be_nil
237
+ screening.varient.must_match /[23]D/
238
+ end
239
+
240
+ subject.first.varient.must_equal '2D'
241
+ subject.last.varient.must_equal '2D'
242
+ end
243
+
244
+ it 'returns screening objects with booking urls' do
245
+ subject.each do |screening|
246
+ screening.booking_url.wont_be_nil
247
+ screening.booking_url.must_be_instance_of String
248
+ end
249
+
250
+ subject.first.booking_url.must_equal 'http://www.odeon.co.uk/booking/init/MUZFRjAwMDAwMjNVRFBETVhHIzcxIzE0NDI2/'
251
+ subject.last.booking_url.must_equal 'http://www.odeon.co.uk/booking/init/RjhFRjAwMDAwMjNVRFBETVhHIzcxIzEzOTY3/'
252
+ end
117
253
  end
118
254
 
119
255
  describe '#screenings_of(film_or_string)' do
@@ -182,4 +318,23 @@ describe OdeonUk::Cinema do
182
318
  end
183
319
  end
184
320
 
321
+ describe '#street_address' do
322
+ describe 'short address' do
323
+ let(:cinema) { OdeonUk::Cinema.new('71', 'Brighton', '/cinemas/brighton/71/') }
324
+ subject { cinema.street_address }
325
+
326
+ before do
327
+ brighton_cinema_body = File.read( File.join(File.dirname(__FILE__), '..', '..', 'fixtures', 'odeon-brighton.html') )
328
+ stub_request(:get, 'http://www.odeon.co.uk/cinemas/brighton/71/').to_return( status: 200, body: brighton_cinema_body, headers: {} )
329
+ end
330
+
331
+ it 'returns a string' do
332
+ subject.must_be_instance_of String
333
+ end
334
+
335
+ it 'returns first line of address' do
336
+ subject.must_equal 'Kingswest'
337
+ end
338
+ end
339
+ end
185
340
  end
@@ -10,4 +10,86 @@ describe OdeonUk::Film do
10
10
  film.name.must_equal 'Iron Man 3'
11
11
  end
12
12
  end
13
+
14
+ describe 'Comparable' do
15
+ it 'includes comparable methods' do
16
+ film = OdeonUk::Film.new 'AAAA'
17
+ film.methods.must_include :<
18
+ film.methods.must_include :>
19
+ film.methods.must_include :==
20
+ film.methods.must_include :<=>
21
+ film.methods.must_include :<=
22
+ film.methods.must_include :>=
23
+ end
24
+
25
+ describe 'uniqueness' do
26
+ it 'defines #hash' do
27
+ film = OdeonUk::Film.new 'AAAA'
28
+ film.methods.must_include :hash
29
+ end
30
+
31
+ describe '#hash' do
32
+ it 'returns a hash of the slug' do
33
+ film = OdeonUk::Film.new 'AAAA'
34
+ film.hash == film.slug.hash
35
+ end
36
+ end
37
+
38
+ it 'defines #eql?(other)' do
39
+ film = OdeonUk::Film.new 'AAAA'
40
+ film.methods.must_include :eql?
41
+ end
42
+
43
+ describe 'two identically named films' do
44
+ let(:film) { OdeonUk::Film.new 'AAAA' }
45
+ let(:otherfilm) { OdeonUk::Film.new 'AAAA' }
46
+
47
+ it 'retuns only one' do
48
+ result = [film, otherfilm].uniq
49
+ result.count.must_equal 1
50
+ result.must_equal [ OdeonUk::Film.new('AAAA') ]
51
+ end
52
+ end
53
+ end
54
+
55
+ describe '<=> (other)' do
56
+ subject { film <=> otherfilm }
57
+
58
+ describe 'film less than other' do
59
+ let(:film) { OdeonUk::Film.new 'AAAA' }
60
+ let(:otherfilm) { OdeonUk::Film.new 'BBBB' }
61
+
62
+ it 'retuns -1' do
63
+ subject.must_equal -1
64
+ end
65
+ end
66
+
67
+ describe 'film greater than other' do
68
+ let(:film) { OdeonUk::Film.new 'CCCC' }
69
+ let(:otherfilm) { OdeonUk::Film.new 'BBBB' }
70
+
71
+ it 'retuns 1' do
72
+ subject.must_equal 1
73
+ end
74
+ end
75
+
76
+ describe 'film same as other (exact name)' do
77
+ let(:film) { OdeonUk::Film.new 'AAAA' }
78
+ let(:otherfilm) { OdeonUk::Film.new 'AAAA' }
79
+
80
+ it 'retuns 0' do
81
+ subject.must_equal 0
82
+ end
83
+ end
84
+
85
+ describe 'film same as other (inexact name)' do
86
+ let(:film) { OdeonUk::Film.new 'blue jasmine' }
87
+ let(:otherfilm) { OdeonUk::Film.new 'Blue Jasmine' }
88
+
89
+ it 'retuns 0' do
90
+ subject.must_equal 0
91
+ end
92
+ end
93
+ end
94
+ end
13
95
  end
@@ -114,8 +114,10 @@ describe OdeonUk::Internal::FilmWithScreeningsParser do
114
114
  key.must_equal '2D'
115
115
  value.must_be_instance_of Array
116
116
  value.each do |element|
117
- element.must_be_instance_of Time
118
- element.zone.must_equal 'UTC'
117
+ element[0].must_be_instance_of Time
118
+ element[0].zone.must_equal 'UTC'
119
+ element[1].must_be_instance_of String
120
+ element[1].must_match 'http://www.odeon.co.uk/'
119
121
  end
120
122
  end
121
123
  end
@@ -127,7 +129,7 @@ describe OdeonUk::Internal::FilmWithScreeningsParser do
127
129
  it 'returns UTC times for showings' do
128
130
  # about times are from British Summer Time UTC+1
129
131
  # the actual show time is 20:30 from the fixture
130
- subject['2D'].last.must_equal Time.utc(2013, 9, 19, 19, 30, 0)
132
+ subject['2D'].last[0].must_equal Time.utc(2013, 9, 19, 19, 30, 0)
131
133
  end
132
134
  end
133
135
 
@@ -140,8 +142,10 @@ describe OdeonUk::Internal::FilmWithScreeningsParser do
140
142
  subject.values.each do |value|
141
143
  value.must_be_instance_of Array
142
144
  value.each do |element|
143
- element.must_be_instance_of Time
144
- element.zone.must_equal 'UTC'
145
+ element[0].must_be_instance_of Time
146
+ element[0].zone.must_equal 'UTC'
147
+ element[1].must_be_instance_of String
148
+ element[1].must_match 'http://www.odeon.co.uk/'
145
149
  end
146
150
  end
147
151
  end
@@ -155,7 +159,7 @@ describe OdeonUk::Internal::FilmWithScreeningsParser do
155
159
  it 'returns UTC times for showings' do
156
160
  # about times are from GMT
157
161
  # the actual show time is 00:01 from the fixture
158
- subject['2D'].last.must_equal Time.utc(2013, 10, 30, 0, 1, 0)
162
+ subject['2D'].last[0].must_equal Time.utc(2013, 10, 30, 0, 1, 0)
159
163
  end
160
164
  end
161
165
  end
@@ -6,24 +6,36 @@ describe OdeonUk::Screening do
6
6
 
7
7
  describe '#new film_name, cinema_name, date, time, varient' do
8
8
  it 'stores film_name, cinema_name & when (in UTC)' do
9
- screening = OdeonUk::Screening.new 'Iron Man 3', 'Brighton', '2013-09-12', '11:00'
9
+ screening = OdeonUk::Screening.new 'Iron Man 3', 'Brighton', Time.parse('2013-09-12 12:00') # non-UTC time
10
10
  screening.film_name.must_equal 'Iron Man 3'
11
11
  screening.cinema_name.must_equal 'Brighton'
12
12
  screening.when.must_equal Time.utc(2013, 9, 12, 11, 0)
13
+ screening.booking_url.must_equal nil
13
14
  screening.varient.must_equal nil
14
15
  end
15
16
 
16
17
  it 'stores varient if passed' do
17
- screening = OdeonUk::Screening.new 'Iron Man 3', 'Brighton', '2013-09-12', '11:00', '3d'
18
+ screening = OdeonUk::Screening.new 'Iron Man 3', 'Brighton', Time.utc(2013, 9, 12, 11, 0), nil, '3d'
18
19
  screening.film_name.must_equal 'Iron Man 3'
19
20
  screening.cinema_name.must_equal 'Brighton'
20
21
  screening.when.must_equal Time.utc(2013, 9, 12, 11, 0)
22
+ screening.booking_url.must_equal nil
21
23
  screening.varient.must_equal '3d'
22
24
  end
25
+
26
+ it 'stores booking_url if passed' do
27
+ screening = OdeonUk::Screening.new 'Iron Man 3', 'Brighton', Time.utc(2013, 9, 12, 11, 0), 'http://booking_url'
28
+ screening.film_name.must_equal 'Iron Man 3'
29
+ screening.cinema_name.must_equal 'Brighton'
30
+ screening.when.must_equal Time.utc(2013, 9, 12, 11, 0)
31
+ screening.when.must_equal Time.utc(2013, 9, 12, 11, 0)
32
+ screening.booking_url.must_equal 'http://booking_url'
33
+ screening.varient.must_equal nil
34
+ end
23
35
  end
24
36
 
25
37
  describe '#date' do
26
- subject { OdeonUk::Screening.new('Iron Man 3', 'Brighton', '2013-09-12', '11:30', '3d').date }
38
+ subject { OdeonUk::Screening.new('Iron Man 3', 'Brighton', Time.utc(2013, 9, 12, 11, 0), '3d').date }
27
39
  it 'should return date of showing' do
28
40
  subject.must_be_instance_of(Date)
29
41
  subject.must_equal Date.new(2013, 9, 12)
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: odeon_uk
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
5
- prerelease:
4
+ version: 1.1.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Andy Croll
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-10-13 00:00:00.000000000 Z
11
+ date: 2013-11-05 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rake
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ! '>='
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :development
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
@@ -30,7 +27,6 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: webmock
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
31
  - - ! '>='
36
32
  - !ruby/object:Gem::Version
@@ -38,7 +34,6 @@ dependencies:
38
34
  type: :development
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
@@ -46,7 +41,6 @@ dependencies:
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: httparty
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ! '>='
52
46
  - !ruby/object:Gem::Version
@@ -54,7 +48,6 @@ dependencies:
54
48
  type: :runtime
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
@@ -62,7 +55,6 @@ dependencies:
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: nokogiri
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ! '>='
68
60
  - !ruby/object:Gem::Version
@@ -70,7 +62,6 @@ dependencies:
70
62
  type: :runtime
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
@@ -78,7 +69,6 @@ dependencies:
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: tzinfo
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
73
  - - ! '>='
84
74
  - !ruby/object:Gem::Version
@@ -86,7 +76,6 @@ dependencies:
86
76
  type: :runtime
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
@@ -94,7 +83,6 @@ dependencies:
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: tzinfo-data
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
87
  - - ! '>='
100
88
  - !ruby/object:Gem::Version
@@ -102,19 +90,20 @@ dependencies:
102
90
  type: :runtime
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: An API to pull movie information from the ODEON.co.uk website
111
98
  email:
112
- - andycroll@deepcalm.com
99
+ - andy@goodscary.com
113
100
  executables: []
114
101
  extensions: []
115
102
  extra_rdoc_files: []
116
103
  files:
117
104
  - .gitignore
105
+ - .rdoc_options
106
+ - .travis.yml
118
107
  - Gemfile
119
108
  - LICENSE.txt
120
109
  - README.md
@@ -139,8 +128,10 @@ files:
139
128
  - test/fixtures/brighton-showtimes/star-trek-into-darkness-2d.html
140
129
  - test/fixtures/brighton-showtimes/ukjff-from-cable-street-to-brick-lane.html
141
130
  - test/fixtures/manchester-showtimes/thor-the-dark-world.html
131
+ - test/fixtures/odeon-bfi-imax.html
142
132
  - test/fixtures/odeon-brighton-showtimes.html
143
133
  - test/fixtures/odeon-brighton.html
134
+ - test/fixtures/odeon-london-leicester-square.html
144
135
  - test/fixtures/odeon-sitemap.html
145
136
  - test/lib/odeon_uk/cinema_test.rb
146
137
  - test/lib/odeon_uk/film_test.rb
@@ -150,27 +141,26 @@ files:
150
141
  - test/test_helper.rb
151
142
  homepage: http://github.com/andycroll/odeon_uk
152
143
  licenses: []
144
+ metadata: {}
153
145
  post_install_message:
154
146
  rdoc_options: []
155
147
  require_paths:
156
148
  - lib
157
149
  required_ruby_version: !ruby/object:Gem::Requirement
158
- none: false
159
150
  requirements:
160
151
  - - ! '>='
161
152
  - !ruby/object:Gem::Version
162
153
  version: '0'
163
154
  required_rubygems_version: !ruby/object:Gem::Requirement
164
- none: false
165
155
  requirements:
166
156
  - - ! '>='
167
157
  - !ruby/object:Gem::Version
168
158
  version: '0'
169
159
  requirements: []
170
160
  rubyforge_project:
171
- rubygems_version: 1.8.23
161
+ rubygems_version: 2.1.10
172
162
  signing_key:
173
- specification_version: 3
163
+ specification_version: 4
174
164
  summary: It's a scraper, but a nice one
175
165
  test_files:
176
166
  - test/fixtures/brighton-showtimes/about-time.html
@@ -186,8 +176,10 @@ test_files:
186
176
  - test/fixtures/brighton-showtimes/star-trek-into-darkness-2d.html
187
177
  - test/fixtures/brighton-showtimes/ukjff-from-cable-street-to-brick-lane.html
188
178
  - test/fixtures/manchester-showtimes/thor-the-dark-world.html
179
+ - test/fixtures/odeon-bfi-imax.html
189
180
  - test/fixtures/odeon-brighton-showtimes.html
190
181
  - test/fixtures/odeon-brighton.html
182
+ - test/fixtures/odeon-london-leicester-square.html
191
183
  - test/fixtures/odeon-sitemap.html
192
184
  - test/lib/odeon_uk/cinema_test.rb
193
185
  - test/lib/odeon_uk/film_test.rb
@@ -195,3 +187,4 @@ test_files:
195
187
  - test/lib/odeon_uk/screening_test.rb
196
188
  - test/lib/odeon_uk/version_test.rb
197
189
  - test/test_helper.rb
190
+ has_rdoc: