Add tests for CuesWithTiming.endTimeUs
#minor-release PiperOrigin-RevId: 570988195
This commit is contained in:
parent
9cc75ca52e
commit
6057b59723
@ -76,22 +76,26 @@ public class SubtitleExtractorTest {
|
|||||||
CuesWithTiming cues0 = decodeSample(trackOutput, 0);
|
CuesWithTiming cues0 = decodeSample(trackOutput, 0);
|
||||||
assertThat(cues0.startTimeUs).isEqualTo(0);
|
assertThat(cues0.startTimeUs).isEqualTo(0);
|
||||||
assertThat(cues0.durationUs).isEqualTo(1_234_000);
|
assertThat(cues0.durationUs).isEqualTo(1_234_000);
|
||||||
|
assertThat(cues0.endTimeUs).isEqualTo(1_234_000);
|
||||||
assertThat(cues0.cues).hasSize(1);
|
assertThat(cues0.cues).hasSize(1);
|
||||||
assertThat(cues0.cues.get(0).text.toString()).isEqualTo("This is the first subtitle.");
|
assertThat(cues0.cues.get(0).text.toString()).isEqualTo("This is the first subtitle.");
|
||||||
CuesWithTiming cues1 = decodeSample(trackOutput, 1);
|
CuesWithTiming cues1 = decodeSample(trackOutput, 1);
|
||||||
assertThat(cues1.startTimeUs).isEqualTo(2_345_000);
|
assertThat(cues1.startTimeUs).isEqualTo(2_345_000);
|
||||||
assertThat(cues1.durationUs).isEqualTo(2_600_000 - 2_345_000);
|
assertThat(cues1.durationUs).isEqualTo(2_600_000 - 2_345_000);
|
||||||
|
assertThat(cues1.endTimeUs).isEqualTo(2_600_000);
|
||||||
assertThat(cues1.cues).hasSize(1);
|
assertThat(cues1.cues).hasSize(1);
|
||||||
assertThat(cues1.cues.get(0).text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(cues1.cues.get(0).text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
CuesWithTiming cues2 = decodeSample(trackOutput, 2);
|
CuesWithTiming cues2 = decodeSample(trackOutput, 2);
|
||||||
assertThat(cues2.startTimeUs).isEqualTo(2_600_000);
|
assertThat(cues2.startTimeUs).isEqualTo(2_600_000);
|
||||||
assertThat(cues2.durationUs).isEqualTo(3_456_000 - 2_600_000);
|
assertThat(cues2.durationUs).isEqualTo(3_456_000 - 2_600_000);
|
||||||
|
assertThat(cues2.endTimeUs).isEqualTo(3_456_000);
|
||||||
assertThat(cues2.cues).hasSize(2);
|
assertThat(cues2.cues).hasSize(2);
|
||||||
assertThat(cues2.cues.get(0).text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(cues2.cues.get(0).text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
assertThat(cues2.cues.get(1).text.toString()).isEqualTo("This is the third subtitle.");
|
assertThat(cues2.cues.get(1).text.toString()).isEqualTo("This is the third subtitle.");
|
||||||
CuesWithTiming cues3 = decodeSample(trackOutput, 3);
|
CuesWithTiming cues3 = decodeSample(trackOutput, 3);
|
||||||
assertThat(cues3.startTimeUs).isEqualTo(3_456_000);
|
assertThat(cues3.startTimeUs).isEqualTo(3_456_000);
|
||||||
assertThat(cues3.durationUs).isEqualTo(4_567_000 - 3_456_000);
|
assertThat(cues3.durationUs).isEqualTo(4_567_000 - 3_456_000);
|
||||||
|
assertThat(cues3.endTimeUs).isEqualTo(4_567_000);
|
||||||
assertThat(cues3.cues).hasSize(1);
|
assertThat(cues3.cues).hasSize(1);
|
||||||
assertThat(cues3.cues.get(0).text.toString()).isEqualTo("This is the third subtitle.");
|
assertThat(cues3.cues.get(0).text.toString()).isEqualTo("This is the third subtitle.");
|
||||||
}
|
}
|
||||||
@ -122,17 +126,20 @@ public class SubtitleExtractorTest {
|
|||||||
CuesWithTiming cues0 = decodeSample(trackOutput, 0);
|
CuesWithTiming cues0 = decodeSample(trackOutput, 0);
|
||||||
assertThat(cues0.startTimeUs).isEqualTo(2_345_000L);
|
assertThat(cues0.startTimeUs).isEqualTo(2_345_000L);
|
||||||
assertThat(cues0.durationUs).isEqualTo(2_600_000 - 2_345_000L);
|
assertThat(cues0.durationUs).isEqualTo(2_600_000 - 2_345_000L);
|
||||||
|
assertThat(cues0.endTimeUs).isEqualTo(2_600_000);
|
||||||
assertThat(cues0.cues).hasSize(1);
|
assertThat(cues0.cues).hasSize(1);
|
||||||
assertThat(cues0.cues.get(0).text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(cues0.cues.get(0).text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
CuesWithTiming cues1 = decodeSample(trackOutput, 1);
|
CuesWithTiming cues1 = decodeSample(trackOutput, 1);
|
||||||
assertThat(cues1.startTimeUs).isEqualTo(2_600_000);
|
assertThat(cues1.startTimeUs).isEqualTo(2_600_000);
|
||||||
assertThat(cues1.durationUs).isEqualTo(3_456_000 - 2_600_000);
|
assertThat(cues1.durationUs).isEqualTo(3_456_000 - 2_600_000);
|
||||||
|
assertThat(cues1.endTimeUs).isEqualTo(3_456_000);
|
||||||
assertThat(cues1.cues).hasSize(2);
|
assertThat(cues1.cues).hasSize(2);
|
||||||
assertThat(cues1.cues.get(0).text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(cues1.cues.get(0).text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
assertThat(cues1.cues.get(1).text.toString()).isEqualTo("This is the third subtitle.");
|
assertThat(cues1.cues.get(1).text.toString()).isEqualTo("This is the third subtitle.");
|
||||||
CuesWithTiming cues2 = decodeSample(trackOutput, 2);
|
CuesWithTiming cues2 = decodeSample(trackOutput, 2);
|
||||||
assertThat(cues2.startTimeUs).isEqualTo(3_456_000);
|
assertThat(cues2.startTimeUs).isEqualTo(3_456_000);
|
||||||
assertThat(cues2.durationUs).isEqualTo(4_567_000L - 3_456_000);
|
assertThat(cues2.durationUs).isEqualTo(4_567_000L - 3_456_000);
|
||||||
|
assertThat(cues2.endTimeUs).isEqualTo(4_567_000L);
|
||||||
assertThat(cues2.cues).hasSize(1);
|
assertThat(cues2.cues).hasSize(1);
|
||||||
assertThat(cues2.cues.get(0).text.toString()).isEqualTo("This is the third subtitle.");
|
assertThat(cues2.cues.get(0).text.toString()).isEqualTo("This is the third subtitle.");
|
||||||
}
|
}
|
||||||
@ -163,17 +170,20 @@ public class SubtitleExtractorTest {
|
|||||||
CuesWithTiming cues0 = decodeSample(trackOutput, 0);
|
CuesWithTiming cues0 = decodeSample(trackOutput, 0);
|
||||||
assertThat(cues0.startTimeUs).isEqualTo(2_345_000L);
|
assertThat(cues0.startTimeUs).isEqualTo(2_345_000L);
|
||||||
assertThat(cues0.durationUs).isEqualTo(2_600_000 - 2_345_000L);
|
assertThat(cues0.durationUs).isEqualTo(2_600_000 - 2_345_000L);
|
||||||
|
assertThat(cues0.endTimeUs).isEqualTo(2_600_000);
|
||||||
assertThat(cues0.cues).hasSize(1);
|
assertThat(cues0.cues).hasSize(1);
|
||||||
assertThat(cues0.cues.get(0).text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(cues0.cues.get(0).text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
CuesWithTiming cues1 = decodeSample(trackOutput, 1);
|
CuesWithTiming cues1 = decodeSample(trackOutput, 1);
|
||||||
assertThat(cues1.startTimeUs).isEqualTo(2_600_000);
|
assertThat(cues1.startTimeUs).isEqualTo(2_600_000);
|
||||||
assertThat(cues1.durationUs).isEqualTo(3_456_000 - 2_600_000);
|
assertThat(cues1.durationUs).isEqualTo(3_456_000 - 2_600_000);
|
||||||
|
assertThat(cues1.endTimeUs).isEqualTo(3_456_000);
|
||||||
assertThat(cues1.cues).hasSize(2);
|
assertThat(cues1.cues).hasSize(2);
|
||||||
assertThat(cues1.cues.get(0).text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(cues1.cues.get(0).text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
assertThat(cues1.cues.get(1).text.toString()).isEqualTo("This is the third subtitle.");
|
assertThat(cues1.cues.get(1).text.toString()).isEqualTo("This is the third subtitle.");
|
||||||
CuesWithTiming cues2 = decodeSample(trackOutput, 2);
|
CuesWithTiming cues2 = decodeSample(trackOutput, 2);
|
||||||
assertThat(cues2.startTimeUs).isEqualTo(3_456_000);
|
assertThat(cues2.startTimeUs).isEqualTo(3_456_000);
|
||||||
assertThat(cues2.durationUs).isEqualTo(4_567_000L - 3_456_000);
|
assertThat(cues2.durationUs).isEqualTo(4_567_000L - 3_456_000);
|
||||||
|
assertThat(cues2.endTimeUs).isEqualTo(4_567_000L);
|
||||||
assertThat(cues2.cues).hasSize(1);
|
assertThat(cues2.cues).hasSize(1);
|
||||||
assertThat(cues2.cues.get(0).text.toString()).isEqualTo("This is the third subtitle.");
|
assertThat(cues2.cues.get(0).text.toString()).isEqualTo("This is the third subtitle.");
|
||||||
}
|
}
|
||||||
|
@ -164,6 +164,7 @@ public final class SsaParserTest {
|
|||||||
// Because of the length restriction, we only partially parse the third line of dialogue
|
// Because of the length restriction, we only partially parse the third line of dialogue
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(4560000);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(4560000);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(8900000 - 4560000);
|
assertThat(allCues.get(1).durationUs).isEqualTo(8900000 - 4560000);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(8900000);
|
||||||
assertThat(allCues.get(1).cues.get(0).text.toString()).isEqualTo("This is the third subt");
|
assertThat(allCues.get(1).cues.get(0).text.toString()).isEqualTo("This is the third subt");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -237,41 +238,49 @@ public final class SsaParserTest {
|
|||||||
assertThat(allCues).hasSize(8);
|
assertThat(allCues).hasSize(8);
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(1_000_000);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(0).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(2_000_000);
|
||||||
assertThat(Iterables.transform(allCues.get(0).cues, cue -> cue.text.toString()))
|
assertThat(Iterables.transform(allCues.get(0).cues, cue -> cue.text.toString()))
|
||||||
.containsExactly(firstSubtitleText);
|
.containsExactly(firstSubtitleText);
|
||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_000_000);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_000_000);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(2_230_000);
|
assertThat(allCues.get(1).durationUs).isEqualTo(2_230_000);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(4_230_000);
|
||||||
assertThat(Iterables.transform(allCues.get(1).cues, cue -> cue.text.toString()))
|
assertThat(Iterables.transform(allCues.get(1).cues, cue -> cue.text.toString()))
|
||||||
.containsExactly(firstSubtitleText, secondSubtitleText);
|
.containsExactly(firstSubtitleText, secondSubtitleText);
|
||||||
|
|
||||||
assertThat(allCues.get(2).startTimeUs).isEqualTo(4_230_000);
|
assertThat(allCues.get(2).startTimeUs).isEqualTo(4_230_000);
|
||||||
assertThat(allCues.get(2).durationUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(2).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(allCues.get(2).endTimeUs).isEqualTo(5_230_000);
|
||||||
assertThat(Iterables.transform(allCues.get(2).cues, cue -> cue.text.toString()))
|
assertThat(Iterables.transform(allCues.get(2).cues, cue -> cue.text.toString()))
|
||||||
.containsExactly(secondSubtitleText);
|
.containsExactly(secondSubtitleText);
|
||||||
|
|
||||||
assertThat(allCues.get(3).startTimeUs).isEqualTo(6_000_000);
|
assertThat(allCues.get(3).startTimeUs).isEqualTo(6_000_000);
|
||||||
assertThat(allCues.get(3).durationUs).isEqualTo(2_440_000);
|
assertThat(allCues.get(3).durationUs).isEqualTo(2_440_000);
|
||||||
|
assertThat(allCues.get(3).endTimeUs).isEqualTo(8_440_000);
|
||||||
assertThat(Iterables.transform(allCues.get(3).cues, cue -> cue.text.toString()))
|
assertThat(Iterables.transform(allCues.get(3).cues, cue -> cue.text.toString()))
|
||||||
.containsExactly(thirdSubtitleText);
|
.containsExactly(thirdSubtitleText);
|
||||||
|
|
||||||
assertThat(allCues.get(4).startTimeUs).isEqualTo(8_440_000);
|
assertThat(allCues.get(4).startTimeUs).isEqualTo(8_440_000);
|
||||||
assertThat(allCues.get(4).durationUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(4).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(allCues.get(4).endTimeUs).isEqualTo(9_440_000);
|
||||||
assertThat(Iterables.transform(allCues.get(4).cues, cue -> cue.text.toString()))
|
assertThat(Iterables.transform(allCues.get(4).cues, cue -> cue.text.toString()))
|
||||||
.containsExactly(fourthSubtitleText, fifthSubtitleText);
|
.containsExactly(fourthSubtitleText, fifthSubtitleText);
|
||||||
|
|
||||||
assertThat(allCues.get(5).startTimeUs).isEqualTo(10_720_000);
|
assertThat(allCues.get(5).startTimeUs).isEqualTo(10_720_000);
|
||||||
assertThat(allCues.get(5).durationUs).isEqualTo(2_500_000);
|
assertThat(allCues.get(5).durationUs).isEqualTo(2_500_000);
|
||||||
|
assertThat(allCues.get(5).endTimeUs).isEqualTo(13_220_000);
|
||||||
assertThat(Iterables.transform(allCues.get(5).cues, cue -> cue.text.toString()))
|
assertThat(Iterables.transform(allCues.get(5).cues, cue -> cue.text.toString()))
|
||||||
.containsExactly(sixthSubtitleText);
|
.containsExactly(sixthSubtitleText);
|
||||||
|
|
||||||
assertThat(allCues.get(6).startTimeUs).isEqualTo(13_220_000);
|
assertThat(allCues.get(6).startTimeUs).isEqualTo(13_220_000);
|
||||||
assertThat(allCues.get(6).durationUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(6).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(allCues.get(6).endTimeUs).isEqualTo(14_220_000);
|
||||||
assertThat(Iterables.transform(allCues.get(6).cues, cue -> cue.text.toString()))
|
assertThat(Iterables.transform(allCues.get(6).cues, cue -> cue.text.toString()))
|
||||||
.containsExactly(sixthSubtitleText, seventhSubtitleText);
|
.containsExactly(sixthSubtitleText, seventhSubtitleText);
|
||||||
|
|
||||||
assertThat(allCues.get(7).startTimeUs).isEqualTo(14_220_000);
|
assertThat(allCues.get(7).startTimeUs).isEqualTo(14_220_000);
|
||||||
assertThat(allCues.get(7).durationUs).isEqualTo(1_430_000);
|
assertThat(allCues.get(7).durationUs).isEqualTo(1_430_000);
|
||||||
|
assertThat(allCues.get(7).endTimeUs).isEqualTo(15_650_000);
|
||||||
assertThat(Iterables.transform(allCues.get(7).cues, cue -> cue.text.toString()))
|
assertThat(Iterables.transform(allCues.get(7).cues, cue -> cue.text.toString()))
|
||||||
.containsExactly(sixthSubtitleText);
|
.containsExactly(sixthSubtitleText);
|
||||||
}
|
}
|
||||||
@ -517,6 +526,7 @@ public final class SsaParserTest {
|
|||||||
private static void assertTypicalCue1(CuesWithTiming cuesWithTiming) {
|
private static void assertTypicalCue1(CuesWithTiming cuesWithTiming) {
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(0);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(0);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(1230000);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(1230000);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(1230000);
|
||||||
assertThat(cuesWithTiming.cues.get(0).text.toString()).isEqualTo("This is the first subtitle.");
|
assertThat(cuesWithTiming.cues.get(0).text.toString()).isEqualTo("This is the first subtitle.");
|
||||||
assertThat(Objects.requireNonNull(cuesWithTiming.cues.get(0).textAlignment))
|
assertThat(Objects.requireNonNull(cuesWithTiming.cues.get(0).textAlignment))
|
||||||
.isEqualTo(Layout.Alignment.ALIGN_CENTER);
|
.isEqualTo(Layout.Alignment.ALIGN_CENTER);
|
||||||
@ -525,6 +535,7 @@ public final class SsaParserTest {
|
|||||||
private static void assertTypicalCue2(CuesWithTiming cuesWithTiming) {
|
private static void assertTypicalCue2(CuesWithTiming cuesWithTiming) {
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(2340000);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(2340000);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(3450000 - 2340000);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(3450000 - 2340000);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(3450000);
|
||||||
assertThat(cuesWithTiming.cues.get(0).text.toString())
|
assertThat(cuesWithTiming.cues.get(0).text.toString())
|
||||||
.isEqualTo("This is the second subtitle \nwith a newline \nand another.");
|
.isEqualTo("This is the second subtitle \nwith a newline \nand another.");
|
||||||
}
|
}
|
||||||
@ -532,6 +543,7 @@ public final class SsaParserTest {
|
|||||||
private static void assertTypicalCue3(CuesWithTiming cuesWithTiming) {
|
private static void assertTypicalCue3(CuesWithTiming cuesWithTiming) {
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(4560000);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(4560000);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(8900000 - 4560000);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(8900000 - 4560000);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(8900000);
|
||||||
assertThat(cuesWithTiming.cues.get(0).text.toString())
|
assertThat(cuesWithTiming.cues.get(0).text.toString())
|
||||||
.isEqualTo("This is the third subtitle, with a comma.");
|
.isEqualTo("This is the third subtitle, with a comma.");
|
||||||
}
|
}
|
||||||
|
@ -250,6 +250,7 @@ public final class SubripParserTest {
|
|||||||
assertTypicalCue1(allCues.get(0));
|
assertTypicalCue1(allCues.get(0));
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_000_000);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_000_000);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(1).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(3_000_000);
|
||||||
assertTypicalCue3(allCues.get(2));
|
assertTypicalCue3(allCues.get(2));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -257,6 +258,7 @@ public final class SubripParserTest {
|
|||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(0);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(0);
|
||||||
assertThat(cuesWithTiming.cues.get(0).text.toString()).isEqualTo("This is the first subtitle.");
|
assertThat(cuesWithTiming.cues.get(0).text.toString()).isEqualTo("This is the first subtitle.");
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(1234000);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(1234000);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(1234000);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void assertTypicalCue2(CuesWithTiming cuesWithTiming) {
|
private static void assertTypicalCue2(CuesWithTiming cuesWithTiming) {
|
||||||
@ -264,6 +266,7 @@ public final class SubripParserTest {
|
|||||||
assertThat(cuesWithTiming.cues.get(0).text.toString())
|
assertThat(cuesWithTiming.cues.get(0).text.toString())
|
||||||
.isEqualTo("This is the second subtitle.\nSecond subtitle with second line.");
|
.isEqualTo("This is the second subtitle.\nSecond subtitle with second line.");
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(3456000 - 2345000);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(3456000 - 2345000);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(3456000);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void assertTypicalCue3(CuesWithTiming cuesWithTiming) {
|
private static void assertTypicalCue3(CuesWithTiming cuesWithTiming) {
|
||||||
@ -272,6 +275,7 @@ public final class SubripParserTest {
|
|||||||
assertThat(cuesWithTiming.cues.get(0).text.toString()).isEqualTo("This is the third subtitle.");
|
assertThat(cuesWithTiming.cues.get(0).text.toString()).isEqualTo("This is the third subtitle.");
|
||||||
long expectedEndTimeUs = (((2L * 60L * 60L) + 8L) * 1000L + 901L) * 1000L;
|
long expectedEndTimeUs = (((2L * 60L * 60L) + 8L) * 1000L + 901L) * 1000L;
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(expectedEndTimeUs - expectedStartTimeUs);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(expectedEndTimeUs - expectedStartTimeUs);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(expectedEndTimeUs);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void assertAlignmentCue(
|
private static void assertAlignmentCue(
|
||||||
|
@ -486,8 +486,10 @@ public final class TtmlParserTest {
|
|||||||
assertThat(allCues).hasSize(2);
|
assertThat(allCues).hasSize(2);
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(1_000_000);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(10_000);
|
assertThat(allCues.get(0).durationUs).isEqualTo(10_000);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(1_010_000);
|
||||||
assertThat((double) allCues.get(1).startTimeUs).isWithin(1000).of(1_001_000_000);
|
assertThat((double) allCues.get(1).startTimeUs).isWithin(1000).of(1_001_000_000);
|
||||||
assertThat((double) allCues.get(1).durationUs).isWithin(2000).of(1_001_000_000);
|
assertThat((double) allCues.get(1).durationUs).isWithin(2000).of(1_001_000_000);
|
||||||
|
assertThat((double) allCues.get(1).endTimeUs).isWithin(2000).of(2_002_000_000);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@ -498,6 +500,7 @@ public final class TtmlParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(200_000);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(200_000);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(2_800_000);
|
assertThat(allCues.get(0).durationUs).isEqualTo(2_800_000);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(3_000_000);
|
||||||
Cue cue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue cue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(cue.text).isNull();
|
assertThat(cue.text).isNull();
|
||||||
assertThat(cue.bitmap).isNotNull();
|
assertThat(cue.bitmap).isNotNull();
|
||||||
@ -508,6 +511,7 @@ public final class TtmlParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(3_200_000);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(3_200_000);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(3_737_000);
|
assertThat(allCues.get(1).durationUs).isEqualTo(3_737_000);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(6_937_000);
|
||||||
cue = Iterables.getOnlyElement(allCues.get(1).cues);
|
cue = Iterables.getOnlyElement(allCues.get(1).cues);
|
||||||
assertThat(cue.text).isNull();
|
assertThat(cue.text).isNull();
|
||||||
assertThat(cue.bitmap).isNotNull();
|
assertThat(cue.bitmap).isNotNull();
|
||||||
|
@ -72,6 +72,7 @@ public final class Tx3gParserTest {
|
|||||||
assertThat(cuesWithTiming.cues).isEmpty();
|
assertThat(cuesWithTiming.cues).isEmpty();
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@ -86,6 +87,7 @@ public final class Tx3gParserTest {
|
|||||||
|
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(text.toString()).isEqualTo("CC Test");
|
assertThat(text.toString()).isEqualTo("CC Test");
|
||||||
assertThat(text).hasNoSpans();
|
assertThat(text).hasNoSpans();
|
||||||
assertFractionalLinePosition(singleCue, 0.85f);
|
assertFractionalLinePosition(singleCue, 0.85f);
|
||||||
@ -103,6 +105,7 @@ public final class Tx3gParserTest {
|
|||||||
|
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(text.toString()).isEqualTo("CC Test");
|
assertThat(text.toString()).isEqualTo("CC Test");
|
||||||
assertThat(text).hasBoldItalicSpanBetween(0, 6);
|
assertThat(text).hasBoldItalicSpanBetween(0, 6);
|
||||||
assertThat(text).hasUnderlineSpanBetween(0, 6);
|
assertThat(text).hasUnderlineSpanBetween(0, 6);
|
||||||
@ -171,6 +174,7 @@ public final class Tx3gParserTest {
|
|||||||
|
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(text.toString()).isEqualTo("CC Test");
|
assertThat(text.toString()).isEqualTo("CC Test");
|
||||||
assertThat(text).hasNoSpans();
|
assertThat(text).hasNoSpans();
|
||||||
assertFractionalLinePosition(singleCue, 0.85f);
|
assertFractionalLinePosition(singleCue, 0.85f);
|
||||||
@ -188,6 +192,7 @@ public final class Tx3gParserTest {
|
|||||||
|
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(text.toString()).isEqualTo("你好");
|
assertThat(text.toString()).isEqualTo("你好");
|
||||||
assertThat(text).hasNoSpans();
|
assertThat(text).hasNoSpans();
|
||||||
assertFractionalLinePosition(singleCue, 0.85f);
|
assertFractionalLinePosition(singleCue, 0.85f);
|
||||||
@ -204,6 +209,7 @@ public final class Tx3gParserTest {
|
|||||||
|
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
|
|
||||||
assertThat(text.toString()).isEqualTo("你好");
|
assertThat(text.toString()).isEqualTo("你好");
|
||||||
assertThat(text).hasNoSpans();
|
assertThat(text).hasNoSpans();
|
||||||
@ -223,6 +229,7 @@ public final class Tx3gParserTest {
|
|||||||
|
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(text.toString()).isEqualTo("Line 2\nLine 3");
|
assertThat(text.toString()).isEqualTo("Line 2\nLine 3");
|
||||||
assertThat(text).hasItalicSpanBetween(0, 5);
|
assertThat(text).hasItalicSpanBetween(0, 5);
|
||||||
assertThat(text).hasUnderlineSpanBetween(7, 12);
|
assertThat(text).hasUnderlineSpanBetween(7, 12);
|
||||||
@ -244,6 +251,7 @@ public final class Tx3gParserTest {
|
|||||||
|
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(text.toString()).isEqualTo("CC Test");
|
assertThat(text.toString()).isEqualTo("CC Test");
|
||||||
assertThat(text).hasBoldSpanBetween(0, 6);
|
assertThat(text).hasBoldSpanBetween(0, 6);
|
||||||
assertThat(text).hasForegroundColorSpanBetween(0, 6).withColor(Color.GREEN);
|
assertThat(text).hasForegroundColorSpanBetween(0, 6).withColor(Color.GREEN);
|
||||||
@ -264,6 +272,7 @@ public final class Tx3gParserTest {
|
|||||||
|
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(text.toString()).isEqualTo("CC Test");
|
assertThat(text.toString()).isEqualTo("CC Test");
|
||||||
assertThat(text).hasBoldItalicSpanBetween(0, 7);
|
assertThat(text).hasBoldItalicSpanBetween(0, 7);
|
||||||
assertThat(text).hasUnderlineSpanBetween(0, 7);
|
assertThat(text).hasUnderlineSpanBetween(0, 7);
|
||||||
@ -288,6 +297,7 @@ public final class Tx3gParserTest {
|
|||||||
|
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(text.toString()).isEqualTo("CC Test");
|
assertThat(text.toString()).isEqualTo("CC Test");
|
||||||
assertThat(text).hasBoldItalicSpanBetween(0, 7);
|
assertThat(text).hasBoldItalicSpanBetween(0, 7);
|
||||||
assertThat(text).hasUnderlineSpanBetween(0, 7);
|
assertThat(text).hasUnderlineSpanBetween(0, 7);
|
||||||
@ -311,6 +321,7 @@ public final class Tx3gParserTest {
|
|||||||
|
|
||||||
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.startTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
assertThat(cuesWithTiming.durationUs).isEqualTo(C.TIME_UNSET);
|
||||||
|
assertThat(cuesWithTiming.endTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(text.toString()).isEqualTo("CC Test");
|
assertThat(text.toString()).isEqualTo("CC Test");
|
||||||
assertThat(text).hasBoldItalicSpanBetween(0, 6);
|
assertThat(text).hasBoldItalicSpanBetween(0, 6);
|
||||||
assertThat(text).hasUnderlineSpanBetween(0, 6);
|
assertThat(text).hasUnderlineSpanBetween(0, 6);
|
||||||
|
@ -72,10 +72,12 @@ public class LegacySubtitleUtilWebvttTest {
|
|||||||
assertThat(cuesWithTimingsList).hasSize(2);
|
assertThat(cuesWithTimingsList).hasSize(2);
|
||||||
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(1_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(0).endTimeUs).isEqualTo(2_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
||||||
.containsExactly(FIRST_SUBTITLE_STRING);
|
.containsExactly(FIRST_SUBTITLE_STRING);
|
||||||
assertThat(cuesWithTimingsList.get(1).startTimeUs).isEqualTo(3_000_000);
|
assertThat(cuesWithTimingsList.get(1).startTimeUs).isEqualTo(3_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(1).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(1).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(1).endTimeUs).isEqualTo(4_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(1).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(1).cues, c -> c.text))
|
||||||
.containsExactly(SECOND_SUBTITLE_STRING);
|
.containsExactly(SECOND_SUBTITLE_STRING);
|
||||||
}
|
}
|
||||||
@ -88,15 +90,18 @@ public class LegacySubtitleUtilWebvttTest {
|
|||||||
assertThat(cuesWithTimingsList).hasSize(3);
|
assertThat(cuesWithTimingsList).hasSize(3);
|
||||||
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(1_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(0).endTimeUs).isEqualTo(2_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
||||||
.containsExactly(FIRST_SUBTITLE_STRING);
|
.containsExactly(FIRST_SUBTITLE_STRING);
|
||||||
assertThat(cuesWithTimingsList.get(1).startTimeUs).isEqualTo(2_000_000);
|
assertThat(cuesWithTimingsList.get(1).startTimeUs).isEqualTo(2_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(1).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(1).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(1).endTimeUs).isEqualTo(3_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(1).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(1).cues, c -> c.text))
|
||||||
.containsExactly(FIRST_SUBTITLE_STRING, SECOND_SUBTITLE_STRING)
|
.containsExactly(FIRST_SUBTITLE_STRING, SECOND_SUBTITLE_STRING)
|
||||||
.inOrder();
|
.inOrder();
|
||||||
assertThat(cuesWithTimingsList.get(2).startTimeUs).isEqualTo(3_000_000);
|
assertThat(cuesWithTimingsList.get(2).startTimeUs).isEqualTo(3_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(2).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(2).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(2).endTimeUs).isEqualTo(4_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(2).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(2).cues, c -> c.text))
|
||||||
.containsExactly(SECOND_SUBTITLE_STRING);
|
.containsExactly(SECOND_SUBTITLE_STRING);
|
||||||
}
|
}
|
||||||
@ -109,6 +114,7 @@ public class LegacySubtitleUtilWebvttTest {
|
|||||||
assertThat(cuesWithTimingsList).hasSize(1);
|
assertThat(cuesWithTimingsList).hasSize(1);
|
||||||
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(3_000_000);
|
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(3_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(0).endTimeUs).isEqualTo(4_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
||||||
.containsExactly(SECOND_SUBTITLE_STRING);
|
.containsExactly(SECOND_SUBTITLE_STRING);
|
||||||
}
|
}
|
||||||
@ -121,6 +127,7 @@ public class LegacySubtitleUtilWebvttTest {
|
|||||||
assertThat(cuesWithTimingsList).hasSize(1);
|
assertThat(cuesWithTimingsList).hasSize(1);
|
||||||
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(3_000_000);
|
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(3_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(0).endTimeUs).isEqualTo(4_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
||||||
.containsExactly(SECOND_SUBTITLE_STRING);
|
.containsExactly(SECOND_SUBTITLE_STRING);
|
||||||
}
|
}
|
||||||
@ -133,6 +140,7 @@ public class LegacySubtitleUtilWebvttTest {
|
|||||||
assertThat(cuesWithTimingsList).hasSize(1);
|
assertThat(cuesWithTimingsList).hasSize(1);
|
||||||
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(3_000_000);
|
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(3_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(0).endTimeUs).isEqualTo(4_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
||||||
.containsExactly(SECOND_SUBTITLE_STRING);
|
.containsExactly(SECOND_SUBTITLE_STRING);
|
||||||
}
|
}
|
||||||
@ -145,10 +153,12 @@ public class LegacySubtitleUtilWebvttTest {
|
|||||||
assertThat(cuesWithTimingsList).hasSize(2);
|
assertThat(cuesWithTimingsList).hasSize(2);
|
||||||
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(1_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(0).endTimeUs).isEqualTo(2_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
||||||
.containsExactly(FIRST_SUBTITLE_STRING);
|
.containsExactly(FIRST_SUBTITLE_STRING);
|
||||||
assertThat(cuesWithTimingsList.get(1).startTimeUs).isEqualTo(3_000_000);
|
assertThat(cuesWithTimingsList.get(1).startTimeUs).isEqualTo(3_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(1).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(1).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(1).endTimeUs).isEqualTo(4_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(1).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(1).cues, c -> c.text))
|
||||||
.containsExactly(SECOND_SUBTITLE_STRING);
|
.containsExactly(SECOND_SUBTITLE_STRING);
|
||||||
}
|
}
|
||||||
@ -162,11 +172,13 @@ public class LegacySubtitleUtilWebvttTest {
|
|||||||
assertThat(cuesWithTimingsList).hasSize(2);
|
assertThat(cuesWithTimingsList).hasSize(2);
|
||||||
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(2_000_000);
|
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(2_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(0).endTimeUs).isEqualTo(3_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
||||||
.containsExactly(FIRST_SUBTITLE_STRING, SECOND_SUBTITLE_STRING)
|
.containsExactly(FIRST_SUBTITLE_STRING, SECOND_SUBTITLE_STRING)
|
||||||
.inOrder();
|
.inOrder();
|
||||||
assertThat(cuesWithTimingsList.get(1).startTimeUs).isEqualTo(3_000_000);
|
assertThat(cuesWithTimingsList.get(1).startTimeUs).isEqualTo(3_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(1).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(1).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(1).endTimeUs).isEqualTo(4_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(1).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(1).cues, c -> c.text))
|
||||||
.containsExactly(SECOND_SUBTITLE_STRING);
|
.containsExactly(SECOND_SUBTITLE_STRING);
|
||||||
}
|
}
|
||||||
@ -181,10 +193,12 @@ public class LegacySubtitleUtilWebvttTest {
|
|||||||
assertThat(cuesWithTimingsList).hasSize(2);
|
assertThat(cuesWithTimingsList).hasSize(2);
|
||||||
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(3_000_000);
|
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(3_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(0).endTimeUs).isEqualTo(4_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
||||||
.containsExactly(SECOND_SUBTITLE_STRING);
|
.containsExactly(SECOND_SUBTITLE_STRING);
|
||||||
assertThat(cuesWithTimingsList.get(1).startTimeUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(1).startTimeUs).isEqualTo(1_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(1).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(1).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(1).endTimeUs).isEqualTo(2_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(1).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(1).cues, c -> c.text))
|
||||||
.containsExactly(FIRST_SUBTITLE_STRING);
|
.containsExactly(FIRST_SUBTITLE_STRING);
|
||||||
}
|
}
|
||||||
@ -199,15 +213,18 @@ public class LegacySubtitleUtilWebvttTest {
|
|||||||
assertThat(cuesWithTimingsList).hasSize(3);
|
assertThat(cuesWithTimingsList).hasSize(3);
|
||||||
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(2_000_000);
|
assertThat(cuesWithTimingsList.get(0).startTimeUs).isEqualTo(2_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(0).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(0).endTimeUs).isEqualTo(3_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(0).cues, c -> c.text))
|
||||||
.containsExactly(FIRST_SUBTITLE_STRING, SECOND_SUBTITLE_STRING)
|
.containsExactly(FIRST_SUBTITLE_STRING, SECOND_SUBTITLE_STRING)
|
||||||
.inOrder();
|
.inOrder();
|
||||||
assertThat(cuesWithTimingsList.get(1).startTimeUs).isEqualTo(3_000_000);
|
assertThat(cuesWithTimingsList.get(1).startTimeUs).isEqualTo(3_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(1).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(1).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(1).endTimeUs).isEqualTo(4_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(1).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(1).cues, c -> c.text))
|
||||||
.containsExactly(SECOND_SUBTITLE_STRING);
|
.containsExactly(SECOND_SUBTITLE_STRING);
|
||||||
assertThat(cuesWithTimingsList.get(2).startTimeUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(2).startTimeUs).isEqualTo(1_000_000);
|
||||||
assertThat(cuesWithTimingsList.get(2).durationUs).isEqualTo(1_000_000);
|
assertThat(cuesWithTimingsList.get(2).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(cuesWithTimingsList.get(2).endTimeUs).isEqualTo(2_000_000);
|
||||||
assertThat(Lists.transform(cuesWithTimingsList.get(2).cues, c -> c.text))
|
assertThat(Lists.transform(cuesWithTimingsList.get(2).cues, c -> c.text))
|
||||||
.containsExactly(FIRST_SUBTITLE_STRING);
|
.containsExactly(FIRST_SUBTITLE_STRING);
|
||||||
}
|
}
|
||||||
|
@ -196,6 +196,7 @@ public final class Mp4WebvttParserTest {
|
|||||||
assertThat(result.get(0).cues).isEmpty();
|
assertThat(result.get(0).cues).isEmpty();
|
||||||
assertThat(result.get(0).startTimeUs).isEqualTo(C.TIME_UNSET);
|
assertThat(result.get(0).startTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
assertThat(result.get(0).durationUs).isEqualTo(C.TIME_UNSET);
|
assertThat(result.get(0).durationUs).isEqualTo(C.TIME_UNSET);
|
||||||
|
assertThat(result.get(0).endTimeUs).isEqualTo(C.TIME_UNSET);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Negative tests.
|
// Negative tests.
|
||||||
|
@ -92,11 +92,13 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(1_234_000L);
|
||||||
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(3_456_000L);
|
||||||
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
||||||
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
}
|
}
|
||||||
@ -110,6 +112,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(2_345_000L);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(2_345_000L);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
assertThat(allCues.get(0).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(3_456_000L);
|
||||||
Cue secondCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue secondCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
}
|
}
|
||||||
@ -124,11 +127,13 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(2_345_000L);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(2_345_000L);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
assertThat(allCues.get(0).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(3_456_000L);
|
||||||
Cue secondCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue secondCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(0L);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(0L);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(1_234_000L);
|
assertThat(allCues.get(1).durationUs).isEqualTo(1_234_000L);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(1_234_000L);
|
||||||
Cue firstCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
Cue firstCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
||||||
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
||||||
}
|
}
|
||||||
@ -141,11 +146,13 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(1_234_000L);
|
||||||
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(3_456_000L);
|
||||||
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
||||||
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
}
|
}
|
||||||
@ -158,11 +165,13 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(1_234_000L);
|
||||||
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(3_456_000L);
|
||||||
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
||||||
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
}
|
}
|
||||||
@ -175,11 +184,13 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(1_234_000L);
|
||||||
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(3_456_000L);
|
||||||
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
||||||
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
}
|
}
|
||||||
@ -192,11 +203,13 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(1_234_000L);
|
||||||
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(3_456_000L);
|
||||||
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
||||||
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
}
|
}
|
||||||
@ -209,21 +222,25 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(1_234_000L);
|
||||||
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(3_456_000L);
|
||||||
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
||||||
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
|
|
||||||
assertThat(allCues.get(2).startTimeUs).isEqualTo(4_000_000L);
|
assertThat(allCues.get(2).startTimeUs).isEqualTo(4_000_000L);
|
||||||
assertThat(allCues.get(2).durationUs).isEqualTo(5_000_000L - 4_000_000L);
|
assertThat(allCues.get(2).durationUs).isEqualTo(5_000_000L - 4_000_000L);
|
||||||
|
assertThat(allCues.get(2).endTimeUs).isEqualTo(5_000_000L);
|
||||||
Cue thirdCue = Iterables.getOnlyElement(allCues.get(2).cues);
|
Cue thirdCue = Iterables.getOnlyElement(allCues.get(2).cues);
|
||||||
assertThat(thirdCue.text.toString()).isEqualTo("This is the third subtitle.");
|
assertThat(thirdCue.text.toString()).isEqualTo("This is the third subtitle.");
|
||||||
|
|
||||||
assertThat(allCues.get(3).startTimeUs).isEqualTo(6_000_000L);
|
assertThat(allCues.get(3).startTimeUs).isEqualTo(6_000_000L);
|
||||||
assertThat(allCues.get(3).durationUs).isEqualTo(7_000_000L - 6_000_000L);
|
assertThat(allCues.get(3).durationUs).isEqualTo(7_000_000L - 6_000_000L);
|
||||||
|
assertThat(allCues.get(3).endTimeUs).isEqualTo(7_000_000L);
|
||||||
Cue fourthCue = Iterables.getOnlyElement(allCues.get(3).cues);
|
Cue fourthCue = Iterables.getOnlyElement(allCues.get(3).cues);
|
||||||
assertThat(fourthCue.text.toString()).isEqualTo("This is the <fourth> &subtitle.");
|
assertThat(fourthCue.text.toString()).isEqualTo("This is the <fourth> &subtitle.");
|
||||||
}
|
}
|
||||||
@ -236,6 +253,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(1_234_000L);
|
||||||
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
||||||
assertThat(firstCue.position).isEqualTo(0.6f);
|
assertThat(firstCue.position).isEqualTo(0.6f);
|
||||||
@ -250,6 +268,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(3_456_000L);
|
||||||
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
||||||
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
assertThat(secondCue.text.toString()).isEqualTo("This is the second subtitle.");
|
||||||
// Position is invalid so defaults to 0.5
|
// Position is invalid so defaults to 0.5
|
||||||
@ -258,6 +277,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(2).startTimeUs).isEqualTo(4_000_000L);
|
assertThat(allCues.get(2).startTimeUs).isEqualTo(4_000_000L);
|
||||||
assertThat(allCues.get(2).durationUs).isEqualTo(5_000_000L - 4_000_000L);
|
assertThat(allCues.get(2).durationUs).isEqualTo(5_000_000L - 4_000_000L);
|
||||||
|
assertThat(allCues.get(2).endTimeUs).isEqualTo(5_000_000L);
|
||||||
Cue thirdCue = Iterables.getOnlyElement(allCues.get(2).cues);
|
Cue thirdCue = Iterables.getOnlyElement(allCues.get(2).cues);
|
||||||
assertThat(thirdCue.text.toString()).isEqualTo("This is the third subtitle.");
|
assertThat(thirdCue.text.toString()).isEqualTo("This is the third subtitle.");
|
||||||
assertThat(thirdCue.line).isEqualTo(0.45f);
|
assertThat(thirdCue.line).isEqualTo(0.45f);
|
||||||
@ -269,6 +289,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(3).startTimeUs).isEqualTo(6_000_000L);
|
assertThat(allCues.get(3).startTimeUs).isEqualTo(6_000_000L);
|
||||||
assertThat(allCues.get(3).durationUs).isEqualTo(7_000_000L - 6_000_000L);
|
assertThat(allCues.get(3).durationUs).isEqualTo(7_000_000L - 6_000_000L);
|
||||||
|
assertThat(allCues.get(3).endTimeUs).isEqualTo(7_000_000L);
|
||||||
Cue fourthCue = Iterables.getOnlyElement(allCues.get(3).cues);
|
Cue fourthCue = Iterables.getOnlyElement(allCues.get(3).cues);
|
||||||
assertThat(fourthCue.text.toString()).isEqualTo("This is the fourth subtitle.");
|
assertThat(fourthCue.text.toString()).isEqualTo("This is the fourth subtitle.");
|
||||||
assertThat(fourthCue.line).isEqualTo(-10f);
|
assertThat(fourthCue.line).isEqualTo(-10f);
|
||||||
@ -280,6 +301,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(4).startTimeUs).isEqualTo(8_000_000L);
|
assertThat(allCues.get(4).startTimeUs).isEqualTo(8_000_000L);
|
||||||
assertThat(allCues.get(4).durationUs).isEqualTo(9_000_000L - 8_000_000L);
|
assertThat(allCues.get(4).durationUs).isEqualTo(9_000_000L - 8_000_000L);
|
||||||
|
assertThat(allCues.get(4).endTimeUs).isEqualTo(9_000_000L);
|
||||||
Cue fifthCue = Iterables.getOnlyElement(allCues.get(4).cues);
|
Cue fifthCue = Iterables.getOnlyElement(allCues.get(4).cues);
|
||||||
assertThat(fifthCue.text.toString()).isEqualTo("This is the fifth subtitle.");
|
assertThat(fifthCue.text.toString()).isEqualTo("This is the fifth subtitle.");
|
||||||
assertThat(fifthCue.textAlignment).isEqualTo(Alignment.ALIGN_OPPOSITE);
|
assertThat(fifthCue.textAlignment).isEqualTo(Alignment.ALIGN_OPPOSITE);
|
||||||
@ -289,6 +311,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(5).startTimeUs).isEqualTo(10_000_000L);
|
assertThat(allCues.get(5).startTimeUs).isEqualTo(10_000_000L);
|
||||||
assertThat(allCues.get(5).durationUs).isEqualTo(11_000_000L - 10_000_000L);
|
assertThat(allCues.get(5).durationUs).isEqualTo(11_000_000L - 10_000_000L);
|
||||||
|
assertThat(allCues.get(5).endTimeUs).isEqualTo(11_000_000L);
|
||||||
Cue sixthCue = Iterables.getOnlyElement(allCues.get(5).cues);
|
Cue sixthCue = Iterables.getOnlyElement(allCues.get(5).cues);
|
||||||
assertThat(sixthCue.text.toString()).isEqualTo("This is the sixth subtitle.");
|
assertThat(sixthCue.text.toString()).isEqualTo("This is the sixth subtitle.");
|
||||||
assertThat(sixthCue.textAlignment).isEqualTo(Alignment.ALIGN_CENTER);
|
assertThat(sixthCue.textAlignment).isEqualTo(Alignment.ALIGN_CENTER);
|
||||||
@ -298,12 +321,14 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(6).startTimeUs).isEqualTo(12_000_000L);
|
assertThat(allCues.get(6).startTimeUs).isEqualTo(12_000_000L);
|
||||||
assertThat(allCues.get(6).durationUs).isEqualTo(13_000_000L - 12_000_000L);
|
assertThat(allCues.get(6).durationUs).isEqualTo(13_000_000L - 12_000_000L);
|
||||||
|
assertThat(allCues.get(6).endTimeUs).isEqualTo(13_000_000L);
|
||||||
Cue seventhCue = Iterables.getOnlyElement(allCues.get(6).cues);
|
Cue seventhCue = Iterables.getOnlyElement(allCues.get(6).cues);
|
||||||
assertThat(seventhCue.text.toString()).isEqualTo("This is the seventh subtitle.");
|
assertThat(seventhCue.text.toString()).isEqualTo("This is the seventh subtitle.");
|
||||||
assertThat(seventhCue.positionAnchor).isEqualTo(Cue.ANCHOR_TYPE_START);
|
assertThat(seventhCue.positionAnchor).isEqualTo(Cue.ANCHOR_TYPE_START);
|
||||||
|
|
||||||
assertThat(allCues.get(7).startTimeUs).isEqualTo(14_000_000L);
|
assertThat(allCues.get(7).startTimeUs).isEqualTo(14_000_000L);
|
||||||
assertThat(allCues.get(7).durationUs).isEqualTo(15_000_000L - 14_000_000L);
|
assertThat(allCues.get(7).durationUs).isEqualTo(15_000_000L - 14_000_000L);
|
||||||
|
assertThat(allCues.get(7).endTimeUs).isEqualTo(15_000_000L);
|
||||||
Cue eighthCue = Iterables.getOnlyElement(allCues.get(7).cues);
|
Cue eighthCue = Iterables.getOnlyElement(allCues.get(7).cues);
|
||||||
assertThat(eighthCue.text.toString()).isEqualTo("This is the eighth subtitle.");
|
assertThat(eighthCue.text.toString()).isEqualTo("This is the eighth subtitle.");
|
||||||
assertThat(eighthCue.positionAnchor).isEqualTo(Cue.ANCHOR_TYPE_END);
|
assertThat(eighthCue.positionAnchor).isEqualTo(Cue.ANCHOR_TYPE_END);
|
||||||
@ -317,6 +342,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(0);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(0);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(0).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(1_000_000);
|
||||||
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(firstCue.text.toString()).isEqualTo("Displayed at the bottom for 3 seconds.");
|
assertThat(firstCue.text.toString()).isEqualTo("Displayed at the bottom for 3 seconds.");
|
||||||
assertThat(firstCue.line).isEqualTo(-1f);
|
assertThat(firstCue.line).isEqualTo(-1f);
|
||||||
@ -324,6 +350,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(1_000_000);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(1).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(2_000_000);
|
||||||
ImmutableList<Cue> firstAndSecondCue = allCues.get(1).cues;
|
ImmutableList<Cue> firstAndSecondCue = allCues.get(1).cues;
|
||||||
assertThat(firstAndSecondCue).hasSize(2);
|
assertThat(firstAndSecondCue).hasSize(2);
|
||||||
assertThat(firstAndSecondCue.get(0).text.toString())
|
assertThat(firstAndSecondCue.get(0).text.toString())
|
||||||
@ -337,6 +364,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(2).startTimeUs).isEqualTo(2_000_000);
|
assertThat(allCues.get(2).startTimeUs).isEqualTo(2_000_000);
|
||||||
assertThat(allCues.get(2).durationUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(2).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(allCues.get(2).endTimeUs).isEqualTo(3_000_000);
|
||||||
Cue thirdCue = Iterables.getOnlyElement(allCues.get(2).cues);
|
Cue thirdCue = Iterables.getOnlyElement(allCues.get(2).cues);
|
||||||
assertThat(thirdCue.text.toString()).isEqualTo("Displayed at the bottom for 3 seconds.");
|
assertThat(thirdCue.text.toString()).isEqualTo("Displayed at the bottom for 3 seconds.");
|
||||||
assertThat(thirdCue.line).isEqualTo(-1f);
|
assertThat(thirdCue.line).isEqualTo(-1f);
|
||||||
@ -344,6 +372,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(3).startTimeUs).isEqualTo(4_000_000);
|
assertThat(allCues.get(3).startTimeUs).isEqualTo(4_000_000);
|
||||||
assertThat(allCues.get(3).durationUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(3).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(allCues.get(3).endTimeUs).isEqualTo(5_000_000);
|
||||||
Cue fourthCue = Iterables.getOnlyElement(allCues.get(3).cues);
|
Cue fourthCue = Iterables.getOnlyElement(allCues.get(3).cues);
|
||||||
assertThat(fourthCue.text.toString()).isEqualTo("Displayed at the bottom for 2 seconds.");
|
assertThat(fourthCue.text.toString()).isEqualTo("Displayed at the bottom for 2 seconds.");
|
||||||
assertThat(fourthCue.line).isEqualTo(-1f);
|
assertThat(fourthCue.line).isEqualTo(-1f);
|
||||||
@ -351,6 +380,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(4).startTimeUs).isEqualTo(5_000_000);
|
assertThat(allCues.get(4).startTimeUs).isEqualTo(5_000_000);
|
||||||
assertThat(allCues.get(4).durationUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(4).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(allCues.get(4).endTimeUs).isEqualTo(6_000_000);
|
||||||
ImmutableList<Cue> fourthAndFifth = allCues.get(4).cues;
|
ImmutableList<Cue> fourthAndFifth = allCues.get(4).cues;
|
||||||
assertThat(fourthAndFifth).hasSize(2);
|
assertThat(fourthAndFifth).hasSize(2);
|
||||||
assertThat(fourthAndFifth.get(0).text.toString())
|
assertThat(fourthAndFifth.get(0).text.toString())
|
||||||
@ -364,6 +394,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(5).startTimeUs).isEqualTo(6_000_000);
|
assertThat(allCues.get(5).startTimeUs).isEqualTo(6_000_000);
|
||||||
assertThat(allCues.get(5).durationUs).isEqualTo(1_000_000);
|
assertThat(allCues.get(5).durationUs).isEqualTo(1_000_000);
|
||||||
|
assertThat(allCues.get(5).endTimeUs).isEqualTo(7_000_000);
|
||||||
Cue sixthCue = Iterables.getOnlyElement(allCues.get(5).cues);
|
Cue sixthCue = Iterables.getOnlyElement(allCues.get(5).cues);
|
||||||
assertThat(sixthCue.text.toString())
|
assertThat(sixthCue.text.toString())
|
||||||
.isEqualTo("Appears directly above the previous cue, then replaces it after 1 second.");
|
.isEqualTo("Appears directly above the previous cue, then replaces it after 1 second.");
|
||||||
@ -379,18 +410,21 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(1_234_000L);
|
||||||
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(firstCue.text.toString()).isEqualTo("Vertical right-to-left (e.g. Japanese)");
|
assertThat(firstCue.text.toString()).isEqualTo("Vertical right-to-left (e.g. Japanese)");
|
||||||
assertThat(firstCue.verticalType).isEqualTo(Cue.VERTICAL_TYPE_RL);
|
assertThat(firstCue.verticalType).isEqualTo(Cue.VERTICAL_TYPE_RL);
|
||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_345_000L);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
assertThat(allCues.get(1).durationUs).isEqualTo(3_456_000L - 2_345_000L);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(3_456_000L);
|
||||||
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
||||||
assertThat(secondCue.text.toString()).isEqualTo("Vertical left-to-right (e.g. Mongolian)");
|
assertThat(secondCue.text.toString()).isEqualTo("Vertical left-to-right (e.g. Mongolian)");
|
||||||
assertThat(secondCue.verticalType).isEqualTo(Cue.VERTICAL_TYPE_LR);
|
assertThat(secondCue.verticalType).isEqualTo(Cue.VERTICAL_TYPE_LR);
|
||||||
|
|
||||||
assertThat(allCues.get(2).startTimeUs).isEqualTo(4_000_000L);
|
assertThat(allCues.get(2).startTimeUs).isEqualTo(4_000_000L);
|
||||||
assertThat(allCues.get(2).durationUs).isEqualTo(5_000_000L - 4_000_000L);
|
assertThat(allCues.get(2).durationUs).isEqualTo(5_000_000L - 4_000_000L);
|
||||||
|
assertThat(allCues.get(2).endTimeUs).isEqualTo(5_000_000L);
|
||||||
Cue thirdCue = Iterables.getOnlyElement(allCues.get(2).cues);
|
Cue thirdCue = Iterables.getOnlyElement(allCues.get(2).cues);
|
||||||
assertThat(thirdCue.text.toString()).isEqualTo("No vertical setting (i.e. horizontal)");
|
assertThat(thirdCue.text.toString()).isEqualTo("No vertical setting (i.e. horizontal)");
|
||||||
assertThat(thirdCue.verticalType).isEqualTo(Cue.TYPE_UNSET);
|
assertThat(thirdCue.verticalType).isEqualTo(Cue.TYPE_UNSET);
|
||||||
@ -449,11 +483,13 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
assertThat(allCues.get(0).durationUs).isEqualTo(1_234_000L);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(1_234_000L);
|
||||||
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
assertThat(firstCue.text.toString()).isEqualTo("This is the first subtitle.");
|
||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(4_000_000L);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(4_000_000L);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(5_000_000L - 4_000_000L);
|
assertThat(allCues.get(1).durationUs).isEqualTo(5_000_000L - 4_000_000L);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(5_000_000L);
|
||||||
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
||||||
assertThat(secondCue.text.toString()).isEqualTo("This is the third subtitle.");
|
assertThat(secondCue.text.toString()).isEqualTo("This is the third subtitle.");
|
||||||
}
|
}
|
||||||
@ -466,6 +502,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
assertThat(allCues.get(0).startTimeUs).isEqualTo(0L);
|
||||||
assertThat(allCues.get(0).durationUs).isEqualTo(2_000_000L);
|
assertThat(allCues.get(0).durationUs).isEqualTo(2_000_000L);
|
||||||
|
assertThat(allCues.get(0).endTimeUs).isEqualTo(2_000_000L);
|
||||||
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues);
|
||||||
assertThat(firstCue.text.toString()).isEqualTo("Sentence with font-size set to 4.4em.");
|
assertThat(firstCue.text.toString()).isEqualTo("Sentence with font-size set to 4.4em.");
|
||||||
assertThat((Spanned) firstCue.text)
|
assertThat((Spanned) firstCue.text)
|
||||||
@ -474,12 +511,14 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_100_000L);
|
assertThat(allCues.get(1).startTimeUs).isEqualTo(2_100_000L);
|
||||||
assertThat(allCues.get(1).durationUs).isEqualTo(2_400_000L - 2_100_000L);
|
assertThat(allCues.get(1).durationUs).isEqualTo(2_400_000L - 2_100_000L);
|
||||||
|
assertThat(allCues.get(1).endTimeUs).isEqualTo(2_400_000L);
|
||||||
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues);
|
||||||
assertThat(secondCue.text.toString()).isEqualTo("Sentence with bad font-size unit.");
|
assertThat(secondCue.text.toString()).isEqualTo("Sentence with bad font-size unit.");
|
||||||
assertThat((Spanned) secondCue.text).hasNoSpans();
|
assertThat((Spanned) secondCue.text).hasNoSpans();
|
||||||
|
|
||||||
assertThat(allCues.get(2).startTimeUs).isEqualTo(2_500_000L);
|
assertThat(allCues.get(2).startTimeUs).isEqualTo(2_500_000L);
|
||||||
assertThat(allCues.get(2).durationUs).isEqualTo(4_000_000L - 2_500_000L);
|
assertThat(allCues.get(2).durationUs).isEqualTo(4_000_000L - 2_500_000L);
|
||||||
|
assertThat(allCues.get(2).endTimeUs).isEqualTo(4_000_000L);
|
||||||
Cue thirdCue = Iterables.getOnlyElement(allCues.get(2).cues);
|
Cue thirdCue = Iterables.getOnlyElement(allCues.get(2).cues);
|
||||||
assertThat(thirdCue.text.toString()).isEqualTo("Absolute font-size expressed in px unit!");
|
assertThat(thirdCue.text.toString()).isEqualTo("Absolute font-size expressed in px unit!");
|
||||||
assertThat((Spanned) thirdCue.text)
|
assertThat((Spanned) thirdCue.text)
|
||||||
@ -488,6 +527,7 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(3).startTimeUs).isEqualTo(4_500_000L);
|
assertThat(allCues.get(3).startTimeUs).isEqualTo(4_500_000L);
|
||||||
assertThat(allCues.get(3).durationUs).isEqualTo(6_000_000L - 4_500_000L);
|
assertThat(allCues.get(3).durationUs).isEqualTo(6_000_000L - 4_500_000L);
|
||||||
|
assertThat(allCues.get(3).endTimeUs).isEqualTo(6_000_000L);
|
||||||
Cue fourthCue = Iterables.getOnlyElement(allCues.get(3).cues);
|
Cue fourthCue = Iterables.getOnlyElement(allCues.get(3).cues);
|
||||||
assertThat(fourthCue.text.toString()).isEqualTo("Relative font-size expressed in % unit!");
|
assertThat(fourthCue.text.toString()).isEqualTo("Relative font-size expressed in % unit!");
|
||||||
assertThat((Spanned) fourthCue.text)
|
assertThat((Spanned) fourthCue.text)
|
||||||
@ -496,12 +536,14 @@ public class WebvttParserTest {
|
|||||||
|
|
||||||
assertThat(allCues.get(4).startTimeUs).isEqualTo(6_100_000L);
|
assertThat(allCues.get(4).startTimeUs).isEqualTo(6_100_000L);
|
||||||
assertThat(allCues.get(4).durationUs).isEqualTo(6_400_000L - 6_100_000L);
|
assertThat(allCues.get(4).durationUs).isEqualTo(6_400_000L - 6_100_000L);
|
||||||
|
assertThat(allCues.get(4).endTimeUs).isEqualTo(6_400_000L);
|
||||||
Cue fifthCue = Iterables.getOnlyElement(allCues.get(4).cues);
|
Cue fifthCue = Iterables.getOnlyElement(allCues.get(4).cues);
|
||||||
assertThat(fifthCue.text.toString()).isEqualTo("Sentence with bad font-size value.");
|
assertThat(fifthCue.text.toString()).isEqualTo("Sentence with bad font-size value.");
|
||||||
assertThat((Spanned) secondCue.text).hasNoSpans();
|
assertThat((Spanned) secondCue.text).hasNoSpans();
|
||||||
|
|
||||||
assertThat(allCues.get(5).startTimeUs).isEqualTo(6_500_000L);
|
assertThat(allCues.get(5).startTimeUs).isEqualTo(6_500_000L);
|
||||||
assertThat(allCues.get(5).durationUs).isEqualTo(8_000_000L - 6_500_000L);
|
assertThat(allCues.get(5).durationUs).isEqualTo(8_000_000L - 6_500_000L);
|
||||||
|
assertThat(allCues.get(5).endTimeUs).isEqualTo(8_000_000L);
|
||||||
Cue sixthCue = Iterables.getOnlyElement(allCues.get(5).cues);
|
Cue sixthCue = Iterables.getOnlyElement(allCues.get(5).cues);
|
||||||
assertThat(sixthCue.text.toString())
|
assertThat(sixthCue.text.toString())
|
||||||
.isEqualTo("Upper and lower case letters in font-size unit.");
|
.isEqualTo("Upper and lower case letters in font-size unit.");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user