mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 19:54:57 +08:00
Merge
--HG-- branch : 1.x
This commit is contained in:
@@ -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"/>
|
||||
|
@@ -1,5 +1,4 @@
|
||||
using System.ComponentModel;
|
||||
using System.Configuration;
|
||||
using System.Configuration;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using Microsoft.WindowsAzure;
|
||||
|
@@ -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]
|
||||
|
@@ -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) {
|
||||
|
Reference in New Issue
Block a user