Beispiel #1
0
        public void Writing_Last_Buffered_Block_Should_Complete_Transfer()
        {
            using (var fs = SourceFile.OpenRead())
            {
                fs.WriteTo(Token, SourceFile.Length, 2048, b =>
                {
                    b.IsLastBlock = false;
                    Uploads.WriteBlockStreamed(b);
                });
            }

            Assert.AreEqual(TransferStatus.Running, Uploads.GetTransferStatus(Token.TransferId));

            //write an empty last block
            BufferedDataBlock db = new BufferedDataBlock
            {
                TransferTokenId = Token.TransferId,
                BlockLength     = 0,
                Offset          = SourceFile.Length,
                Data            = new byte[0],
                BlockNumber     = 0,
                IsLastBlock     = true
            };

            Uploads.WriteBlock(db);

            CompareUploadToSourceFile();

            TransferStatus status = Uploads.GetTransferStatus(Token.TransferId);

            Assert.IsTrue(status.Is(TransferStatus.Completed, TransferStatus.UnknownTransfer));
        }
Beispiel #2
0
        public void Writing_Last_Streamed_Block_Should_Complete_Transfer()
        {
            //use a source strem
            using (var fs = SourceFile.OpenRead())
            {
                fs.WriteTo(Token, SourceFile.Length, 10000, b => Uploads.WriteBlockStreamed(b));
            }

            TransferStatus status = Uploads.GetTransferStatus(Token.TransferId);

            Assert.IsTrue(status.Is(TransferStatus.Completed, TransferStatus.UnknownTransfer));
        }