Ejemplo n.º 1
0
 public void Setup()
 {
     id.BitField.SetAll(true);
     tester = new TestPicker();
     picker = new PriorityPicker(tester);
     picker.Initialise(rig.Manager.Bitfield, rig.Torrent.Files, new List <Piece>());
     foreach (TorrentFile file in rig.Torrent.Files)
     {
         file.Priority = Priority.Normal;
     }
 }
        public void Initialise(ITorrentData torrentData, IReadOnlyList <BitField> ignoringBitfields)
        {
            TorrentData = torrentData;

            var standardPicker = new StandardPicker();

            HighPriorityPicker = IgnoringPicker.Wrap(new PriorityPicker(standardPicker), ignoringBitfields);

            LowPriorityPicker = new RandomisedPicker(standardPicker);
            LowPriorityPicker = new RarestFirstPicker(LowPriorityPicker);
            LowPriorityPicker = new PriorityPicker(LowPriorityPicker);
            LowPriorityPicker = IgnoringPicker.Wrap(LowPriorityPicker, ignoringBitfields);

            LowPriorityPicker.Initialise(torrentData);
            HighPriorityPicker.Initialise(torrentData);
        }
Ejemplo n.º 3
0
        public void MultiFile()
        {
            picker.Initialise(multiFile);

            picker.PickPiece(multiPeer, multiBitfield, peers, 1, 0, multiBitfield.Length - 1);
            Assert.AreEqual(1, checker.Picks.Count, "#1");
            Assert.IsTrue(checker.Picks[0].available.AllTrue, "#2");
            Assert.IsTrue(picker.IsInteresting(multiPeer, multiBitfield), "#3");
        }
        public void MultiFile()
        {
            picker.Initialise(multiBitfield, multiFile, Enumerable.Empty <Piece> ());

            picker.PickPiece(multiPeer, multiBitfield, peers);
            Assert.AreEqual(1, tester.PickPieceBitfield.Count, "#1");
            Assert.IsTrue(tester.PickPieceBitfield[0].AllTrue, "#2");
            Assert.IsTrue(picker.IsInteresting(multiBitfield), "#3");
        }