public void CanBuildRequestUriForCustomResourceWithIdentifierAndFileName()
        {
            var testee = new BlobstoreUriBuilder(BaseUri, "CustomResource");

            var requestUri = testee.BuildRequestUri(Identifier, FileName);

            requestUri.Should().Be(string.Format("api/CustomResource/{0}/{1}", Identifier, FileName));
        }
        public void CanBuildRequestUriForDefaultResourceWithIdentifier()
        {
            var testee = new BlobstoreUriBuilder(BaseUri);

            var requestUri = testee.BuildRequestUri(Identifier);
            
            requestUri.Should().Be(string.Format("api/blobstore/{0}", Identifier));
        }
        public void CanCreateInstance()
        {
            var uriBuilder = new BlobstoreUriBuilder("http://localhost:8080");
            var fileList = new[] { "Foo.pdf", "Bar.pdf" };

            var testee = new BlobstoreFileList(uriBuilder, "110024d6-de1b-4bd9-88e5-343f55c2e0e9", fileList);

            testee.Files.Should().Contain(f => f.Identifier == "110024d6-de1b-4bd9-88e5-343f55c2e0e9" && f.FileName == "Foo.pdf");
            testee.Files.Should().Contain(f => f.Identifier == "110024d6-de1b-4bd9-88e5-343f55c2e0e9" && f.FileName == "Bar.pdf");
        }
        public void CanCreateInstance()
        {
            var uriBuilder = new BlobstoreUriBuilder("http://localhost:8080");
            var testee = new BlobstoreFile(uriBuilder, "110024d6-de1b-4bd9-88e5-343f55c2e0e9", "Foo.pdf");

            testee.Uri.Should().Be("api/blobstore/110024d6-de1b-4bd9-88e5-343f55c2e0e9/Foo.pdf");
            testee.Identifier.Should().Be("110024d6-de1b-4bd9-88e5-343f55c2e0e9");
            testee.FileName.Should().Be("Foo.pdf");

            testee.ToString().Should().Be("Foo.pdf");
        }
        /// <summary>
        /// Creates a new instance of <see cref="BlobstoreHttpAdapter"/>
        /// </summary>
        /// <param name="credentials">The BlobStore credentials</param>
        /// <param name="uriBuilder">The BlobStore URI builder</param>
        /// <param name="identifier">The identifier</param>
        /// <param name="fileName">The file name</param>
        public BlobstoreHttpAdapter(
            BlobstoreCredentials credentials,
            BlobstoreUriBuilder uriBuilder,
            string identifier,
            string fileName)
        {
            this.credentials = credentials;
            this.uriBuilder = uriBuilder;
            this.identifier = identifier;
            this.fileName = fileName;

            this.lazyHttpClient = new Lazy<HttpClient>(this.CreateHttpClient);
        }
 /// <summary>
 /// Creates a new instance of <see cref="BlobstoreHttpAdapter"/>
 /// </summary>
 /// <param name="credentials">The BlobStore credentials</param>
 /// <param name="uriBuilder">The BlobStore URI builder</param>
 /// <param name="identifier">The identifier</param>
 public BlobstoreHttpAdapter(
     BlobstoreCredentials credentials,
     BlobstoreUriBuilder uriBuilder,
     string identifier) : this(credentials, uriBuilder, identifier, string.Empty)
 {
 }
 /// <inheritdoc />
 public IBlobstoreClient Create(BlobstoreUriBuilder uriBuilder)
 {
     return NewBlobstoreClientInstance(
         new BlobstoreHttpAdapterFactory(this.credentials, uriBuilder));
 }
 /// <summary>
 /// Creates a new instance of <see cref="BlobstoreFileList"/>
 /// </summary>
 /// <param name="uriBuilder">The BlobStore URI builder</param>
 /// <param name="identifier">The identifier</param>
 /// <param name="fileList">file names as list of strings</param>
 public BlobstoreFileList(BlobstoreUriBuilder uriBuilder, string identifier, IEnumerable<string> fileList)
 {
     this.Files = fileList.Select(file => new BlobstoreFile(uriBuilder, identifier, file));
 }
        public void ReturnsValidTokenUri()
        {
            var testee = new BlobstoreUriBuilder(BaseUri);

            testee.TokenUri.Should().Be(new Uri(string.Format("{0}/token", BaseUri)));
        }
        public void BaseAddressIsUriOfGivenBaseUri()
        {
            var testee = new BlobstoreUriBuilder(BaseUri);

            testee.BaseAddress.Should().Be(new Uri(BaseUri));
        }
 public BlobstoreHttpAdapterFactoryTest()
 {
     this.credentials = new BlobstoreCredentials("Admin", "ChangIt");
     this.uriBuilder = new BlobstoreUriBuilder("http://localhost:8080");
     this.testee = new BlobstoreHttpAdapterFactory(this.credentials, this.uriBuilder);
 }