예제 #1
0
        public void GetFileLength2()
        {
            var locationManager = new FtpManagerTest ();
            var request = locationManager.CreateRequest (new Uri ("ftp://127.0.0.1/masseffect3.pdf"),
                                                        WebRequestMethods.Ftp.GetFileSize,
                                                        new Credentials { Username = "******", Password = null });
            var response = request.GetResponse ();
            var fileLength = response.ContentLength;

            Assert.AreEqual (129781, fileLength, "File length shall be 129 781 bytes.");
        }
예제 #2
0
        public void GetFileDownload()
        {
            _mre = new ManualResetEventSlim (false);
            var location = new FtpLocation
                               {
                                   ItemUri = new Uri("ftp://127.0.0.1/masseffect3.pdf"),
                               };
            var locationManager = new FtpManagerTest ();
            int bytesRead = 0;
            using (var sw = new BinaryWriter(File.Create(@"c:\test.pdf"))) {
                locationManager.BeginRetreive (location, buffer =>
                {
                    Debug.Assert (sw != null, "sw != null");
                    sw.Write (buffer);
                    bytesRead += buffer.Length;
                }, () => _mre.Set ());
                _mre.Wait ();
                sw.Flush ();
                sw.Close ();

            }
            Assert.AreEqual (129781, bytesRead);
        }