--HG--
branch : 1.x
This commit is contained in:
Sebastien Ros
2011-03-30 15:25:46 -07:00
4 changed files with 33 additions and 19 deletions

View File

@@ -1,7 +1,7 @@
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="AzureSDK" value="C:\Program Files\Windows Azure SDK\v1.3\"/>
<add key="AzureSDK" value="C:\Program Files\Windows Azure SDK\v1.4\"/>
</appSettings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>

View File

@@ -1,5 +1,4 @@
using System.ComponentModel;
using System.Configuration;
using System.Configuration;
using System.Diagnostics;
using System.IO;
using Microsoft.WindowsAzure;

View File

@@ -10,19 +10,19 @@ namespace Orchard.Azure.Tests.FileSystems.Media {
[TestFixture]
public class AzureBlobStorageProviderTests : AzureVirtualEnvironmentTest {
CloudStorageAccount DevAccount;
CloudStorageAccount _devAccount;
private AzureBlobStorageProvider _azureBlobStorageProvider;
protected override void OnInit() {
CloudStorageAccount.TryParse("UseDevelopmentStorage=true", out DevAccount);
CloudStorageAccount.TryParse("UseDevelopmentStorage=true", out _devAccount);
_azureBlobStorageProvider = new AzureBlobStorageProvider(new ShellSettings { Name = "default" }, DevAccount);
_azureBlobStorageProvider = new AzureBlobStorageProvider(new ShellSettings { Name = "default" }, _devAccount);
}
[SetUp]
public void Setup() {
// ensure default container is empty before running any test
DeleteAllBlobs(_azureBlobStorageProvider.Container.Name, DevAccount);
DeleteAllBlobs(_azureBlobStorageProvider.Container.Name, _devAccount);
}
[Test]
@@ -128,6 +128,23 @@ namespace Orchard.Azure.Tests.FileSystems.Media {
Assert.AreEqual("folder", _azureBlobStorageProvider.ListFolders("folder").First().GetName());
}
[Test]
public void ShouldDeleteFiles() {
_azureBlobStorageProvider.CreateFile("folder/foo1.txt");
_azureBlobStorageProvider.CreateFile("folder/foo2.txt");
_azureBlobStorageProvider.CreateFile("folder/folder/foo1.txt");
_azureBlobStorageProvider.CreateFile("folder/folder/foo2.txt");
Assert.That(_azureBlobStorageProvider.ListFiles("folder").Count(), Is.EqualTo(2));
Assert.That(_azureBlobStorageProvider.ListFiles("folder/folder").Count(), Is.EqualTo(2));
_azureBlobStorageProvider.DeleteFile("folder/foo1.txt");
_azureBlobStorageProvider.DeleteFile("folder/folder/foo2.txt");
Assert.That(_azureBlobStorageProvider.ListFiles("folder").Count(), Is.EqualTo(1));
Assert.That(_azureBlobStorageProvider.ListFiles("folder/folder").Count(), Is.EqualTo(1));
}
[Test]
public void DeleteFolderShouldDeleteFilesAlso() {
_azureBlobStorageProvider.CreateFile("folder/foo1.txt");
@@ -167,17 +184,15 @@ namespace Orchard.Azure.Tests.FileSystems.Media {
[Test]
[ExpectedException(typeof(ArgumentException))]
public void CannotCreateAlreadyExistingFolders()
{
public void CannotCreateAlreadyExistingFolders() {
_azureBlobStorageProvider.CreateFile("folder1/foo.txt");
_azureBlobStorageProvider.CreateFolder("folder1");
}
[Test]
public void CanCreateAlreadyExistingFolder()
{
public void CanCreateAlreadyExistingFolder() {
_azureBlobStorageProvider.CreateFile("folder1/foo.txt");
_azureBlobStorageProvider.TryCreateFolder("folder1");
Assert.That(_azureBlobStorageProvider.TryCreateFolder("folder1"), Is.True);
}
[Test]

View File

@@ -155,15 +155,15 @@ namespace Orchard.Azure {
}
public bool TryCreateFolder(string path) {
EnsurePathIsRelative(path);
using (new HttpContextWeaver()) {
if (Container.DirectoryExists(String.Concat(_root, path))) {
return true;
try {
if (!Container.DirectoryExists(String.Concat(_root, path))) {
CreateFolder(path);
}
CreateFile(Combine(path, FolderEntry));
return true;
}
catch {
return false;
}
return true;
}
public void CreateFolder(string path) {