public async Task CannotGetStorageFolderWithEmptyContainerName() { var client = new StorageServicePocoClientFactory().Create(GetValidContext(), this.ServiceLocator) as StorageServicePocoClient; await client.GetStorageFolder(string.Empty, "a/b/c/"); }
public async Task CannotGetStorageFolderWithNullFolderName() { var client = new StorageServicePocoClientFactory().Create(GetValidContext(), this.ServiceLocator) as StorageServicePocoClient; await client.GetStorageFolder("container", null); }
public async Task CanGetStorageFolderWithOkResponseAndSubFolders() { var containerName = "TestContainer"; var folderName = "a/b/c/"; var headers = new HttpHeadersAbstraction() { {"X-Container-Bytes-Used", "1234"}, {"X-Container-Object-Count", "1"} }; var payload = @"[ { ""hash"": ""d41d8cd98f00b204e9800998ecf8427e"", ""last_modified"": ""2014-03-07T21:31:31.588170"", ""bytes"": 0, ""name"": ""a/b/c/"", ""content_type"": ""application/octet-stream"" }, { ""hash"": ""d41d8cd98f00b204e9800998ecf8427e"", ""last_modified"": ""2014-03-07T21:31:31.588170"", ""bytes"": 0, ""name"": ""a/b/c/BLAH"", ""content_type"": ""application/octet-stream"" }, { ""subdir"": ""a/b/c/d/"" }, { ""subdir"": ""a/b/c/x/"" } ]"; var content = TestHelper.CreateStream(payload); var restResp = new HttpResponseAbstraction(content, headers, HttpStatusCode.OK); this.StorageServiceRestClient.Responses.Enqueue(restResp); var client = new StorageServicePocoClientFactory().Create(GetValidContext(), this.ServiceLocator) as StorageServicePocoClient; var resp = await client.GetStorageFolder(containerName, folderName); Assert.AreEqual("c", resp.Name); Assert.AreEqual("a/b/c/", resp.FullName); Assert.AreEqual(1, resp.Objects.Count); Assert.AreEqual(2, resp.Folders.Count); var obj = resp.Objects.First(); Assert.AreEqual("a/b/c/BLAH", obj.FullName); var dNode = resp.Folders.First(f => f.FullName == "a/b/c/d/"); var xNode = resp.Folders.First(f => f.FullName == "a/b/c/x/"); Assert.AreEqual("d", dNode.Name); Assert.AreEqual(0, dNode.Folders.Count); Assert.AreEqual(0, dNode.Objects.Count); Assert.AreEqual("x", xNode.Name); Assert.AreEqual(0, xNode.Folders.Count); Assert.AreEqual(0, xNode.Objects.Count); }
public async Task ExceptionthrownWhenGettingAStorageFolderThatDoesNotExistAndCannotBeInferred() { var containerName = "TestContainer"; var folderName = "a/b/c/"; var headers = new HttpHeadersAbstraction() { {"X-Container-Bytes-Used", "1234"}, {"X-Container-Object-Count", "1"} }; var payload = @"[]"; var content = TestHelper.CreateStream(payload); var restResp = new HttpResponseAbstraction(content, headers, HttpStatusCode.OK); this.StorageServiceRestClient.Responses.Enqueue(restResp); var client = new StorageServicePocoClientFactory().Create(GetValidContext(), this.ServiceLocator) as StorageServicePocoClient; var resp = await client.GetStorageFolder(containerName, folderName); }
public async Task CanGetStorageFolderWithNoContentResponse() { var containerName = "TestContainer"; var folderName = "a/b/c/"; var headers = new HttpHeadersAbstraction() { {"X-Container-Bytes-Used", "1234"}, {"X-Container-Object-Count", "1"} }; var restResp = new HttpResponseAbstraction(new MemoryStream(), headers, HttpStatusCode.NoContent); this.StorageServiceRestClient.Responses.Enqueue(restResp); var client = new StorageServicePocoClientFactory().Create(GetValidContext(), this.ServiceLocator) as StorageServicePocoClient; var result = await client.GetStorageFolder(containerName, folderName); Assert.IsNotNull(result); Assert.AreEqual("a/b/c/", result.FullName); Assert.AreEqual("c", result.Name); Assert.IsNotNull(result.Objects); Assert.AreEqual(0, result.Objects.Count()); Assert.IsNotNull(result.Folders); Assert.AreEqual(0, result.Folders.Count()); }