cineworld_uk 1.0.0
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 +15 -0
- data/.gitignore +17 -0
- data/.travis.yml +4 -0
- data/CHANGELOG.md +9 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +59 -0
- data/Rakefile +15 -0
- data/cineworld_uk.gemspec +29 -0
- data/lib/cineworld_uk.rb +15 -0
- data/lib/cineworld_uk/cinema.rb +218 -0
- data/lib/cineworld_uk/film.rb +47 -0
- data/lib/cineworld_uk/internal/film_with_screenings_parser.rb +128 -0
- data/lib/cineworld_uk/screening.rb +33 -0
- data/lib/cineworld_uk/version.rb +6 -0
- data/test/fixtures/cinemas.html +420 -0
- data/test/fixtures/cinemas/brighton.html +8 -0
- data/test/fixtures/cinemas/bristol.html +1206 -0
- data/test/fixtures/cinemas/bury-st-edmunds.html +1211 -0
- data/test/fixtures/cinemas/chelsea.html +1030 -0
- data/test/fixtures/cinemas/the-o2-grenwich.html +1191 -0
- data/test/fixtures/whatson/brighton.html +7906 -0
- data/test/fixtures/whatson/brighton/autism-friendly-cloudy-2.html +79 -0
- data/test/fixtures/whatson/brighton/geethanjali-malayalam.html +71 -0
- data/test/fixtures/whatson/brighton/gravity.html +2129 -0
- data/test/fixtures/whatson/brighton/take-2-thursday-about-time.html +89 -0
- data/test/fixtures/whatson/glasgow-imax-at-gsc-cinema.html +3160 -0
- data/test/fixtures/whatson/glasgow-imax-at-gsc/the-hunger-games-catching-fire.html +498 -0
- data/test/fixtures/whatson/the-o2-greenwich.html +6854 -0
- data/test/fixtures/whatson/the-o2-greenwich/gravity.html +784 -0
- data/test/fixtures/whatson/wandsworth.html +13729 -0
- data/test/fixtures/whatson/wandsworth/arrambam-tamil.html +126 -0
- data/test/fixtures/whatson/wandsworth/bolshoi-ballet-live-lost-illusions.html +80 -0
- data/test/fixtures/whatson/wandsworth/frankenstein-nt-50th.html +82 -0
- data/test/fixtures/whatson/wandsworth/met-opera-falstaff.html +74 -0
- data/test/fixtures/whatson/wandsworth/nt-live-war-horse.html +80 -0
- data/test/fixtures/whatson/wandsworth/royal-ballet-live-the-sleeping-beauty.html +79 -0
- data/test/fixtures/whatson/wandsworth/royal-opera-live-parsifal-weird-date.html +79 -0
- data/test/fixtures/whatson/wandsworth/rsc-live-richard-ii-encore.html +80 -0
- data/test/fixtures/whatson/wandsworth/west-end-theatre-series-private-lives.html +80 -0
- data/test/lib/cineworld_uk/cinema_test.rb +466 -0
- data/test/lib/cineworld_uk/film_test.rb +95 -0
- data/test/lib/cineworld_uk/internal/film_with_screenings_parser_test.rb +200 -0
- data/test/lib/cineworld_uk/screening_test.rb +31 -0
- data/test/lib/cineworld_uk/version_test.rb +9 -0
- data/test/test_helper.rb +6 -0
- metadata +219 -0
@@ -0,0 +1,95 @@
|
|
1
|
+
require_relative '../../test_helper'
|
2
|
+
|
3
|
+
describe CineworldUk::Film do
|
4
|
+
|
5
|
+
before { WebMock.disable_net_connect! }
|
6
|
+
|
7
|
+
describe '.new(name)' do
|
8
|
+
it 'stores name' do
|
9
|
+
film = CineworldUk::Film.new 'Iron Man 3'
|
10
|
+
film.name.must_equal 'Iron Man 3'
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
describe 'Comparable' do
|
15
|
+
it 'includes comparable methods' do
|
16
|
+
film = CineworldUk::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 = CineworldUk::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 = CineworldUk::Film.new 'AAAA'
|
34
|
+
film.hash == film.slug.hash
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
it 'defines #eql?(other)' do
|
39
|
+
film = CineworldUk::Film.new 'AAAA'
|
40
|
+
film.methods.must_include :eql?
|
41
|
+
end
|
42
|
+
|
43
|
+
describe 'two identically named films' do
|
44
|
+
let(:film) { CineworldUk::Film.new 'AAAA' }
|
45
|
+
let(:otherfilm) { CineworldUk::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 [ CineworldUk::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) { CineworldUk::Film.new 'AAAA' }
|
60
|
+
let(:otherfilm) { CineworldUk::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) { CineworldUk::Film.new 'CCCC' }
|
69
|
+
let(:otherfilm) { CineworldUk::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) { CineworldUk::Film.new 'AAAA' }
|
78
|
+
let(:otherfilm) { CineworldUk::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) { CineworldUk::Film.new 'blue jasmine' }
|
87
|
+
let(:otherfilm) { CineworldUk::Film.new 'Blue Jasmine' }
|
88
|
+
|
89
|
+
it 'retuns 0' do
|
90
|
+
subject.must_equal 0
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
@@ -0,0 +1,200 @@
|
|
1
|
+
require_relative '../../../test_helper'
|
2
|
+
|
3
|
+
describe CineworldUk::Internal::FilmWithScreeningsParser do
|
4
|
+
|
5
|
+
describe '#film_name' do
|
6
|
+
subject { CineworldUk::Internal::FilmWithScreeningsParser.new(film_html).film_name }
|
7
|
+
|
8
|
+
describe 'passed valid film html with simple name' do
|
9
|
+
let(:film_html) { read_film_html('brighton/gravity') }
|
10
|
+
|
11
|
+
it 'returns the film name' do
|
12
|
+
subject.must_equal('Gravity')
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
describe 'passed valid film html with take 2 name prefix' do
|
17
|
+
let(:film_html) { read_film_html('brighton/take-2-thursday-about-time') }
|
18
|
+
|
19
|
+
it 'returns the film name' do
|
20
|
+
subject.must_equal('About Time')
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
describe 'passed valid film html with autism friendly name prefix' do
|
25
|
+
let(:film_html) { read_film_html('brighton/autism-friendly-cloudy-2') }
|
26
|
+
|
27
|
+
it 'returns the film name' do
|
28
|
+
subject.must_equal('Cloudy With A Chance Of Meatballs 2')
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
describe 'passed valid film html with malayalam language suffix' do
|
33
|
+
let(:film_html) { read_film_html('brighton/geethanjali-malayalam') }
|
34
|
+
|
35
|
+
it 'returns the film name' do
|
36
|
+
subject.must_equal('Geethanjali')
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
describe 'passed valid film html with tamil language suffix' do
|
41
|
+
let(:film_html) { read_film_html('wandsworth/arrambam-tamil') }
|
42
|
+
|
43
|
+
it 'returns the film name' do
|
44
|
+
subject.must_equal('Arrambam')
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
describe 'passed valid film html with bolshoi live' do
|
49
|
+
let(:film_html) { read_film_html('wandsworth/bolshoi-ballet-live-lost-illusions') }
|
50
|
+
|
51
|
+
it 'returns the film name' do
|
52
|
+
subject.must_equal('Bolshoi: Lost Illusions')
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
describe 'passed valid film html with NT 50th encore' do
|
57
|
+
let(:film_html) { read_film_html('wandsworth/frankenstein-nt-50th') }
|
58
|
+
|
59
|
+
it 'returns the film name' do
|
60
|
+
subject.must_equal('National Theatre: Frankenstein (with Jonny Lee Miller as the Creature)')
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
describe 'passed valid film html with met opera and date' do
|
65
|
+
let(:film_html) { read_film_html('wandsworth/met-opera-falstaff') }
|
66
|
+
|
67
|
+
it 'returns the film name' do
|
68
|
+
subject.must_equal('Met Opera: Falstaff')
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
describe 'passed valid film html with nt live' do
|
73
|
+
let(:film_html) { read_film_html('wandsworth/nt-live-war-horse') }
|
74
|
+
|
75
|
+
it 'returns the film name' do
|
76
|
+
subject.must_equal('National Theatre: War Horse')
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
80
|
+
describe 'passed valid film html with ballet live' do
|
81
|
+
let(:film_html) { read_film_html('wandsworth/royal-ballet-live-the-sleeping-beauty') }
|
82
|
+
|
83
|
+
it 'returns the film name' do
|
84
|
+
subject.must_equal('Royal Ballet: The Sleeping Beauty')
|
85
|
+
end
|
86
|
+
end
|
87
|
+
|
88
|
+
describe 'passed valid film html with royal opera house and weird date' do
|
89
|
+
let(:film_html) { read_film_html('wandsworth/royal-opera-live-parsifal-weird-date') }
|
90
|
+
|
91
|
+
it 'returns the film name' do
|
92
|
+
subject.must_equal('Royal Opera House: Parsifal')
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
96
|
+
describe 'passed valid film html with RSC and encore' do
|
97
|
+
let(:film_html) { read_film_html('wandsworth/rsc-live-richard-ii-encore') }
|
98
|
+
|
99
|
+
it 'returns the film name' do
|
100
|
+
subject.must_equal('Royal Shakespeare Company: Richard II')
|
101
|
+
end
|
102
|
+
end
|
103
|
+
|
104
|
+
describe 'passed valid film html with West End Theatre' do
|
105
|
+
let(:film_html) { read_film_html('wandsworth/west-end-theatre-series-private-lives') }
|
106
|
+
|
107
|
+
it 'returns the film name' do
|
108
|
+
subject.must_equal("West End Theatre Series: Noel Coward's Private Lives")
|
109
|
+
end
|
110
|
+
end
|
111
|
+
end
|
112
|
+
|
113
|
+
describe '#showings' do
|
114
|
+
subject { CineworldUk::Internal::FilmWithScreeningsParser.new(film_html).showings }
|
115
|
+
|
116
|
+
describe 'passed valid film html in headline position' do
|
117
|
+
let(:film_html) { read_film_html('brighton/gravity') }
|
118
|
+
|
119
|
+
it 'returns a hash keyed by type of performance' do
|
120
|
+
subject.must_be_instance_of Hash
|
121
|
+
subject.keys.each { |key| key.must_be_instance_of String }
|
122
|
+
end
|
123
|
+
|
124
|
+
it 'returns an array of Times for each type of performance' do
|
125
|
+
subject.each do |key, value|
|
126
|
+
value.must_be_instance_of Array
|
127
|
+
value.each do |array|
|
128
|
+
array.must_be_instance_of Array
|
129
|
+
array[0].must_be_instance_of Time
|
130
|
+
array[1].must_be_instance_of String
|
131
|
+
end
|
132
|
+
end
|
133
|
+
end
|
134
|
+
|
135
|
+
it 'returns the correct number of Times' do
|
136
|
+
subject.keys.must_equal ['2D', '3D']
|
137
|
+
subject['2D'].count.must_equal 49
|
138
|
+
subject['3D'].count.must_equal 89
|
139
|
+
end
|
140
|
+
|
141
|
+
it 'returns Times in UTC' do
|
142
|
+
subject['2D'].first[0].must_equal Time.utc(2013, 11, 13, 12, 0, 0)
|
143
|
+
subject['2D'].last[0].must_equal Time.utc(2013, 11, 21, 20, 30, 0)
|
144
|
+
|
145
|
+
subject['3D'].first[0].must_equal Time.utc(2013, 11, 13, 12, 50, 0)
|
146
|
+
subject['3D'].last[0].must_equal Time.utc(2013, 11, 21, 17, 45, 0)
|
147
|
+
end
|
148
|
+
|
149
|
+
it 'returns booking urls' do
|
150
|
+
subject['2D'].first[1].must_equal 'http://www.cineworld.co.uk/booking?cinema=3&filmEdi=39755&date=20131113&time=12:00'
|
151
|
+
subject['2D'].last[1].must_equal 'http://www.cineworld.co.uk/booking?cinema=3&filmEdi=43483&date=20131121&time=20:30'
|
152
|
+
|
153
|
+
subject['3D'].first[1].must_equal 'http://www.cineworld.co.uk/booking?cinema=3&filmEdi=39755&date=20131113&time=12:50'
|
154
|
+
subject['3D'].last[1].must_equal 'http://www.cineworld.co.uk/booking?cinema=3&filmEdi=43483&date=20131121&time=17:45'
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
158
|
+
describe 'passed valid film html in headline position with crazy screens' do
|
159
|
+
let(:film_html) { read_film_html('the-o2-greenwich/gravity') }
|
160
|
+
|
161
|
+
it 'returns the correct number of Times' do
|
162
|
+
subject.keys.sort.must_equal ['2D', '3D', '3D D-BOX']
|
163
|
+
subject['2D'].count.must_equal 5
|
164
|
+
subject['3D'].count.must_equal 24
|
165
|
+
subject['3D D-BOX'].count.must_equal 19
|
166
|
+
end
|
167
|
+
|
168
|
+
it 'returns Times in UTC' do
|
169
|
+
subject['2D'].first[0].must_equal Time.utc(2013, 11, 18, 15, 30, 0)
|
170
|
+
subject['2D'].last[0].must_equal Time.utc(2013, 11, 21, 18, 35, 0)
|
171
|
+
|
172
|
+
subject['3D'].first[0].must_equal Time.utc(2013, 11, 16, 22, 15, 0)
|
173
|
+
subject['3D'].last[0].must_equal Time.utc(2013, 11, 21, 21, 0, 0)
|
174
|
+
|
175
|
+
subject['3D D-BOX'].first[0].must_equal Time.utc(2013, 11, 17, 11, 30, 0)
|
176
|
+
subject['3D D-BOX'].last[0].must_equal Time.utc(2013, 11, 20, 19, 0, 0)
|
177
|
+
end
|
178
|
+
end
|
179
|
+
|
180
|
+
describe 'passed valid film html in headline position with 2d imax' do
|
181
|
+
let(:film_html) { read_film_html('glasgow-imax-at-gsc/the-hunger-games-catching-fire') }
|
182
|
+
|
183
|
+
it 'returns the correct number of Times' do
|
184
|
+
subject.keys.sort.must_equal ['2D IMAX']
|
185
|
+
subject['2D IMAX'].count.must_equal 27
|
186
|
+
end
|
187
|
+
|
188
|
+
it 'returns Times in UTC' do
|
189
|
+
subject['2D IMAX'].first[0].must_equal Time.utc(2013, 11, 20, 00, 30, 0)
|
190
|
+
subject['2D IMAX'].last[0].must_equal Time.utc(2013, 11, 28, 20, 40, 0)
|
191
|
+
end
|
192
|
+
end
|
193
|
+
end
|
194
|
+
|
195
|
+
private
|
196
|
+
|
197
|
+
def read_film_html(filename)
|
198
|
+
File.read(File.expand_path("../../../../fixtures/whatson/#{filename}.html", __FILE__))
|
199
|
+
end
|
200
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require_relative '../../test_helper'
|
2
|
+
|
3
|
+
describe CineworldUk::Screening do
|
4
|
+
describe '#new film_name, cinema_name, date, time, varient' do
|
5
|
+
it 'stores film_name, cinema_name & when (in UTC)' do
|
6
|
+
screening = CineworldUk::Screening.new 'Iron Man 3', "Duke's At Komedia", Time.parse('2013-09-12 11:00')
|
7
|
+
screening.film_name.must_equal 'Iron Man 3'
|
8
|
+
screening.cinema_name.must_equal "Duke's At Komedia"
|
9
|
+
screening.when.must_equal Time.utc(2013, 9, 12, 10, 0)
|
10
|
+
screening.booking_url.must_equal nil
|
11
|
+
screening.varient.must_equal nil
|
12
|
+
end
|
13
|
+
|
14
|
+
it 'stores varient if passed' do
|
15
|
+
screening = CineworldUk::Screening.new 'Iron Man 3', "Duke's At Komedia", Time.utc(2013, 9, 12, 11, 0), 'http://link.com', '2d'
|
16
|
+
screening.film_name.must_equal 'Iron Man 3'
|
17
|
+
screening.cinema_name.must_equal "Duke's At Komedia"
|
18
|
+
screening.when.must_equal Time.utc(2013, 9, 12, 11, 0)
|
19
|
+
screening.booking_url.must_equal 'http://link.com'
|
20
|
+
screening.varient.must_equal '2d'
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
describe '#date' do
|
25
|
+
subject { CineworldUk::Screening.new('Iron Man 3', "Duke's At Komedia", Time.utc(2013, 9, 12, 11, 0)).date }
|
26
|
+
it 'should return date of showing' do
|
27
|
+
subject.must_be_instance_of(Date)
|
28
|
+
subject.must_equal Date.new(2013, 9, 12)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
data/test/test_helper.rb
ADDED
metadata
ADDED
@@ -0,0 +1,219 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: cineworld_uk
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Andy Croll
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2013-12-06 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ~>
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.3'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ~>
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.3'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ! '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
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: webmock
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ! '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: httparty
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ! '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: nokogiri
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ! '>='
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ! '>='
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: tzinfo
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ! '>='
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :runtime
|
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: tzinfo-data
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ! '>='
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :runtime
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ! '>='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
description: Cineworld cinema data
|
112
|
+
email:
|
113
|
+
- andy@goodscary.com
|
114
|
+
executables: []
|
115
|
+
extensions: []
|
116
|
+
extra_rdoc_files: []
|
117
|
+
files:
|
118
|
+
- .gitignore
|
119
|
+
- .travis.yml
|
120
|
+
- CHANGELOG.md
|
121
|
+
- Gemfile
|
122
|
+
- LICENSE.txt
|
123
|
+
- README.md
|
124
|
+
- Rakefile
|
125
|
+
- cineworld_uk.gemspec
|
126
|
+
- lib/cineworld_uk.rb
|
127
|
+
- lib/cineworld_uk/cinema.rb
|
128
|
+
- lib/cineworld_uk/film.rb
|
129
|
+
- lib/cineworld_uk/internal/film_with_screenings_parser.rb
|
130
|
+
- lib/cineworld_uk/screening.rb
|
131
|
+
- lib/cineworld_uk/version.rb
|
132
|
+
- test/fixtures/cinemas.html
|
133
|
+
- test/fixtures/cinemas/brighton.html
|
134
|
+
- test/fixtures/cinemas/bristol.html
|
135
|
+
- test/fixtures/cinemas/bury-st-edmunds.html
|
136
|
+
- test/fixtures/cinemas/chelsea.html
|
137
|
+
- test/fixtures/cinemas/the-o2-grenwich.html
|
138
|
+
- test/fixtures/whatson/brighton.html
|
139
|
+
- test/fixtures/whatson/brighton/autism-friendly-cloudy-2.html
|
140
|
+
- test/fixtures/whatson/brighton/geethanjali-malayalam.html
|
141
|
+
- test/fixtures/whatson/brighton/gravity.html
|
142
|
+
- test/fixtures/whatson/brighton/take-2-thursday-about-time.html
|
143
|
+
- test/fixtures/whatson/glasgow-imax-at-gsc-cinema.html
|
144
|
+
- test/fixtures/whatson/glasgow-imax-at-gsc/the-hunger-games-catching-fire.html
|
145
|
+
- test/fixtures/whatson/the-o2-greenwich.html
|
146
|
+
- test/fixtures/whatson/the-o2-greenwich/gravity.html
|
147
|
+
- test/fixtures/whatson/wandsworth.html
|
148
|
+
- test/fixtures/whatson/wandsworth/arrambam-tamil.html
|
149
|
+
- test/fixtures/whatson/wandsworth/bolshoi-ballet-live-lost-illusions.html
|
150
|
+
- test/fixtures/whatson/wandsworth/frankenstein-nt-50th.html
|
151
|
+
- test/fixtures/whatson/wandsworth/met-opera-falstaff.html
|
152
|
+
- test/fixtures/whatson/wandsworth/nt-live-war-horse.html
|
153
|
+
- test/fixtures/whatson/wandsworth/royal-ballet-live-the-sleeping-beauty.html
|
154
|
+
- test/fixtures/whatson/wandsworth/royal-opera-live-parsifal-weird-date.html
|
155
|
+
- test/fixtures/whatson/wandsworth/rsc-live-richard-ii-encore.html
|
156
|
+
- test/fixtures/whatson/wandsworth/west-end-theatre-series-private-lives.html
|
157
|
+
- test/lib/cineworld_uk/cinema_test.rb
|
158
|
+
- test/lib/cineworld_uk/film_test.rb
|
159
|
+
- test/lib/cineworld_uk/internal/film_with_screenings_parser_test.rb
|
160
|
+
- test/lib/cineworld_uk/screening_test.rb
|
161
|
+
- test/lib/cineworld_uk/version_test.rb
|
162
|
+
- test/test_helper.rb
|
163
|
+
homepage: https://github.com/andycroll/cineworld_uk
|
164
|
+
licenses:
|
165
|
+
- MIT
|
166
|
+
metadata: {}
|
167
|
+
post_install_message:
|
168
|
+
rdoc_options: []
|
169
|
+
require_paths:
|
170
|
+
- lib
|
171
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
172
|
+
requirements:
|
173
|
+
- - ! '>='
|
174
|
+
- !ruby/object:Gem::Version
|
175
|
+
version: '0'
|
176
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - ! '>='
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: '0'
|
181
|
+
requirements: []
|
182
|
+
rubyforge_project:
|
183
|
+
rubygems_version: 2.1.10
|
184
|
+
signing_key:
|
185
|
+
specification_version: 4
|
186
|
+
summary: Parses cinema and showing data from the cineworld.co.uk website
|
187
|
+
test_files:
|
188
|
+
- test/fixtures/cinemas.html
|
189
|
+
- test/fixtures/cinemas/brighton.html
|
190
|
+
- test/fixtures/cinemas/bristol.html
|
191
|
+
- test/fixtures/cinemas/bury-st-edmunds.html
|
192
|
+
- test/fixtures/cinemas/chelsea.html
|
193
|
+
- test/fixtures/cinemas/the-o2-grenwich.html
|
194
|
+
- test/fixtures/whatson/brighton.html
|
195
|
+
- test/fixtures/whatson/brighton/autism-friendly-cloudy-2.html
|
196
|
+
- test/fixtures/whatson/brighton/geethanjali-malayalam.html
|
197
|
+
- test/fixtures/whatson/brighton/gravity.html
|
198
|
+
- test/fixtures/whatson/brighton/take-2-thursday-about-time.html
|
199
|
+
- test/fixtures/whatson/glasgow-imax-at-gsc-cinema.html
|
200
|
+
- test/fixtures/whatson/glasgow-imax-at-gsc/the-hunger-games-catching-fire.html
|
201
|
+
- test/fixtures/whatson/the-o2-greenwich.html
|
202
|
+
- test/fixtures/whatson/the-o2-greenwich/gravity.html
|
203
|
+
- test/fixtures/whatson/wandsworth.html
|
204
|
+
- test/fixtures/whatson/wandsworth/arrambam-tamil.html
|
205
|
+
- test/fixtures/whatson/wandsworth/bolshoi-ballet-live-lost-illusions.html
|
206
|
+
- test/fixtures/whatson/wandsworth/frankenstein-nt-50th.html
|
207
|
+
- test/fixtures/whatson/wandsworth/met-opera-falstaff.html
|
208
|
+
- test/fixtures/whatson/wandsworth/nt-live-war-horse.html
|
209
|
+
- test/fixtures/whatson/wandsworth/royal-ballet-live-the-sleeping-beauty.html
|
210
|
+
- test/fixtures/whatson/wandsworth/royal-opera-live-parsifal-weird-date.html
|
211
|
+
- test/fixtures/whatson/wandsworth/rsc-live-richard-ii-encore.html
|
212
|
+
- test/fixtures/whatson/wandsworth/west-end-theatre-series-private-lives.html
|
213
|
+
- test/lib/cineworld_uk/cinema_test.rb
|
214
|
+
- test/lib/cineworld_uk/film_test.rb
|
215
|
+
- test/lib/cineworld_uk/internal/film_with_screenings_parser_test.rb
|
216
|
+
- test/lib/cineworld_uk/screening_test.rb
|
217
|
+
- test/lib/cineworld_uk/version_test.rb
|
218
|
+
- test/test_helper.rb
|
219
|
+
has_rdoc:
|