srt 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- Mzk5Mjk2ZGU5NjI2NTZjYWVmN2JkN2E1MTY4ZjJkMmEzZmRmNzA5ZA==
4
+ M2FlZWEzMGIwYjhjZjg5NmFkYjM1YjBlMGYyNTA0YTAzMTVhNWNmMA==
5
5
  data.tar.gz: !binary |-
6
- MTIxY2EyYTczM2Q2NTg1NjZlZGNlNDQ4ZGQ4MDRmZDBmOWE3OTA1Yg==
6
+ ZWEzYTM3YjJlMDA1YjUzNzYzMmQ4ZWFjNjM2NzRhM2VkZjAwZjRhNw==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MTQyM2M1Y2I4ZDY5MGJkNTk3MWVkNGJkNzk5ZWI5MTJkYjZkMjBiYzhmMDY0
10
- YThlZDQyOWQ5YzRmYjNjODkwYjFmMGM4ZjQ1ZTgwN2QwMTJiOWM3Y2I0Y2M1
11
- Njc4NTg5ZjI5ZTNiZTAxZjYzYzQzZjg2YmFjODY5NzUyOTVjOTE=
9
+ ZTU1NWFiNWFiMGMyODM0OWMzMTdhZTIxNGI0NTc5NjIwMjJlZDk2Zjc0OTY5
10
+ ZmI3Njk2YmUxNTNkOWJlMjUxNDE1MzdiZjQwMWNmMzg0ZWU2MDAzZDU5MDY2
11
+ NzNjM2IzMGMyMDI4Yjc4YmJiM2E4Y2Q1YzcwZTYxODBlZWE5NDU=
12
12
  data.tar.gz: !binary |-
13
- NzIyNzExYzBiMjYzZWMzOGVkZDMyZjhiN2EyNWNmNGZhNThhNzkwMDhmNGRk
14
- NGE3ZTMxMjA5YmNlYjJmYmNmZmZmYTgwNDIzOWJkZjA2YzE2YzAyZThlOGY5
15
- ZTNhYTBlN2ZiYmFlYmY2ZmM4NzI0ODc5NTg4MmFmNDY5YjE1NTE=
13
+ OGVmZDNhOTYwYjYxZGMzNTc3YzQ0YjliODhjNTVlODliMTU3MzAzMDA1YTE5
14
+ MmJjOGNiMTZlYTc3NTc3MDI4YjZlMDZiZjI3MWQwMTgwZDZiOWFmZTE5ZjYy
15
+ MWJiY2I0MTJkODYxNjFlYjcwY2I4ODM3MjJjMjQ4NDczMGRkYTc=
@@ -209,7 +209,7 @@ module SRT
209
209
  end
210
210
 
211
211
  def to_s(time_str_function=:time_str)
212
- lines.map { |l| [l.sequence, (l.display_coordinates ? l.send(time_str_function) + l.display_coordinates : l.send(time_str_function)), l.text, ""] }.flatten.join("\n")
212
+ lines.map { |l| l.to_s(time_str_function) }.join("\n")
213
213
  end
214
214
 
215
215
  def to_webvtt
@@ -39,5 +39,9 @@ module SRT
39
39
  def webvtt_time_str
40
40
  time_str(".")
41
41
  end
42
+
43
+ def to_s(time_str_function=:time_str)
44
+ [sequence, (display_coordinates ? send(time_str_function) + display_coordinates : send(time_str_function)), text, ''].flatten.join("\n")
45
+ end
42
46
  end
43
47
  end
@@ -12,7 +12,7 @@ module SRT
12
12
  end
13
13
 
14
14
  def timecode(timecode_string)
15
- mres = timecode_string.match(/(?<h>\d+):(?<m>\d+):(?<s>\d+),(?<ms>\d+)/)
15
+ mres = timecode_string.match(/(?<h>\d+):(?<m>\d+):(?<s>\d+)[,.](?<ms>\d+)/)
16
16
  mres ? "#{mres["h"].to_i * 3600 + mres["m"].to_i * 60 + mres["s"].to_i}.#{mres["ms"]}".to_f : nil
17
17
  end
18
18
 
@@ -1,3 +1,3 @@
1
1
  module SRT
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
@@ -5,14 +5,14 @@ describe SRT::File do
5
5
  describe '#parse' do
6
6
  context "parsing with debug true" do
7
7
  it "should be verbose when failing" do
8
- $stderr.should_receive(:puts).once
9
- SRT::File.parse(File.open("./spec/fixtures/invalid.srt"), debug: true).errors.should_not be_empty
8
+ expect($stderr).to receive(:puts).once
9
+ expect(SRT::File.parse(File.open("./spec/fixtures/invalid.srt"), debug: true).errors).not_to be_empty
10
10
  end
11
11
  end
12
12
  context "parsing with debug false" do
13
13
  it "should raise exception silently" do
14
- $stderr.should_not_receive(:puts)
15
- SRT::File.parse(File.open("./spec/fixtures/invalid.srt")).errors.should_not be_empty
14
+ expect($stderr).not_to receive(:puts)
15
+ expect(SRT::File.parse(File.open("./spec/fixtures/invalid.srt")).errors).not_to be_empty
16
16
  end
17
17
  end
18
18
  end
@@ -20,39 +20,39 @@ describe SRT::File do
20
20
  shared_examples_for "an SRT file" do
21
21
  context "when parsing a properly formatted BSG SRT file" do
22
22
  it "should return an SRT::File" do
23
- subject.class.should eq(SRT::File)
23
+ expect(subject.class).to eq(SRT::File)
24
24
  end
25
25
 
26
26
  it "should have 600 lines" do
27
- subject.lines.size.should eq(600)
27
+ expect(subject.lines.size).to eq(600)
28
28
  end
29
29
 
30
30
  it "should have no errors" do
31
- subject.errors.should be_empty
31
+ expect(subject.errors).to be_empty
32
32
  end
33
33
 
34
34
  it "should have the expected sequence number on the first subtitle" do
35
- subject.lines.first.sequence.should eq(1)
35
+ expect(subject.lines.first.sequence).to eq(1)
36
36
  end
37
37
 
38
38
  it "should have the expected timecodes on the first subtitle" do
39
- subject.lines.first.time_str.should eq("00:00:02,110 --> 00:00:04,578")
39
+ expect(subject.lines.first.time_str).to eq("00:00:02,110 --> 00:00:04,578")
40
40
  end
41
41
 
42
42
  it "should have the expected text on the first subtitle" do
43
- subject.lines.first.text.should eq(["<i>(male narrator) Previously", "on Battlestar Galactica.</i>"])
43
+ expect(subject.lines.first.text).to eq(["<i>(male narrator) Previously", "on Battlestar Galactica.</i>"])
44
44
  end
45
45
 
46
46
  it "should have the expected sequence number on the last subtitle" do
47
- subject.lines.last.sequence.should eq(600)
47
+ expect(subject.lines.last.sequence).to eq(600)
48
48
  end
49
49
 
50
50
  it "should have the expected timecodes on the last subtitle" do
51
- subject.lines.last.time_str.should eq("00:43:26,808 --> 00:43:28,139")
51
+ expect(subject.lines.last.time_str).to eq("00:43:26,808 --> 00:43:28,139")
52
52
  end
53
53
 
54
54
  it "should have the expected text on the last subtitle" do
55
- subject.lines.last.text.should eq(["Thank you."])
55
+ expect(subject.lines.last.text).to eq(["Thank you."])
56
56
  end
57
57
  end
58
58
  end
@@ -62,15 +62,15 @@ describe SRT::File do
62
62
  let(:file) { SRT::File.parse(File.open("./spec/fixtures/wotw-dubious.srt")) }
63
63
 
64
64
  it "should parse" do
65
- file.class.should eq(SRT::File)
65
+ expect(file.class).to eq(SRT::File)
66
66
  end
67
67
 
68
68
  it "should have 1123 lines" do
69
- file.lines.size.should eq(1123)
69
+ expect(file.lines.size).to eq(1123)
70
70
  end
71
71
 
72
72
  it "should have no errors" do
73
- file.errors.should be_empty
73
+ expect(file.errors).to be_empty
74
74
  end
75
75
  end
76
76
 
@@ -78,23 +78,23 @@ describe SRT::File do
78
78
  let(:file) { SRT::File.parse(File.open("./spec/fixtures/coordinates-dummy.srt")) }
79
79
 
80
80
  it "should return an SRT::File" do
81
- file.class.should eq(SRT::File)
81
+ expect(file.class).to eq(SRT::File)
82
82
  end
83
83
 
84
84
  it "should have 3 lines" do
85
- file.lines.size.should eq(3)
85
+ expect(file.lines.size).to eq(3)
86
86
  end
87
87
 
88
88
  it "should have no errors" do
89
- file.errors.should be_empty
89
+ expect(file.errors).to be_empty
90
90
  end
91
91
 
92
92
  it "should have the expected display coordinates on the first subtitle" do
93
- file.lines.first.display_coordinates.should eq("X1:100 X2:600 Y1:1 Y2:4")
93
+ expect(file.lines.first.display_coordinates).to eq("X1:100 X2:600 Y1:1 Y2:4")
94
94
  end
95
95
 
96
96
  it "should have the expected display coordinates on the last subtitle" do
97
- file.lines.last.display_coordinates.should eq("X1:1 X2:333 Y1:50 Y2:29")
97
+ expect(file.lines.last.display_coordinates).to eq("X1:1 X2:333 Y1:50 Y2:29")
98
98
  end
99
99
  end
100
100
  end
@@ -118,19 +118,19 @@ describe SRT::File do
118
118
  before { part1.append({ "00:53:57,241" => part2 }) }
119
119
 
120
120
  it "should have grown to 808 subtitles" do
121
- part1.lines.length.should eq(808)
121
+ expect(part1.lines.length).to eq(808)
122
122
  end
123
123
 
124
124
  it "should have appended subtitles starting with sequence number 448" do
125
- part1.lines[447].sequence.should eq(448)
125
+ expect(part1.lines[447].sequence).to eq(448)
126
126
  end
127
127
 
128
128
  it "should have appended subtitles ending with sequence number 808" do
129
- part1.lines.last.sequence.should eq(808)
129
+ expect(part1.lines.last.sequence).to eq(808)
130
130
  end
131
131
 
132
132
  it "should have appended subtitles relatively from 00:53:57,241" do
133
- part1.lines[447].time_str.should eq("00:54:02,152 --> 00:54:04,204")
133
+ expect(part1.lines[447].time_str).to eq("00:54:02,152 --> 00:54:04,204")
134
134
  end
135
135
  end
136
136
 
@@ -138,7 +138,7 @@ describe SRT::File do
138
138
  before { part1.append({ "+7.241s" => part2 }) }
139
139
 
140
140
  it "should have appended subtitles relatively from +7.241s after the previously last subtitle" do
141
- part1.lines[447].time_str.should eq("00:54:02,283 --> 00:54:04,335")
141
+ expect(part1.lines[447].time_str).to eq("00:54:02,283 --> 00:54:04,335")
142
142
  end
143
143
  end
144
144
  end
@@ -152,29 +152,29 @@ describe SRT::File do
152
152
  let(:result) { file.split( :at => "00:19:24,500" ) }
153
153
 
154
154
  it "should return an array containing two SRT::File instances" do
155
- result.length.should eq(2)
156
- result[0].class.should eq(SRT::File)
157
- result[1].class.should eq(SRT::File)
155
+ expect(result.length).to eq(2)
156
+ expect(result[0].class).to eq(SRT::File)
157
+ expect(result[1].class).to eq(SRT::File)
158
158
  end
159
159
 
160
160
  it "should include a subtitle that overlaps a splitting point in the first file" do
161
- result[0].lines.last.text.should eq(["I'll see you guys in combat."])
161
+ expect(result[0].lines.last.text).to eq(["I'll see you guys in combat."])
162
162
  end
163
163
 
164
164
  it "should make an overlapping subtitle end at the splitting point in the first file" do
165
- result[0].lines.last.time_str.should eq("00:19:23,901 --> 00:19:24,500")
165
+ expect(result[0].lines.last.time_str).to eq("00:19:23,901 --> 00:19:24,500")
166
166
  end
167
167
 
168
168
  it "should include a subtitle that overlaps a splitting point in the second file as well" do
169
- result[1].lines.first.text.should eq(["I'll see you guys in combat."])
169
+ expect(result[1].lines.first.text).to eq(["I'll see you guys in combat."])
170
170
  end
171
171
 
172
172
  it "should make an overlapping subtitle remain at the beginning in the second file" do
173
- result[1].lines.first.time_str.should eq("00:00:00,000 --> 00:00:01,528")
173
+ expect(result[1].lines.first.time_str).to eq("00:00:00,000 --> 00:00:01,528")
174
174
  end
175
175
 
176
176
  it "should shift back all timecodes of the second file relative to the new file beginning" do
177
- result[1].lines[1].time_str.should eq("00:00:01,737 --> 00:00:03,466")
177
+ expect(result[1].lines[1].time_str).to eq("00:00:01,737 --> 00:00:03,466")
178
178
  end
179
179
  end
180
180
 
@@ -182,29 +182,29 @@ describe SRT::File do
182
182
  let(:result) { file.split( :at => "00:19:24,500", :timeshift => false ) }
183
183
 
184
184
  it "should return an array containing two SRT::File instances" do
185
- result.length.should eq(2)
186
- result[0].class.should eq(SRT::File)
187
- result[1].class.should eq(SRT::File)
185
+ expect(result.length).to eq(2)
186
+ expect(result[0].class).to eq(SRT::File)
187
+ expect(result[1].class).to eq(SRT::File)
188
188
  end
189
189
 
190
190
  it "should include a subtitle that overlaps a splitting point in the first file" do
191
- result[0].lines.last.text.should eq(["I'll see you guys in combat."])
191
+ expect(result[0].lines.last.text).to eq(["I'll see you guys in combat."])
192
192
  end
193
193
 
194
194
  it "should not make an overlapping subtitle end at the splitting point in the first file" do
195
- result[0].lines.last.time_str.should eq("00:19:23,901 --> 00:19:26,028")
195
+ expect(result[0].lines.last.time_str).to eq("00:19:23,901 --> 00:19:26,028")
196
196
  end
197
197
 
198
198
  it "should include a subtitle that overlaps a splitting point in the second file as well" do
199
- result[1].lines.first.text.should eq(["I'll see you guys in combat."])
199
+ expect(result[1].lines.first.text).to eq(["I'll see you guys in combat."])
200
200
  end
201
201
 
202
202
  it "should not make an overlapping subtitle remain at the beginning in the second file" do
203
- result[1].lines.first.time_str.should eq("00:19:23,901 --> 00:19:26,028")
203
+ expect(result[1].lines.first.time_str).to eq("00:19:23,901 --> 00:19:26,028")
204
204
  end
205
205
 
206
206
  it "should not shift back timecodes of the second file relative to the new file beginning" do
207
- result[1].lines[1].time_str.should eq("00:19:26,237 --> 00:19:27,966")
207
+ expect(result[1].lines[1].time_str).to eq("00:19:26,237 --> 00:19:27,966")
208
208
  end
209
209
  end
210
210
 
@@ -212,31 +212,31 @@ describe SRT::File do
212
212
  let(:result) { file.split( :at => ["00:15:00,000", "00:30:00,000"] ) }
213
213
 
214
214
  it "should return an array containing three SRT::File instances" do
215
- result.length.should eq(3)
216
- result[0].class.should eq(SRT::File)
217
- result[1].class.should eq(SRT::File)
218
- result[2].class.should eq(SRT::File)
215
+ expect(result.length).to eq(3)
216
+ expect(result[0].class).to eq(SRT::File)
217
+ expect(result[1].class).to eq(SRT::File)
218
+ expect(result[2].class).to eq(SRT::File)
219
219
  end
220
220
 
221
221
  it "should let subtitles start at sequence number #1 in all three files" do
222
- result[0].lines.first.sequence.should eq(1)
223
- result[1].lines.first.sequence.should eq(1)
224
- result[2].lines.first.sequence.should eq(1)
222
+ expect(result[0].lines.first.sequence).to eq(1)
223
+ expect(result[1].lines.first.sequence).to eq(1)
224
+ expect(result[2].lines.first.sequence).to eq(1)
225
225
  end
226
226
 
227
227
  it "should put 176 subtitles in the first file" do
228
- result[0].lines.length.should eq(176)
229
- result[0].lines.last.sequence.should eq(176)
228
+ expect(result[0].lines.length).to eq(176)
229
+ expect(result[0].lines.last.sequence).to eq(176)
230
230
  end
231
231
 
232
232
  it "should put 213 subtitles in the second file" do
233
- result[1].lines.length.should eq(213)
234
- result[1].lines.last.sequence.should eq(213)
233
+ expect(result[1].lines.length).to eq(213)
234
+ expect(result[1].lines.last.sequence).to eq(213)
235
235
  end
236
236
 
237
237
  it "should put 212 subtitles in the third file" do
238
- result[2].lines.length.should eq(212)
239
- result[2].lines.last.sequence.should eq(212)
238
+ expect(result[2].lines.length).to eq(212)
239
+ expect(result[2].lines.last.sequence).to eq(212)
240
240
  end
241
241
  end
242
242
 
@@ -244,9 +244,9 @@ describe SRT::File do
244
244
  let(:result) { file.split( :at => "00:19:24,500", :every => "00:00:01,000" ) }
245
245
 
246
246
  it "should return an array containing two SRT::File instances, ignoring :every" do
247
- result.length.should eq(2)
248
- result[0].class.should eq(SRT::File)
249
- result[1].class.should eq(SRT::File)
247
+ expect(result.length).to eq(2)
248
+ expect(result[0].class).to eq(SRT::File)
249
+ expect(result[1].class).to eq(SRT::File)
250
250
  end
251
251
  end
252
252
 
@@ -254,9 +254,9 @@ describe SRT::File do
254
254
  let(:result) { file.split( :every => "00:05:00,000" ) }
255
255
 
256
256
  it "should return an array containing nine SRT::File instances" do
257
- result.length.should eq(9)
257
+ expect(result.length).to eq(9)
258
258
  (0...result.count).each do |n|
259
- result[n].class.should eq(SRT::File)
259
+ expect(result[n].class).to eq(SRT::File)
260
260
  end
261
261
  end
262
262
  end
@@ -265,8 +265,8 @@ describe SRT::File do
265
265
  let(:result) { file.split( :at => "00:19:24,500", :renumber => false ) }
266
266
 
267
267
  it "sequence for the last line of first part should be the sequence for the first line of second part" do
268
- result[0].lines.last.text.should == result[1].lines.first.text
269
- result[0].lines.last.sequence.should == result[1].lines.first.sequence
268
+ expect(result[0].lines.last.text).to eq(result[1].lines.first.text)
269
+ expect(result[0].lines.last.sequence).to eq(result[1].lines.first.sequence)
270
270
  end
271
271
  end
272
272
 
@@ -274,12 +274,12 @@ describe SRT::File do
274
274
  let(:result) { file.split( :at => "00:19:24,500", :renumber => true ) }
275
275
 
276
276
  it "first line of second part's number should be one" do
277
- result[1].lines.first.sequence.should == 1
277
+ expect(result[1].lines.first.sequence).to eq(1)
278
278
  end
279
279
 
280
280
  it "sequence for the last line of first part should have different number than the sequence for the first line of second part" do
281
- result[0].lines.last.text.should == result[1].lines.first.text
282
- result[0].lines.last.sequence.should_not == result[1].lines.first.sequence
281
+ expect(result[0].lines.last.text).to eq(result[1].lines.first.text)
282
+ expect(result[0].lines.last.sequence).not_to eq(result[1].lines.first.sequence)
283
283
  end
284
284
  end
285
285
 
@@ -287,8 +287,8 @@ describe SRT::File do
287
287
  let(:result) { file.split( :at => "00:19:24,500", :timeshift => false ) }
288
288
 
289
289
  it "time for last line of first part should be the time for first line of second part" do
290
- result[0].lines.last.text.should == result[1].lines.first.text
291
- result[0].lines.last.time_str.should == result[1].lines.first.time_str
290
+ expect(result[0].lines.last.text).to eq(result[1].lines.first.text)
291
+ expect(result[0].lines.last.time_str).to eq(result[1].lines.first.time_str)
292
292
  end
293
293
  end
294
294
 
@@ -296,12 +296,12 @@ describe SRT::File do
296
296
  let(:result) { file.split( :at => "00:19:24,500", :timeshift => true ) }
297
297
 
298
298
  it "start_time of first line in second part should be 0" do
299
- result[1].lines.first.start_time.should == 0
299
+ expect(result[1].lines.first.start_time).to eq(0)
300
300
  end
301
301
 
302
302
  it "time for last line of first part should not be the time for first line of second part" do
303
- result[0].lines.last.text.should == result[1].lines.first.text
304
- result[0].lines.last.time_str.should_not == result[1].lines.first.time_str
303
+ expect(result[0].lines.last.text).to eq(result[1].lines.first.text)
304
+ expect(result[0].lines.last.time_str).not_to eq(result[1].lines.first.time_str)
305
305
  end
306
306
  end
307
307
  end
@@ -315,11 +315,11 @@ describe SRT::File do
315
315
  before { file.timeshift({ :all => "+2.5s" }) }
316
316
 
317
317
  it "should have timecodes shifted forward by 2.5s for subtitle #24" do
318
- file.lines[23].time_str.should eq("00:01:59,291 --> 00:02:00,815")
318
+ expect(file.lines[23].time_str).to eq("00:01:59,291 --> 00:02:00,815")
319
319
  end
320
320
 
321
321
  it "should have timecodes shifted forward by 2.5s for subtitle #43" do
322
- file.lines[42].time_str.should eq("00:03:46,164 --> 00:03:47,631")
322
+ expect(file.lines[42].time_str).to eq("00:03:46,164 --> 00:03:47,631")
323
323
  end
324
324
  end
325
325
 
@@ -327,11 +327,11 @@ describe SRT::File do
327
327
  before { file.timeshift({ "25fps" => "23.976fps" }) }
328
328
 
329
329
  it "should have correctly scaled timecodes for subtitle #24" do
330
- file.lines[23].time_str.should eq("00:01:52,007 --> 00:01:53,469")
330
+ expect(file.lines[23].time_str).to eq("00:01:52,007 --> 00:01:53,469")
331
331
  end
332
332
 
333
333
  it "should have correctly scaled timecodes for subtitle #43" do
334
- file.lines[42].time_str.should eq("00:03:34,503 --> 00:03:35,910")
334
+ expect(file.lines[42].time_str).to eq("00:03:34,503 --> 00:03:35,910")
335
335
  end
336
336
  end
337
337
 
@@ -339,11 +339,11 @@ describe SRT::File do
339
339
  before { file.timeshift({ "#24" => "00:03:53,582", "#42" => "00:04:24,656" }) }
340
340
 
341
341
  it "should have shifted timecodes for subtitle #24" do
342
- file.lines[23].time_str.should eq("00:03:53,582 --> 00:03:54,042")
342
+ expect(file.lines[23].time_str).to eq("00:03:53,582 --> 00:03:54,042")
343
343
  end
344
344
 
345
345
  it "should have differently shifted timecodes for subtitle #43" do
346
- file.lines[41].time_str.should eq("00:04:24,656 --> 00:04:25,298")
346
+ expect(file.lines[41].time_str).to eq("00:04:24,656 --> 00:04:25,298")
347
347
  end
348
348
  end
349
349
 
@@ -351,11 +351,11 @@ describe SRT::File do
351
351
  before { file.timeshift({ 180 => "+1s", 264 => "+1.5s" }) }
352
352
 
353
353
  it "should have shifted by +1s at 180 seconds" do
354
- file.lines[23].time_str.should eq("00:01:57,415 --> 00:01:58,948")
354
+ expect(file.lines[23].time_str).to eq("00:01:57,415 --> 00:01:58,948")
355
355
  end
356
356
 
357
357
  it "should have shifted by +1.5s at 264 seconds" do
358
- file.lines[41].time_str.should eq("00:03:40,997 --> 00:03:43,136")
358
+ expect(file.lines[41].time_str).to eq("00:03:40,997 --> 00:03:43,136")
359
359
  end
360
360
  end
361
361
  end
@@ -367,7 +367,7 @@ describe SRT::File do
367
367
  before { file.timeshift({ :all => "-2.7m" }) }
368
368
 
369
369
  it "should have dumped 16 lines with now negative timecodes, leaving 1107" do
370
- file.lines.size.should eq(1107)
370
+ expect(file.lines.size).to eq(1107)
371
371
  end
372
372
  end
373
373
 
@@ -375,7 +375,7 @@ describe SRT::File do
375
375
  before { file.timeshift({ "00:03:25,430" => "00:00:44,200", "01:49:29,980" => "01:46:35,600" }) }
376
376
 
377
377
  it "should have dumped 16 lines with now negative timecodes, leaving 1107" do
378
- file.lines.size.should eq(1107)
378
+ expect(file.lines.size).to eq(1107)
379
379
  end
380
380
  end
381
381
  end
@@ -402,7 +402,7 @@ you're a machine.
402
402
  00:00:07,014 --> 00:00:08,003
403
403
  The robot.
404
404
  END
405
- file.to_s.should eq(OUTPUT)
405
+ expect(file.to_s).to eq(OUTPUT)
406
406
  end
407
407
  end
408
408
  end
@@ -432,7 +432,7 @@ you're a machine.
432
432
  00:00:07.014 --> 00:00:08.003
433
433
  The robot.
434
434
  END
435
- file.to_webvtt.should eq(OUTPUT_WEBVTT)
435
+ expect(file.to_webvtt).to eq(OUTPUT_WEBVTT)
436
436
  end
437
437
  end
438
438
  end
@@ -6,7 +6,7 @@ describe SRT::Line do
6
6
  let(:line) { SRT::Line.new }
7
7
 
8
8
  it "should create an empty subtitle" do
9
- line.should be_empty
9
+ expect(line).to be_empty
10
10
  end
11
11
  end
12
12
 
@@ -19,7 +19,7 @@ describe SRT::Line do
19
19
  end
20
20
 
21
21
  it "should produce timecodes that match the internal float values" do
22
- line.time_str.should eq("00:03:44,200 --> 00:04:04,578")
22
+ expect(line.time_str).to eq("00:03:44,200 --> 00:04:04,578")
23
23
  end
24
24
  end
25
25
  end
@@ -6,33 +6,33 @@ describe SRT::Parser do
6
6
 
7
7
  describe ".id" do
8
8
  it "should convert the id string (#[id]) to an int representing the sequence number" do
9
- subject.id("#317").should eq(317)
9
+ expect(subject.id("#317")).to eq(317)
10
10
  end
11
11
  end
12
12
 
13
13
  describe ".timecode" do
14
14
  it "should convert the SRT timecode format to a float representing seconds" do
15
- subject.timecode("01:03:44,200").should eq(3824.2)
15
+ expect(subject.timecode("01:03:44,200")).to eq(3824.2)
16
16
  end
17
17
  end
18
18
 
19
19
  describe ".timespan" do
20
20
  it "should convert a timespan string ([+|-][amount][h|m|s|ms]) to a float representing seconds" do
21
- subject.timespan("-3.5m").should eq(-210)
21
+ expect(subject.timespan("-3.5m")).to eq(-210)
22
22
  end
23
23
 
24
24
  it "should convert a timespan string ([+|-][amount][h|m|s|ms]) to a float representing seconds" do
25
- subject.timespan("-1s").should eq(-1)
25
+ expect(subject.timespan("-1s")).to eq(-1)
26
26
  end
27
27
 
28
28
  it "should convert a timespan string ([+|-][amount][h|m|s|ms]) to a float representing seconds" do
29
- subject.timespan("100ms").should eq(0.1)
29
+ expect(subject.timespan("100ms")).to eq(0.1)
30
30
  end
31
31
  end
32
32
 
33
33
  describe ".parse_framerate" do
34
34
  it "should convert a framerate string ([number]fps) to a float representing seconds" do
35
- subject.framerate("23.976fps").should eq(23.976)
35
+ expect(subject.framerate("23.976fps")).to eq(23.976)
36
36
  end
37
37
  end
38
38
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: srt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christopher Petersen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-10 00:00:00.000000000 Z
11
+ date: 2015-02-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake