Split SubripDecoder and ParsableByteArray tests
In some cases we split a test method, and in other cases we just add line breaks to make the separation between arrange/act/assert more clear. PiperOrigin-RevId: 492182769
This commit is contained in:
parent
a919141805
commit
e4fb663b23
@ -332,6 +332,7 @@ public final class ParsableByteArrayTest {
|
|||||||
public void readLittleEndianLong() {
|
public void readLittleEndianLong() {
|
||||||
ParsableByteArray byteArray =
|
ParsableByteArray byteArray =
|
||||||
new ParsableByteArray(new byte[] {0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, (byte) 0xFF});
|
new ParsableByteArray(new byte[] {0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, (byte) 0xFF});
|
||||||
|
|
||||||
assertThat(byteArray.readLittleEndianLong()).isEqualTo(0xFF00000000000001L);
|
assertThat(byteArray.readLittleEndianLong()).isEqualTo(0xFF00000000000001L);
|
||||||
assertThat(byteArray.getPosition()).isEqualTo(8);
|
assertThat(byteArray.getPosition()).isEqualTo(8);
|
||||||
}
|
}
|
||||||
@ -339,6 +340,7 @@ public final class ParsableByteArrayTest {
|
|||||||
@Test
|
@Test
|
||||||
public void readLittleEndianUnsignedInt() {
|
public void readLittleEndianUnsignedInt() {
|
||||||
ParsableByteArray byteArray = new ParsableByteArray(new byte[] {0x10, 0x00, 0x00, (byte) 0xFF});
|
ParsableByteArray byteArray = new ParsableByteArray(new byte[] {0x10, 0x00, 0x00, (byte) 0xFF});
|
||||||
|
|
||||||
assertThat(byteArray.readLittleEndianUnsignedInt()).isEqualTo(0xFF000010L);
|
assertThat(byteArray.readLittleEndianUnsignedInt()).isEqualTo(0xFF000010L);
|
||||||
assertThat(byteArray.getPosition()).isEqualTo(4);
|
assertThat(byteArray.getPosition()).isEqualTo(4);
|
||||||
}
|
}
|
||||||
@ -346,6 +348,7 @@ public final class ParsableByteArrayTest {
|
|||||||
@Test
|
@Test
|
||||||
public void readLittleEndianInt() {
|
public void readLittleEndianInt() {
|
||||||
ParsableByteArray byteArray = new ParsableByteArray(new byte[] {0x01, 0x00, 0x00, (byte) 0xFF});
|
ParsableByteArray byteArray = new ParsableByteArray(new byte[] {0x01, 0x00, 0x00, (byte) 0xFF});
|
||||||
|
|
||||||
assertThat(byteArray.readLittleEndianInt()).isEqualTo(0xFF000001);
|
assertThat(byteArray.readLittleEndianInt()).isEqualTo(0xFF000001);
|
||||||
assertThat(byteArray.getPosition()).isEqualTo(4);
|
assertThat(byteArray.getPosition()).isEqualTo(4);
|
||||||
}
|
}
|
||||||
@ -354,6 +357,7 @@ public final class ParsableByteArrayTest {
|
|||||||
public void readLittleEndianUnsignedInt24() {
|
public void readLittleEndianUnsignedInt24() {
|
||||||
byte[] data = {0x01, 0x02, (byte) 0xFF};
|
byte[] data = {0x01, 0x02, (byte) 0xFF};
|
||||||
ParsableByteArray byteArray = new ParsableByteArray(data);
|
ParsableByteArray byteArray = new ParsableByteArray(data);
|
||||||
|
|
||||||
assertThat(byteArray.readLittleEndianUnsignedInt24()).isEqualTo(0xFF0201);
|
assertThat(byteArray.readLittleEndianUnsignedInt24()).isEqualTo(0xFF0201);
|
||||||
assertThat(byteArray.getPosition()).isEqualTo(3);
|
assertThat(byteArray.getPosition()).isEqualTo(3);
|
||||||
}
|
}
|
||||||
@ -362,6 +366,7 @@ public final class ParsableByteArrayTest {
|
|||||||
public void readInt24Positive() {
|
public void readInt24Positive() {
|
||||||
byte[] data = {0x01, 0x02, (byte) 0xFF};
|
byte[] data = {0x01, 0x02, (byte) 0xFF};
|
||||||
ParsableByteArray byteArray = new ParsableByteArray(data);
|
ParsableByteArray byteArray = new ParsableByteArray(data);
|
||||||
|
|
||||||
assertThat(byteArray.readInt24()).isEqualTo(0x0102FF);
|
assertThat(byteArray.readInt24()).isEqualTo(0x0102FF);
|
||||||
assertThat(byteArray.getPosition()).isEqualTo(3);
|
assertThat(byteArray.getPosition()).isEqualTo(3);
|
||||||
}
|
}
|
||||||
@ -370,6 +375,7 @@ public final class ParsableByteArrayTest {
|
|||||||
public void readInt24Negative() {
|
public void readInt24Negative() {
|
||||||
byte[] data = {(byte) 0xFF, 0x02, (byte) 0x01};
|
byte[] data = {(byte) 0xFF, 0x02, (byte) 0x01};
|
||||||
ParsableByteArray byteArray = new ParsableByteArray(data);
|
ParsableByteArray byteArray = new ParsableByteArray(data);
|
||||||
|
|
||||||
assertThat(byteArray.readInt24()).isEqualTo(0xFFFF0201);
|
assertThat(byteArray.readInt24()).isEqualTo(0xFFFF0201);
|
||||||
assertThat(byteArray.getPosition()).isEqualTo(3);
|
assertThat(byteArray.getPosition()).isEqualTo(3);
|
||||||
}
|
}
|
||||||
@ -378,6 +384,7 @@ public final class ParsableByteArrayTest {
|
|||||||
public void readLittleEndianUnsignedShort() {
|
public void readLittleEndianUnsignedShort() {
|
||||||
ParsableByteArray byteArray =
|
ParsableByteArray byteArray =
|
||||||
new ParsableByteArray(new byte[] {0x01, (byte) 0xFF, 0x02, (byte) 0xFF});
|
new ParsableByteArray(new byte[] {0x01, (byte) 0xFF, 0x02, (byte) 0xFF});
|
||||||
|
|
||||||
assertThat(byteArray.readLittleEndianUnsignedShort()).isEqualTo(0xFF01);
|
assertThat(byteArray.readLittleEndianUnsignedShort()).isEqualTo(0xFF01);
|
||||||
assertThat(byteArray.getPosition()).isEqualTo(2);
|
assertThat(byteArray.getPosition()).isEqualTo(2);
|
||||||
assertThat(byteArray.readLittleEndianUnsignedShort()).isEqualTo(0xFF02);
|
assertThat(byteArray.readLittleEndianUnsignedShort()).isEqualTo(0xFF02);
|
||||||
@ -388,6 +395,7 @@ public final class ParsableByteArrayTest {
|
|||||||
public void readLittleEndianShort() {
|
public void readLittleEndianShort() {
|
||||||
ParsableByteArray byteArray =
|
ParsableByteArray byteArray =
|
||||||
new ParsableByteArray(new byte[] {0x01, (byte) 0xFF, 0x02, (byte) 0xFF});
|
new ParsableByteArray(new byte[] {0x01, (byte) 0xFF, 0x02, (byte) 0xFF});
|
||||||
|
|
||||||
assertThat(byteArray.readLittleEndianShort()).isEqualTo((short) 0xFF01);
|
assertThat(byteArray.readLittleEndianShort()).isEqualTo((short) 0xFF01);
|
||||||
assertThat(byteArray.getPosition()).isEqualTo(2);
|
assertThat(byteArray.getPosition()).isEqualTo(2);
|
||||||
assertThat(byteArray.readLittleEndianShort()).isEqualTo((short) 0xFF02);
|
assertThat(byteArray.readLittleEndianShort()).isEqualTo((short) 0xFF02);
|
||||||
@ -422,6 +430,7 @@ public final class ParsableByteArrayTest {
|
|||||||
(byte) 0x20,
|
(byte) 0x20,
|
||||||
};
|
};
|
||||||
ParsableByteArray byteArray = new ParsableByteArray(data);
|
ParsableByteArray byteArray = new ParsableByteArray(data);
|
||||||
|
|
||||||
assertThat(byteArray.readString(data.length)).isEqualTo("ä ö ® π √ ± 谢 ");
|
assertThat(byteArray.readString(data.length)).isEqualTo("ä ö ® π √ ± 谢 ");
|
||||||
assertThat(byteArray.getPosition()).isEqualTo(data.length);
|
assertThat(byteArray.getPosition()).isEqualTo(data.length);
|
||||||
}
|
}
|
||||||
@ -430,6 +439,7 @@ public final class ParsableByteArrayTest {
|
|||||||
public void readAsciiString() {
|
public void readAsciiString() {
|
||||||
byte[] data = new byte[] {'t', 'e', 's', 't'};
|
byte[] data = new byte[] {'t', 'e', 's', 't'};
|
||||||
ParsableByteArray testArray = new ParsableByteArray(data);
|
ParsableByteArray testArray = new ParsableByteArray(data);
|
||||||
|
|
||||||
assertThat(testArray.readString(data.length, forName("US-ASCII"))).isEqualTo("test");
|
assertThat(testArray.readString(data.length, forName("US-ASCII"))).isEqualTo("test");
|
||||||
assertThat(testArray.getPosition()).isEqualTo(data.length);
|
assertThat(testArray.getPosition()).isEqualTo(data.length);
|
||||||
}
|
}
|
||||||
@ -438,6 +448,7 @@ public final class ParsableByteArrayTest {
|
|||||||
public void readStringOutOfBoundsDoesNotMovePosition() {
|
public void readStringOutOfBoundsDoesNotMovePosition() {
|
||||||
byte[] data = {(byte) 0xC3, (byte) 0xA4, (byte) 0x20};
|
byte[] data = {(byte) 0xC3, (byte) 0xA4, (byte) 0x20};
|
||||||
ParsableByteArray byteArray = new ParsableByteArray(data);
|
ParsableByteArray byteArray = new ParsableByteArray(data);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
byteArray.readString(data.length + 1);
|
byteArray.readString(data.length + 1);
|
||||||
fail();
|
fail();
|
||||||
@ -454,17 +465,22 @@ public final class ParsableByteArrayTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void readNullTerminatedStringWithLengths() {
|
public void readNullTerminatedStringWithLengths_readLengthsMatchNullPositions() {
|
||||||
byte[] bytes = new byte[] {'f', 'o', 'o', 0, 'b', 'a', 'r', 0};
|
byte[] bytes = new byte[] {'f', 'o', 'o', 0, 'b', 'a', 'r', 0};
|
||||||
// Test with lengths that match NUL byte positions.
|
|
||||||
ParsableByteArray parser = new ParsableByteArray(bytes);
|
ParsableByteArray parser = new ParsableByteArray(bytes);
|
||||||
assertThat(parser.readNullTerminatedString(4)).isEqualTo("foo");
|
assertThat(parser.readNullTerminatedString(4)).isEqualTo("foo");
|
||||||
assertThat(parser.getPosition()).isEqualTo(4);
|
assertThat(parser.getPosition()).isEqualTo(4);
|
||||||
assertThat(parser.readNullTerminatedString(4)).isEqualTo("bar");
|
assertThat(parser.readNullTerminatedString(4)).isEqualTo("bar");
|
||||||
assertThat(parser.getPosition()).isEqualTo(8);
|
assertThat(parser.getPosition()).isEqualTo(8);
|
||||||
assertThat(parser.readNullTerminatedString()).isNull();
|
assertThat(parser.readNullTerminatedString()).isNull();
|
||||||
// Test with lengths that do not match NUL byte positions.
|
}
|
||||||
parser = new ParsableByteArray(bytes);
|
|
||||||
|
@Test
|
||||||
|
public void readNullTerminatedStringWithLengths_readLengthsDontMatchNullPositions() {
|
||||||
|
byte[] bytes = new byte[] {'f', 'o', 'o', 0, 'b', 'a', 'r', 0};
|
||||||
|
ParsableByteArray parser = new ParsableByteArray(bytes);
|
||||||
|
|
||||||
assertThat(parser.readNullTerminatedString(2)).isEqualTo("fo");
|
assertThat(parser.readNullTerminatedString(2)).isEqualTo("fo");
|
||||||
assertThat(parser.getPosition()).isEqualTo(2);
|
assertThat(parser.getPosition()).isEqualTo(2);
|
||||||
assertThat(parser.readNullTerminatedString(2)).isEqualTo("o");
|
assertThat(parser.readNullTerminatedString(2)).isEqualTo("o");
|
||||||
@ -474,13 +490,23 @@ public final class ParsableByteArrayTest {
|
|||||||
assertThat(parser.readNullTerminatedString(1)).isEqualTo("");
|
assertThat(parser.readNullTerminatedString(1)).isEqualTo("");
|
||||||
assertThat(parser.getPosition()).isEqualTo(8);
|
assertThat(parser.getPosition()).isEqualTo(8);
|
||||||
assertThat(parser.readNullTerminatedString()).isNull();
|
assertThat(parser.readNullTerminatedString()).isNull();
|
||||||
// Test with limit at NUL
|
}
|
||||||
parser = new ParsableByteArray(bytes, 4);
|
|
||||||
|
@Test
|
||||||
|
public void readNullTerminatedStringWithLengths_limitAtNull() {
|
||||||
|
byte[] bytes = new byte[] {'f', 'o', 'o', 0, 'b', 'a', 'r', 0};
|
||||||
|
ParsableByteArray parser = new ParsableByteArray(bytes, /* limit= */ 4);
|
||||||
|
|
||||||
assertThat(parser.readNullTerminatedString(4)).isEqualTo("foo");
|
assertThat(parser.readNullTerminatedString(4)).isEqualTo("foo");
|
||||||
assertThat(parser.getPosition()).isEqualTo(4);
|
assertThat(parser.getPosition()).isEqualTo(4);
|
||||||
assertThat(parser.readNullTerminatedString()).isNull();
|
assertThat(parser.readNullTerminatedString()).isNull();
|
||||||
// Test with limit before NUL
|
}
|
||||||
parser = new ParsableByteArray(bytes, 3);
|
|
||||||
|
@Test
|
||||||
|
public void readNullTerminatedStringWithLengths_limitBeforeNull() {
|
||||||
|
byte[] bytes = new byte[] {'f', 'o', 'o', 0, 'b', 'a', 'r', 0};
|
||||||
|
ParsableByteArray parser = new ParsableByteArray(bytes, /* limit= */ 3);
|
||||||
|
|
||||||
assertThat(parser.readNullTerminatedString(3)).isEqualTo("foo");
|
assertThat(parser.readNullTerminatedString(3)).isEqualTo("foo");
|
||||||
assertThat(parser.getPosition()).isEqualTo(3);
|
assertThat(parser.getPosition()).isEqualTo(3);
|
||||||
assertThat(parser.readNullTerminatedString()).isNull();
|
assertThat(parser.readNullTerminatedString()).isNull();
|
||||||
@ -489,20 +515,30 @@ public final class ParsableByteArrayTest {
|
|||||||
@Test
|
@Test
|
||||||
public void readNullTerminatedString() {
|
public void readNullTerminatedString() {
|
||||||
byte[] bytes = new byte[] {'f', 'o', 'o', 0, 'b', 'a', 'r', 0};
|
byte[] bytes = new byte[] {'f', 'o', 'o', 0, 'b', 'a', 'r', 0};
|
||||||
// Test normal case.
|
|
||||||
ParsableByteArray parser = new ParsableByteArray(bytes);
|
ParsableByteArray parser = new ParsableByteArray(bytes);
|
||||||
|
|
||||||
assertThat(parser.readNullTerminatedString()).isEqualTo("foo");
|
assertThat(parser.readNullTerminatedString()).isEqualTo("foo");
|
||||||
assertThat(parser.getPosition()).isEqualTo(4);
|
assertThat(parser.getPosition()).isEqualTo(4);
|
||||||
assertThat(parser.readNullTerminatedString()).isEqualTo("bar");
|
assertThat(parser.readNullTerminatedString()).isEqualTo("bar");
|
||||||
assertThat(parser.getPosition()).isEqualTo(8);
|
assertThat(parser.getPosition()).isEqualTo(8);
|
||||||
assertThat(parser.readNullTerminatedString()).isNull();
|
assertThat(parser.readNullTerminatedString()).isNull();
|
||||||
// Test with limit at NUL.
|
}
|
||||||
parser = new ParsableByteArray(bytes, 4);
|
|
||||||
|
@Test
|
||||||
|
public void readNullTerminatedString_withLimitAtNull() {
|
||||||
|
byte[] bytes = new byte[] {'f', 'o', 'o', 0, 'b', 'a', 'r', 0};
|
||||||
|
ParsableByteArray parser = new ParsableByteArray(bytes, /* limit= */ 4);
|
||||||
|
|
||||||
assertThat(parser.readNullTerminatedString()).isEqualTo("foo");
|
assertThat(parser.readNullTerminatedString()).isEqualTo("foo");
|
||||||
assertThat(parser.getPosition()).isEqualTo(4);
|
assertThat(parser.getPosition()).isEqualTo(4);
|
||||||
assertThat(parser.readNullTerminatedString()).isNull();
|
assertThat(parser.readNullTerminatedString()).isNull();
|
||||||
// Test with limit before NUL.
|
}
|
||||||
parser = new ParsableByteArray(bytes, 3);
|
|
||||||
|
@Test
|
||||||
|
public void readNullTerminatedString_withLimitBeforeNull() {
|
||||||
|
byte[] bytes = new byte[] {'f', 'o', 'o', 0, 'b', 'a', 'r', 0};
|
||||||
|
ParsableByteArray parser = new ParsableByteArray(bytes, /* limit= */ 3);
|
||||||
|
|
||||||
assertThat(parser.readNullTerminatedString()).isEqualTo("foo");
|
assertThat(parser.readNullTerminatedString()).isEqualTo("foo");
|
||||||
assertThat(parser.getPosition()).isEqualTo(3);
|
assertThat(parser.getPosition()).isEqualTo(3);
|
||||||
assertThat(parser.readNullTerminatedString()).isNull();
|
assertThat(parser.readNullTerminatedString()).isNull();
|
||||||
@ -512,6 +548,7 @@ public final class ParsableByteArrayTest {
|
|||||||
public void readNullTerminatedStringWithoutEndingNull() {
|
public void readNullTerminatedStringWithoutEndingNull() {
|
||||||
byte[] bytes = new byte[] {'f', 'o', 'o', 0, 'b', 'a', 'r'};
|
byte[] bytes = new byte[] {'f', 'o', 'o', 0, 'b', 'a', 'r'};
|
||||||
ParsableByteArray parser = new ParsableByteArray(bytes);
|
ParsableByteArray parser = new ParsableByteArray(bytes);
|
||||||
|
|
||||||
assertThat(parser.readNullTerminatedString()).isEqualTo("foo");
|
assertThat(parser.readNullTerminatedString()).isEqualTo("foo");
|
||||||
assertThat(parser.readNullTerminatedString()).isEqualTo("bar");
|
assertThat(parser.readNullTerminatedString()).isEqualTo("bar");
|
||||||
assertThat(parser.readNullTerminatedString()).isNull();
|
assertThat(parser.readNullTerminatedString()).isNull();
|
||||||
@ -520,30 +557,40 @@ public final class ParsableByteArrayTest {
|
|||||||
@Test
|
@Test
|
||||||
public void readDelimiterTerminatedString() {
|
public void readDelimiterTerminatedString() {
|
||||||
byte[] bytes = new byte[] {'f', 'o', 'o', '*', 'b', 'a', 'r', '*'};
|
byte[] bytes = new byte[] {'f', 'o', 'o', '*', 'b', 'a', 'r', '*'};
|
||||||
// Test normal case.
|
|
||||||
ParsableByteArray parser = new ParsableByteArray(bytes);
|
ParsableByteArray parser = new ParsableByteArray(bytes);
|
||||||
|
|
||||||
assertThat(parser.readDelimiterTerminatedString('*')).isEqualTo("foo");
|
assertThat(parser.readDelimiterTerminatedString('*')).isEqualTo("foo");
|
||||||
assertThat(parser.getPosition()).isEqualTo(4);
|
assertThat(parser.getPosition()).isEqualTo(4);
|
||||||
assertThat(parser.readDelimiterTerminatedString('*')).isEqualTo("bar");
|
assertThat(parser.readDelimiterTerminatedString('*')).isEqualTo("bar");
|
||||||
assertThat(parser.getPosition()).isEqualTo(8);
|
assertThat(parser.getPosition()).isEqualTo(8);
|
||||||
assertThat(parser.readDelimiterTerminatedString('*')).isNull();
|
assertThat(parser.readDelimiterTerminatedString('*')).isNull();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void readDelimiterTerminatedString_limitAtDelimiter() {
|
||||||
|
byte[] bytes = new byte[] {'f', 'o', 'o', '*', 'b', 'a', 'r', '*'};
|
||||||
|
ParsableByteArray parser = new ParsableByteArray(bytes, /* limit= */ 4);
|
||||||
|
|
||||||
// Test with limit at delimiter.
|
|
||||||
parser = new ParsableByteArray(bytes, 4);
|
|
||||||
assertThat(parser.readDelimiterTerminatedString('*')).isEqualTo("foo");
|
assertThat(parser.readDelimiterTerminatedString('*')).isEqualTo("foo");
|
||||||
assertThat(parser.getPosition()).isEqualTo(4);
|
assertThat(parser.getPosition()).isEqualTo(4);
|
||||||
assertThat(parser.readDelimiterTerminatedString('*')).isNull();
|
assertThat(parser.readDelimiterTerminatedString('*')).isNull();
|
||||||
// Test with limit before delimiter.
|
}
|
||||||
parser = new ParsableByteArray(bytes, 3);
|
|
||||||
|
@Test
|
||||||
|
public void readDelimiterTerminatedString_limitBeforeDelimiter() {
|
||||||
|
byte[] bytes = new byte[] {'f', 'o', 'o', '*', 'b', 'a', 'r', '*'};
|
||||||
|
ParsableByteArray parser = new ParsableByteArray(bytes, /* limit= */ 3);
|
||||||
|
|
||||||
assertThat(parser.readDelimiterTerminatedString('*')).isEqualTo("foo");
|
assertThat(parser.readDelimiterTerminatedString('*')).isEqualTo("foo");
|
||||||
assertThat(parser.getPosition()).isEqualTo(3);
|
assertThat(parser.getPosition()).isEqualTo(3);
|
||||||
assertThat(parser.readDelimiterTerminatedString('*')).isNull();
|
assertThat(parser.readDelimiterTerminatedString('*')).isNull();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void readDelimiterTerminatedStringWithoutEndingDelimiter() {
|
public void readDelimiterTerminatedStringW_noDelimiter() {
|
||||||
byte[] bytes = new byte[] {'f', 'o', 'o', '*', 'b', 'a', 'r'};
|
byte[] bytes = new byte[] {'f', 'o', 'o', '*', 'b', 'a', 'r'};
|
||||||
ParsableByteArray parser = new ParsableByteArray(bytes);
|
ParsableByteArray parser = new ParsableByteArray(bytes);
|
||||||
|
|
||||||
assertThat(parser.readDelimiterTerminatedString('*')).isEqualTo("foo");
|
assertThat(parser.readDelimiterTerminatedString('*')).isEqualTo("foo");
|
||||||
assertThat(parser.readDelimiterTerminatedString('*')).isEqualTo("bar");
|
assertThat(parser.readDelimiterTerminatedString('*')).isEqualTo("bar");
|
||||||
assertThat(parser.readDelimiterTerminatedString('*')).isNull();
|
assertThat(parser.readDelimiterTerminatedString('*')).isNull();
|
||||||
|
@ -50,6 +50,7 @@ public final class SubripDecoderTest {
|
|||||||
public void decodeEmpty() throws IOException {
|
public void decodeEmpty() throws IOException {
|
||||||
SubripDecoder decoder = new SubripDecoder();
|
SubripDecoder decoder = new SubripDecoder();
|
||||||
byte[] bytes = TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), EMPTY_FILE);
|
byte[] bytes = TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), EMPTY_FILE);
|
||||||
|
|
||||||
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
||||||
|
|
||||||
assertThat(subtitle.getEventTimeCount()).isEqualTo(0);
|
assertThat(subtitle.getEventTimeCount()).isEqualTo(0);
|
||||||
@ -60,6 +61,7 @@ public final class SubripDecoderTest {
|
|||||||
public void decodeTypical() throws IOException {
|
public void decodeTypical() throws IOException {
|
||||||
SubripDecoder decoder = new SubripDecoder();
|
SubripDecoder decoder = new SubripDecoder();
|
||||||
byte[] bytes = TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), TYPICAL_FILE);
|
byte[] bytes = TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), TYPICAL_FILE);
|
||||||
|
|
||||||
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
||||||
|
|
||||||
assertThat(subtitle.getEventTimeCount()).isEqualTo(6);
|
assertThat(subtitle.getEventTimeCount()).isEqualTo(6);
|
||||||
@ -74,6 +76,7 @@ public final class SubripDecoderTest {
|
|||||||
byte[] bytes =
|
byte[] bytes =
|
||||||
TestUtil.getByteArray(
|
TestUtil.getByteArray(
|
||||||
ApplicationProvider.getApplicationContext(), TYPICAL_WITH_BYTE_ORDER_MARK);
|
ApplicationProvider.getApplicationContext(), TYPICAL_WITH_BYTE_ORDER_MARK);
|
||||||
|
|
||||||
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
||||||
|
|
||||||
assertThat(subtitle.getEventTimeCount()).isEqualTo(6);
|
assertThat(subtitle.getEventTimeCount()).isEqualTo(6);
|
||||||
@ -88,6 +91,7 @@ public final class SubripDecoderTest {
|
|||||||
byte[] bytes =
|
byte[] bytes =
|
||||||
TestUtil.getByteArray(
|
TestUtil.getByteArray(
|
||||||
ApplicationProvider.getApplicationContext(), TYPICAL_EXTRA_BLANK_LINE);
|
ApplicationProvider.getApplicationContext(), TYPICAL_EXTRA_BLANK_LINE);
|
||||||
|
|
||||||
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
||||||
|
|
||||||
assertThat(subtitle.getEventTimeCount()).isEqualTo(6);
|
assertThat(subtitle.getEventTimeCount()).isEqualTo(6);
|
||||||
@ -103,6 +107,7 @@ public final class SubripDecoderTest {
|
|||||||
byte[] bytes =
|
byte[] bytes =
|
||||||
TestUtil.getByteArray(
|
TestUtil.getByteArray(
|
||||||
ApplicationProvider.getApplicationContext(), TYPICAL_MISSING_TIMECODE);
|
ApplicationProvider.getApplicationContext(), TYPICAL_MISSING_TIMECODE);
|
||||||
|
|
||||||
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
||||||
|
|
||||||
assertThat(subtitle.getEventTimeCount()).isEqualTo(4);
|
assertThat(subtitle.getEventTimeCount()).isEqualTo(4);
|
||||||
@ -117,6 +122,7 @@ public final class SubripDecoderTest {
|
|||||||
byte[] bytes =
|
byte[] bytes =
|
||||||
TestUtil.getByteArray(
|
TestUtil.getByteArray(
|
||||||
ApplicationProvider.getApplicationContext(), TYPICAL_MISSING_SEQUENCE);
|
ApplicationProvider.getApplicationContext(), TYPICAL_MISSING_SEQUENCE);
|
||||||
|
|
||||||
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
||||||
|
|
||||||
assertThat(subtitle.getEventTimeCount()).isEqualTo(4);
|
assertThat(subtitle.getEventTimeCount()).isEqualTo(4);
|
||||||
@ -131,6 +137,7 @@ public final class SubripDecoderTest {
|
|||||||
byte[] bytes =
|
byte[] bytes =
|
||||||
TestUtil.getByteArray(
|
TestUtil.getByteArray(
|
||||||
ApplicationProvider.getApplicationContext(), TYPICAL_NEGATIVE_TIMESTAMPS);
|
ApplicationProvider.getApplicationContext(), TYPICAL_NEGATIVE_TIMESTAMPS);
|
||||||
|
|
||||||
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
||||||
|
|
||||||
assertThat(subtitle.getEventTimeCount()).isEqualTo(2);
|
assertThat(subtitle.getEventTimeCount()).isEqualTo(2);
|
||||||
@ -143,6 +150,7 @@ public final class SubripDecoderTest {
|
|||||||
SubripDecoder decoder = new SubripDecoder();
|
SubripDecoder decoder = new SubripDecoder();
|
||||||
byte[] bytes =
|
byte[] bytes =
|
||||||
TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), TYPICAL_UNEXPECTED_END);
|
TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), TYPICAL_UNEXPECTED_END);
|
||||||
|
|
||||||
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
||||||
|
|
||||||
assertThat(subtitle.getEventTimeCount()).isEqualTo(4);
|
assertThat(subtitle.getEventTimeCount()).isEqualTo(4);
|
||||||
@ -155,6 +163,7 @@ public final class SubripDecoderTest {
|
|||||||
SubripDecoder decoder = new SubripDecoder();
|
SubripDecoder decoder = new SubripDecoder();
|
||||||
byte[] bytes =
|
byte[] bytes =
|
||||||
TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), TYPICAL_UTF16LE);
|
TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), TYPICAL_UTF16LE);
|
||||||
|
|
||||||
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
||||||
|
|
||||||
assertThat(subtitle.getEventTimeCount()).isEqualTo(6);
|
assertThat(subtitle.getEventTimeCount()).isEqualTo(6);
|
||||||
@ -168,6 +177,7 @@ public final class SubripDecoderTest {
|
|||||||
SubripDecoder decoder = new SubripDecoder();
|
SubripDecoder decoder = new SubripDecoder();
|
||||||
byte[] bytes =
|
byte[] bytes =
|
||||||
TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), TYPICAL_UTF16BE);
|
TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), TYPICAL_UTF16BE);
|
||||||
|
|
||||||
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
||||||
|
|
||||||
assertThat(subtitle.getEventTimeCount()).isEqualTo(6);
|
assertThat(subtitle.getEventTimeCount()).isEqualTo(6);
|
||||||
@ -181,23 +191,19 @@ public final class SubripDecoderTest {
|
|||||||
SubripDecoder decoder = new SubripDecoder();
|
SubripDecoder decoder = new SubripDecoder();
|
||||||
byte[] bytes =
|
byte[] bytes =
|
||||||
TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), TYPICAL_WITH_TAGS);
|
TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), TYPICAL_WITH_TAGS);
|
||||||
|
|
||||||
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
||||||
|
|
||||||
assertThat(subtitle.getCues(subtitle.getEventTime(0)).get(0).text.toString())
|
assertThat(subtitle.getCues(subtitle.getEventTime(0)).get(0).text.toString())
|
||||||
.isEqualTo("This is the first subtitle.");
|
.isEqualTo("This is the first subtitle.");
|
||||||
|
|
||||||
assertThat(subtitle.getCues(subtitle.getEventTime(2)).get(0).text.toString())
|
assertThat(subtitle.getCues(subtitle.getEventTime(2)).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(subtitle.getCues(subtitle.getEventTime(4)).get(0).text.toString())
|
assertThat(subtitle.getCues(subtitle.getEventTime(4)).get(0).text.toString())
|
||||||
.isEqualTo("This is the third subtitle.");
|
.isEqualTo("This is the third subtitle.");
|
||||||
|
|
||||||
assertThat(subtitle.getCues(subtitle.getEventTime(6)).get(0).text.toString())
|
assertThat(subtitle.getCues(subtitle.getEventTime(6)).get(0).text.toString())
|
||||||
.isEqualTo("This { \\an2} is not a valid tag due to the space after the opening bracket.");
|
.isEqualTo("This { \\an2} is not a valid tag due to the space after the opening bracket.");
|
||||||
|
|
||||||
assertThat(subtitle.getCues(subtitle.getEventTime(8)).get(0).text.toString())
|
assertThat(subtitle.getCues(subtitle.getEventTime(8)).get(0).text.toString())
|
||||||
.isEqualTo("This is the fifth subtitle with multiple valid tags.");
|
.isEqualTo("This is the fifth subtitle with multiple valid tags.");
|
||||||
|
|
||||||
assertAlignmentCue(subtitle, 10, Cue.ANCHOR_TYPE_END, Cue.ANCHOR_TYPE_START); // {/an1}
|
assertAlignmentCue(subtitle, 10, Cue.ANCHOR_TYPE_END, Cue.ANCHOR_TYPE_START); // {/an1}
|
||||||
assertAlignmentCue(subtitle, 12, Cue.ANCHOR_TYPE_END, Cue.ANCHOR_TYPE_MIDDLE); // {/an2}
|
assertAlignmentCue(subtitle, 12, Cue.ANCHOR_TYPE_END, Cue.ANCHOR_TYPE_MIDDLE); // {/an2}
|
||||||
assertAlignmentCue(subtitle, 14, Cue.ANCHOR_TYPE_END, Cue.ANCHOR_TYPE_END); // {/an3}
|
assertAlignmentCue(subtitle, 14, Cue.ANCHOR_TYPE_END, Cue.ANCHOR_TYPE_END); // {/an3}
|
||||||
@ -215,6 +221,7 @@ public final class SubripDecoderTest {
|
|||||||
byte[] bytes =
|
byte[] bytes =
|
||||||
TestUtil.getByteArray(
|
TestUtil.getByteArray(
|
||||||
ApplicationProvider.getApplicationContext(), TYPICAL_NO_HOURS_AND_MILLIS);
|
ApplicationProvider.getApplicationContext(), TYPICAL_NO_HOURS_AND_MILLIS);
|
||||||
|
|
||||||
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
Subtitle subtitle = decoder.decode(bytes, bytes.length, false);
|
||||||
|
|
||||||
assertThat(subtitle.getEventTimeCount()).isEqualTo(6);
|
assertThat(subtitle.getEventTimeCount()).isEqualTo(6);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user