konbikol 0.1.3 → 0.1.4

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6716fa0d342aecd16b4d6d9fcb21c29588e022c315236f7e19ab4d0592b1ab82
4
- data.tar.gz: c8c28fe2eeaee2b9449b64d5bbef0cc2585a97e6045c96475b75409b45179c3a
3
+ metadata.gz: 17cccb076cc787892f8df8c875b185157f1b8a31e6c0987f824a61c2f1fd2697
4
+ data.tar.gz: 7b6158a9a144621adbd1366ee9d66f2355610493b4ac32e3d4a9db1df30d6857
5
5
  SHA512:
6
- metadata.gz: b2dd655e812f2883802d9cfabafc92edea9ab4e1e4f69e939991c46b51ac80c57108b2b38c9bcb8deccdeffde75c49af79d18ecd63c1f42781ff42dbd51ccaad
7
- data.tar.gz: 737d18d23341d4b7e1bd6a90261050c51c876bafba1994e75ef9f08ee4264e6f3b9c5254f3ac2b584be7486b092fd74fd54c528f48ebfcad9f432773f015c638
6
+ metadata.gz: 96cd820e81c2935cbfa98765398ae05a92b7b8db75344c390908fb364ed1574651fd23c881e79e6a614d12808494bd77e5003c7819a884d65b852df51859da48
7
+ data.tar.gz: 26a41d9cb65744e6fd67b7fd00f0dffebf5c9d4400cb5ed6b13314a8ceea92f64fd670a0aa81207fbc99b08606b66e8bad03728f171664a94728b9d2d8805e7f
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- konbikol (0.1.3)
4
+ konbikol (0.1.4)
5
5
  icalendar (~> 2.5.1)
6
6
  pdf-reader (~> 2.1.0)
7
7
  tzinfo (~> 1.2.5)
@@ -113,8 +113,12 @@ module Konbikol
113
113
  end
114
114
 
115
115
  def purchase_time
116
+ return @purchase_time if @purchase_time
117
+
118
+ line = find_next_non_empty_line_below_line_matching_regex(/Zapłacono i wystawiono dnia/)
119
+
116
120
  @purchase_time ||= Time.parse(
117
- ticket_text.lines[35].split(/\s{2,}/).last.match(/(.+)\(.+/)[1]
121
+ line.split(/\s{2,}/).last.match(/(.+)\(.+/)[1]
118
122
  )
119
123
  end
120
124
 
@@ -167,16 +171,23 @@ module Konbikol
167
171
  end
168
172
 
169
173
  def departure_line_index
170
- return @departure_line_index if @departure_line_index
174
+ @departure_line_index ||= find_index_of_next_non_empty_line_below_line_matching_regex(/Stacja\s+Data\s+Godzina/)
175
+ end
171
176
 
177
+ def find_index_of_next_non_empty_line_below_line_matching_regex(regex)
172
178
  lines_with_index = ticket_text.lines.each_with_index
173
- header_line_index = lines_with_index.find { |line, _| line =~ /Stacja\s+Data\s+Godzina/ }.last
179
+ index_of_line_matching_regex = lines_with_index.find { |line, _| line =~ regex }.last
174
180
 
175
- # Find the next line after the header line that's not empty.
176
- @departure_line_index = lines_with_index.to_a
177
- .slice(header_line_index + 1, lines_with_index.size)
181
+ # Find the next line after the matching line that's not empty.
182
+ lines_with_index.to_a
183
+ .slice(index_of_line_matching_regex + 1, lines_with_index.size)
178
184
  .find { |line, _| !line.strip.empty? }
179
185
  .last
180
186
  end
187
+
188
+ def find_next_non_empty_line_below_line_matching_regex(regex)
189
+ index = find_index_of_next_non_empty_line_below_line_matching_regex(regex)
190
+ ticket_text.lines[index]
191
+ end
181
192
  end
182
193
  end
@@ -1,3 +1,3 @@
1
1
  module Konbikol
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: konbikol
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rafał Cieślak
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-07-09 00:00:00.000000000 Z
11
+ date: 2019-08-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler