Exemplo n.º 1
0
        private void OfflineScrapeTest()
        {
            var udpTracker = (UdpTracker)TrackerFactory.Create(new Uri("udp://127.0.0.1:57532/announce"));

            udpTracker.RetryDelay = TimeSpan.FromMilliseconds(500);
            var id = new TrackerConnectionID(udpTracker, false, TorrentEvent.Started, new ManualResetEvent(false));

            ScrapeResponseEventArgs p = null;

            udpTracker.ScrapeComplete += (o, e) =>
            {
                if (e.Successful)
                {
                    Console.ReadLine();
                }
                p = e;
                id.WaitHandle.Set();
            };
            var pars = new ScrapeParameters(new InfoHash(new byte[20]));

            udpTracker.Scrape(pars, id);
            Wait(id.WaitHandle);
            Assert.IsNotNull(p, "#1");
            Assert.IsFalse(p.Successful);
        }
Exemplo n.º 2
0
        void OfflineScrapeTest()
        {
            UdpTracker t = (UdpTracker)TrackerFactory.Create(new Uri("udp://127.0.0.1:57532/announce"));

            t.RetryDelay = TimeSpan.FromMilliseconds(500);
            TrackerConnectionID id = new TrackerConnectionID(t, false, TorrentEvent.Started, new ManualResetEvent(false));

            ScrapeResponseEventArgs p = null;

            t.ScrapeComplete += delegate(object o, ScrapeResponseEventArgs e)
            {
                if (e.Successful)
                {
                    Console.ReadLine();
                }
                p = e;
                id.WaitHandle.Set();
            };
            System.Net.BitTorrent.Client.Tracker.ScrapeParameters pars = new ScrapeParameters(new InfoHash(new byte[20]));

            t.Scrape(pars, id);
            Wait(id.WaitHandle);
            Assert.IsNotNull(p, "#1");
            Assert.IsFalse(p.Successful);
        }
Exemplo n.º 3
0
        public void ScrapeTest()
        {
            var udpTracker = (UdpTracker)TrackerFactory.Create(new Uri(Prefix));

            Assert.IsTrue(udpTracker.CanScrape, "#1");

            var id = new TrackerConnectionID(udpTracker, false, TorrentEvent.Started, new ManualResetEvent(false));

            ScrapeResponseEventArgs p = null;

            udpTracker.ScrapeComplete += delegate(object o, ScrapeResponseEventArgs e)
            {
                p = e;
                id.WaitHandle.Set();
            };
            var pars = new ScrapeParameters(new InfoHash(new byte[20]));

            udpTracker.Scrape(pars, id);
            Wait(id.WaitHandle);
            Assert.IsNotNull(p, "#2");
            Assert.IsTrue(p.Successful, "#3");
            Assert.AreEqual(0, udpTracker.Complete, "#1");
            Assert.AreEqual(0, udpTracker.Incomplete, "#2");
            Assert.AreEqual(0, udpTracker.Downloaded, "#3");
        }
Exemplo n.º 4
0
        public void ScrapeTest()
        {
            UdpTracker t = (UdpTracker)TrackerFactory.Create(new Uri(prefix));

            Assert.IsTrue(t.CanScrape, "#1");
            TrackerConnectionID id = new TrackerConnectionID(t, false, TorrentEvent.Started, new ManualResetEvent(false));

            ScrapeResponseEventArgs p = null;

            t.ScrapeComplete += delegate(object o, ScrapeResponseEventArgs e)
            {
                p = e;
                id.WaitHandle.Set();
            };
            MonoTorrent.Client.Tracker.ScrapeParameters pars = new ScrapeParameters(new InfoHash(new byte[20]));

            t.Scrape(pars, id);
            Wait(id.WaitHandle);
            Assert.IsNotNull(p, "#2");

            //TODO: search and fix SocketException
            //Assert.IsTrue(p.Successful, "#3");
            Assert.AreEqual(0, t.Complete, "#1");
            Assert.AreEqual(0, t.Incomplete, "#2");
            Assert.AreEqual(0, t.Downloaded, "#3");
        }
Exemplo n.º 5
0
 public void DataLoadedHandler(object sender, ScrapeResponseEventArgs e)
 {
     if (_guiDispatcher != null)
     {
         Action action = () => updateOnDataLoaded(e.response);
         _guiDispatcher.BeginInvoke(action);
     }
 }
Exemplo n.º 6
0
 private void OnScrapeComplete(object sender, ScrapeResponseEventArgs e)
 {
     e.Id.WaitHandle.Set();
 }
Exemplo n.º 7
0
 protected virtual void RaiseScrapeComplete(ScrapeResponseEventArgs e)
 {
     EventHandler<ScrapeResponseEventArgs> h = ScrapeComplete;
     if (h != null)
         h(this, e);
 }
Exemplo n.º 8
0
 protected virtual void RaiseScrapeComplete(ScrapeResponseEventArgs e)
 {
     var h = ScrapeComplete;
     h?.Invoke(this, e);
 }
Exemplo n.º 9
0
 private void DoScrapeComplete(bool successful, object state)
 {
     var e = new ScrapeResponseEventArgs(this, state, successful);
     RaiseScrapeComplete(e);
 }
Exemplo n.º 10
0
        protected virtual void RaiseScrapeComplete(ScrapeResponseEventArgs e)
        {
            var h = ScrapeComplete;

            h?.Invoke(this, e);
        }
Exemplo n.º 11
0
        private void DoScrapeComplete(bool successful, object state)
        {
            var e = new ScrapeResponseEventArgs(this, state, successful);

            RaiseScrapeComplete(e);
        }