cineworld_uk 2.1.1 → 2.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8d3988973fca9514cfe44b60244650dbe5d2d92a
4
- data.tar.gz: 7b4e3b7ca15920c3914b6e56909a766eef981856
3
+ metadata.gz: 20a09c3d7ac65fa3cbed58f12ddea318eb5b4278
4
+ data.tar.gz: dbe8959a56d9051b3cdb843a0d042f30a2ab22b9
5
5
  SHA512:
6
- metadata.gz: 2f41d91e4ec3ba503693dfbe4c5d954db0d2a074f265be9a019bdc4796c7a674aac106c2e784f64b2316e5e8244b1d5ebf17285e1e055208a052e19de21bd3de
7
- data.tar.gz: 327dfa5a595d1ff11c89105ade182fa4675cdcf9608f4972ea62a1fa052fe042249f363d87283257122760e4278ab40c5ad4d7f0f33f5f69d6fe97bfa29a0c0b
6
+ metadata.gz: 5efe8ed183e87ce42d3436d48a9107b65d6d3e999a6b4e634aa65537dce8ffed5bcb047e15df6d79256808291676475539592248d83a15ebd2c974e1b6f3c113
7
+ data.tar.gz: 2bc533fecfdcfa5e15b50d84fd062f930072d9f9d6fc41b6b7b4fb6c2d5bb279d81f9ae073ec2b0f5a938afd2988c569cfa822663f8f7caf6b9eea27701bf8f6
data/CHANGELOG.md CHANGED
@@ -1,57 +1,70 @@
1
- ## 2.1.1 _30th September 2014_
1
+ # Change Log
2
2
 
3
- Bug fix
3
+ All notable changes to this project will be documented in this file.
4
4
 
5
+
6
+ ## 2.1.2 - 2014-10-20
7
+
8
+ ### Added
9
+ - better title sanitization
10
+ - ENO -> English National Opera
11
+
12
+ ### Fixed
13
+ - typos in the test suite
14
+
15
+
16
+ ## 2.1.1 - 2014-09-30
17
+
18
+ ### Fixed
5
19
  - pilot error
6
20
 
7
- ## 2.1.0 _30th September 2014_
8
21
 
9
- Feature
22
+ ## 2.1.0 2014-09-30
10
23
 
24
+ ### Added
11
25
  - Name Sanitization
12
26
 
13
- Bugfix
14
-
27
+ ### Fixed
15
28
  - Films with no 'link' on the screenings page now parsed
16
29
 
17
- ## 2.0.5 _28th September 2014_
18
30
 
19
- Bugfix
31
+ ## 2.0.5 2014-09-28
20
32
 
33
+ ### Fixed
21
34
  - fix cinema parsing call to website class
22
35
 
23
- ## 2.0.4 _5th September 2014_
24
36
 
25
- Bugfix
37
+ ## 2.0.4 2014-09-05
26
38
 
39
+ ### Fixed
27
40
  - fix the parsing
28
41
 
29
- ## 2.0.3 _5th September 2014_
30
42
 
31
- Bugfix
43
+ ## 2.0.3 2014-09-05
32
44
 
45
+ ### Fixed
33
46
  - fix the Website class and use `open-uri`
34
47
 
35
- ## 2.0.2 _25th July 2014_
36
48
 
37
- Bugfix
49
+ ## 2.0.2 2014-07-25
38
50
 
51
+ ### Fixed
39
52
  - bad behaviour for screening#variant
40
53
 
41
- ## 2.0.1 _25th July 2014_
42
54
 
43
- Bugfix
55
+ ## 2.0.1 2014-07-25
44
56
 
57
+ ### Fixed
45
58
  - httparty still required, oops
46
59
 
47
- ## 2.0.0 _25th July 2014_
48
60
 
49
- Bugfix
61
+ ## 2.0.0 2014-07-25
50
62
 
63
+ ### Fixed
51
64
  - Cineworld changed their markup
65
+ - General Rubocop improvements
52
66
 
53
- Features
54
-
67
+ ### Added
55
68
  - Less logic in the Cinema class. Moved to `Film` and `Screening`.
56
69
  - Introduce `Internal::Website` class for all website comms
57
70
  - Rewrite Parsers and tests to be less exact but less fragile
@@ -59,59 +72,56 @@ Features
59
72
  - Build `WhatsonParser` to break into 'films with screenings'
60
73
  - `FilmWithScreenings` then uses `ScreeningParser` class to get individual screening info
61
74
  - `ruby test/fixture_updator.rb` produces new fixtures from the live website
62
- - it will break a few tests when run and committed but most should be ok
63
75
  - documentation
76
+ - Travis gets Ruby 2.1.2
64
77
 
65
- Under the hood
66
-
78
+ ### Removed
67
79
  - Remove dependancy on HTTParty
68
- - Travis gets Ruby 2.1.2
69
- - General Rubocop improvements
70
80
 
71
- ## 1.0.6 _28th Feb 2014_
72
81
 
73
- Bugfix
82
+ ## 1.0.6 2014-02-28
74
83
 
84
+ ### Fixed
75
85
  - UTF encoding in Titleize internal class for ruby 1.9.3
76
86
 
77
- ## 1.0.5 _28th Feb 2014_
78
87
 
79
- Bugfix
88
+ ## 1.0.5 2014-02-28
80
89
 
90
+ ### Fixed
81
91
  - Vestigal require of titleize gem
82
92
 
83
- ## 1.0.4 _27th Feb 2014_
84
93
 
85
- Under the hood
94
+ ## 1.0.4 2014-02-27
86
95
 
96
+ ### Added
87
97
  - Standardizing film names using modified titlecase from `titlecase` gem
88
98
  - Film name parsing now moved to seperate class
89
- - rake console task added
99
+ - `rake console` task added
90
100
  - MRI 2.1.0 support on Travis CI
91
101
 
92
- ## 1.0.3, _16th Jan 2014_
93
102
 
94
- Additional methods
103
+ ## 1.0.3 2014-01-16
95
104
 
105
+ ### Added
96
106
  - cinema#full_name including cinema brand
97
107
  - tidy up cinema naming to use colons
98
108
 
99
- ## 1.0.2, _3rd Jan 2014_
100
109
 
101
- Under the hood
110
+ ## 1.0.2 2014-01-03
102
111
 
112
+ ### Added
103
113
  - deal with HFR screenings, bloody hobbitses
104
114
 
105
- ## 1.0.1, _3rd Jan 2014_
106
115
 
107
- External interface
116
+ ## 1.0.1 2014-01-03
108
117
 
118
+ ### Added
109
119
  - screening#variant for spelling win, #varient maintained for compatability
110
120
 
111
- ## 1.0.0, _6th Dec 2013_
112
121
 
113
- First ready-for-public release
122
+ ## 1.0.0 2013-12-06
114
123
 
124
+ ### Added
115
125
  - Added changelog
116
126
  - added booking url to screenings
117
127
  - screenings created with UTC Time objects not strings
@@ -23,6 +23,8 @@ module CineworldUk
23
23
  # attributes of all the screenings
24
24
  # @return [Array<Hash>]
25
25
  def to_a
26
+ return [] unless performances_doc
27
+
26
28
  performances_doc.map do |node|
27
29
  next unless screening_parser_hash(node)
28
30
  screening_parser_hash(node).merge(film_hash)
@@ -19,11 +19,14 @@ module CineworldUk
19
19
  '- Special Performance', # special performance
20
20
  /\ATake 2 -/, # take 2
21
21
  ' - Movies for Juniors', # movies for juniors
22
+ '(IMAX)', # IMAX
23
+ 'SciScreen: ', # SciScreen
22
24
  ]
23
25
 
24
26
  # regexes and their replacements
25
27
  REPLACE = {
26
28
  /Bolshoi Ballet: (.*)/ => 'Bolshoi: ',
29
+ /ENO: (.*)/i => 'English National Opera: ',
27
30
  /Guardian Live - (.*)/ => 'The Guardian: ',
28
31
  /Met Opera - (.*)/i => 'Met Opera: ',
29
32
  /NT Live: (.*)/ => 'National Theatre: ',
@@ -32,9 +32,9 @@ module CineworldUk
32
32
  # @param [Integer] cinema_id id of the cinema on the website
33
33
  # @return [Array<CineworldUk::Screening>]
34
34
  def self.at(cinema_id)
35
- whatson_parser(cinema_id).films_with_screenings.map do |html|
35
+ whatson_parser(cinema_id).films_with_screenings.flat_map do |html|
36
36
  create_for_single_film(html, cinema_id)
37
- end.flatten
37
+ end
38
38
  end
39
39
 
40
40
  # The date of the screening
@@ -1,6 +1,6 @@
1
1
  # Ruby interface for http://www.cineworld.co.uk
2
- # @version 2.1.1
2
+ # @version 2.1.2
3
3
  module CineworldUk
4
4
  # Gem version
5
- VERSION = '2.1.1'
5
+ VERSION = '2.1.2'
6
6
  end
@@ -299,8 +299,4 @@ describe CineworldUk::Cinema do
299
299
  def information_html(filename)
300
300
  read_file("../../../fixtures/information/#{filename}.html")
301
301
  end
302
-
303
- def parse(html)
304
- Nokogiri::HTML(html)
305
- end
306
302
  end
@@ -46,7 +46,7 @@ describe CineworldUk::Internal::TitleSanitizer do
46
46
  end
47
47
  end
48
48
 
49
- describe 'Bolshoi screeening' do
49
+ describe 'Bolshoi screening' do
50
50
  let(:title) { 'Bolshoi Ballet: The Legend of Love' }
51
51
 
52
52
  it 'removes prefix' do
@@ -54,7 +54,23 @@ describe CineworldUk::Internal::TitleSanitizer do
54
54
  end
55
55
  end
56
56
 
57
- describe 'Met Opera screeening' do
57
+ describe 'English National Opera screening' do
58
+ let(:title) { 'ENO: La Traviata ' }
59
+
60
+ it 'removes prefix' do
61
+ subject.must_equal('English National Opera: La Traviata')
62
+ end
63
+ end
64
+
65
+ describe 'with IMAX' do
66
+ let(:title) { '(IMAX) Fury' }
67
+
68
+ it 'removes prefix' do
69
+ subject.must_equal('Fury')
70
+ end
71
+ end
72
+
73
+ describe 'Met Opera screening' do
58
74
  let(:title) { 'MET Opera - Le Nozze Di Figaro' }
59
75
 
60
76
  it 'removes prefix' do
@@ -62,7 +78,7 @@ describe CineworldUk::Internal::TitleSanitizer do
62
78
  end
63
79
  end
64
80
 
65
- describe 'NT Live screeening' do
81
+ describe 'NT Live screening' do
66
82
  let(:title) { 'NT Live Encore: Frankenstein (starring Benedict Cumberbatch)' }
67
83
 
68
84
  it 'removes prefix' do
@@ -70,7 +86,7 @@ describe CineworldUk::Internal::TitleSanitizer do
70
86
  end
71
87
  end
72
88
 
73
- describe 'National Theatre screeening' do
89
+ describe 'National Theatre screening' do
74
90
  let(:title) { 'NT Live: Treasure Island' }
75
91
 
76
92
  it 'removes prefix' do
@@ -78,7 +94,7 @@ describe CineworldUk::Internal::TitleSanitizer do
78
94
  end
79
95
  end
80
96
 
81
- describe 'National Theatre Encore screeening' do
97
+ describe 'National Theatre Encore screening' do
82
98
  let(:title) { 'NT Live: A Streetcar Named Desire (Young Vic) - Encore' }
83
99
 
84
100
  it 'removes prefix' do
@@ -86,7 +102,7 @@ describe CineworldUk::Internal::TitleSanitizer do
86
102
  end
87
103
  end
88
104
 
89
- describe 'ROH screeening' do
105
+ describe 'ROH screening' do
90
106
  let(:title) { 'ROH - I Due Foscari' }
91
107
 
92
108
  it 'removes prefix' do
@@ -94,7 +110,7 @@ describe CineworldUk::Internal::TitleSanitizer do
94
110
  end
95
111
  end
96
112
 
97
- describe 'RSC screeening' do
113
+ describe 'RSC screening' do
98
114
  let(:title) { "RSC Live: Love's Labour's Lost" }
99
115
 
100
116
  it 'removes prefix' do
@@ -102,7 +118,15 @@ describe CineworldUk::Internal::TitleSanitizer do
102
118
  end
103
119
  end
104
120
 
105
- describe 'special screeening' do
121
+ describe 'SciScreen screening' do
122
+ let(:title) { 'SciScreen: Dallas Buyers Club' }
123
+
124
+ it 'removes prefix' do
125
+ subject.must_equal('Dallas Buyers Club')
126
+ end
127
+ end
128
+
129
+ describe 'special screening' do
106
130
  let(:title) { 'Billy Elliot The Musical Live - Special Performance' }
107
131
 
108
132
  it 'removes prefix' do
@@ -110,7 +134,7 @@ describe CineworldUk::Internal::TitleSanitizer do
110
134
  end
111
135
  end
112
136
 
113
- describe 'Take 2 screeening' do
137
+ describe 'Take 2 screening' do
114
138
  let(:title) { 'Take 2 - Boyhood' }
115
139
 
116
140
  it 'removes prefix' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cineworld_uk
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.1
4
+ version: 2.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andy Croll
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-30 00:00:00.000000000 Z
11
+ date: 2014-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler