diff --git a/src/test/java/com/mykola2312/retracker/bencode/BTreeTest.java b/src/test/java/com/mykola2312/retracker/bencode/BTreeTest.java index f63333b..d5677f7 100644 --- a/src/test/java/com/mykola2312/retracker/bencode/BTreeTest.java +++ b/src/test/java/com/mykola2312/retracker/bencode/BTreeTest.java @@ -164,6 +164,10 @@ public class BTreeTest { tree.setRoot(new BString("test")); assertArrayEquals("4:test".getBytes(), tree.encode()); + + tree.setRoot(new BDict()) + .set(new BInteger(1), new BInteger(2)); + assertArrayEquals("di1ei2ee".getBytes(), tree.encode()); }); } @@ -190,4 +194,16 @@ public class BTreeTest { assertEquals(new BInteger(16777216), pieceLength); }); } + + @Test + public void testDecodeEncodeTorrentFile() throws BError, IOException { + final byte[] data = Files.readAllBytes(Path.of("test", "test.torrent")); + + BTree torrent = new BTree(); + assertDoesNotThrow(() -> { + torrent.decode(data); + + assertArrayEquals(data, torrent.encode()); + }); + } }