Example #1
0
        public void Constructor_InitializesCorrectly()
        {
            // Arrange
            HttpContentHeaders headers       = FormattingUtilities.CreateEmptyContentHeaders();
            string             remoteFileURL = "http://some/path/to";
            string             fileName      = "Name";

            // Act
            MultipartRemoteFileData fileData = new MultipartRemoteFileData(headers, remoteFileURL, fileName);

            // Assert
            Assert.Same(headers, fileData.Headers);
            Assert.Same(remoteFileURL, fileData.Location);
            Assert.Same(fileName, fileData.FileName);
        }
        public void Constructor_InitializesCorrectly()
        {
            // Arrange
            HttpContentHeaders headers = FormattingUtilities.CreateEmptyContentHeaders();
            string remoteFileURL = "http://some/path/to";
            string fileName = "Name";

            // Act
            MultipartRemoteFileData fileData = new MultipartRemoteFileData(headers, remoteFileURL, fileName);

            // Assert
            Assert.Same(headers, fileData.Headers);
            Assert.Same(remoteFileURL, fileData.Location);
            Assert.Same(fileName, fileData.FileName);
        }
        public void GetStream()
        {
            // Arrange
            Stream stream0 = null;
            Stream stream1 = null;

            try
            {
                MultipartFormDataContent content = new MultipartFormDataContent();
                content.Add(new StringContent("Content 1"), "NoFile");
                content.Add(new StringContent("Content 2"), "File", "Filename");

                CustomMultipartFormDataRemoteStreamProvider provider =
                    new CustomMultipartFormDataRemoteStreamProvider();

                // Act
                stream0 = provider.GetStream(content, content.ElementAt(0).Headers);
                stream1 = provider.GetStream(content, content.ElementAt(1).Headers);

                // Assert
                Assert.IsType <MemoryStream>(stream0);
                Assert.Single(provider.RemoteStreams, stream1);

                MultipartRemoteFileData fileData = Assert.Single(provider.FileData);
                string expectedUrl = provider.UrlBase + "Filename";
                Assert.Equal(expectedUrl, fileData.Location);

                Assert.Same(
                    content.ElementAt(1).Headers.ContentDisposition,
                    fileData.Headers.ContentDisposition
                    );
            }
            finally
            {
                if (stream0 != null)
                {
                    stream0.Close();
                }

                if (stream1 != null)
                {
                    stream1.Close();
                }
            }
        }