Removing obsolete method

--HG--
branch : dev
This commit is contained in:
Renaud Paquay
2010-06-11 21:20:13 -07:00
parent 75efa67b61
commit 9b9efe02a2
5 changed files with 32 additions and 81 deletions

View File

@@ -94,15 +94,6 @@ namespace Orchard.Tests.Environment {
yield return ext;
}
public IEnumerable<ExtensionEntry> ActiveExtensions_Obsolete() {
var feature = FrameworkFeature(new FeatureDescriptor { Name = "Orchard.Framework" });
yield return new ExtensionEntry {
Assembly = feature.ExportedTypes.First().Assembly,
Descriptor = AvailableExtensions().First(),
ExportedTypes = feature.ExportedTypes
};
}
public IEnumerable<Feature> LoadFeatures(IEnumerable<FeatureDescriptor> featureDescriptors) {
foreach (var descriptor in featureDescriptors) {
if (descriptor.Name == "Orchard.Framework") {

View File

@@ -8,7 +8,6 @@ using Orchard.Environment.Extensions.Folders;
using Orchard.Environment.Extensions.Loaders;
using Orchard.Environment.Extensions.Models;
using Orchard.Tests.Extensions.ExtensionTypes;
using Yaml.Grammar;
namespace Orchard.Tests.Environment.Extensions {
[TestFixture]
@@ -35,7 +34,7 @@ namespace Orchard.Tests.Environment.Extensions {
public IDictionary<string, string> Manifests { get; set; }
public IEnumerable<ExtensionDescriptor> AvailableExtensions() {
foreach(var e in Manifests) {
foreach (var e in Manifests) {
string name = e.Key;
var parseResult = ExtensionFolders.ParseManifest(Manifests[name]);
yield return ExtensionFolders.GetDescriptorForExtension("~/", name, "Module", parseResult);
@@ -250,27 +249,35 @@ features:
[Test]
public void ExtensionManagerShouldThrowIfFeatureDoesNotExist() {
var featureDescriptor = new FeatureDescriptor { Name = "NoSuchFeature" };
Assert.Throws<ArgumentException>(() => _manager.LoadFeatures(new [] { featureDescriptor }));
Assert.Throws<ArgumentException>(() => _manager.LoadFeatures(new[] { featureDescriptor }));
}
[Test]
public void ExtensionManagerTestFeatureAttribute() {
var extensionManager = new Moq.Mock<IExtensionManager>();
var extensionEntry = new ExtensionEntry {
Descriptor = new ExtensionDescriptor { Name = "Module"},
ExportedTypes = new[] { typeof(Alpha), typeof(Beta), typeof(Phi) }
};
extensionEntry.Descriptor.Features = new[] {
new FeatureDescriptor
{Name = "Module", Extension = extensionEntry.Descriptor},
new FeatureDescriptor
{Name = "TestFeature", Extension = extensionEntry.Descriptor}
};
extensionManager.Setup(x => x.ActiveExtensions_Obsolete()).Returns(new[] {extensionEntry});
var extensionLoader = new StubLoaders();
var extensionFolder = new StubFolders();
foreach (var type in extensionManager.Object.ActiveExtensions_Obsolete().SelectMany(x => x.ExportedTypes)) {
foreach (OrchardFeatureAttribute featureAttribute in type.GetCustomAttributes(typeof(OrchardFeatureAttribute), false)) {
Assert.That(featureAttribute.FeatureName, Is.EqualTo("TestFeature"));
extensionFolder.Manifests.Add("TestModule", @"
name: TestModule
version: 1.0.3
orchardversion: 1
features:
TestModule:
Description: My test module for Orchard.
TestFeature:
Description: Contains the Phi type.
");
IExtensionManager extensionManager = new ExtensionManager(new[] { extensionFolder }, new[] { extensionLoader });
var testFeature = extensionManager.AvailableExtensions()
.SelectMany(x => x.Features)
.Single(x => x.Name == "TestFeature");
foreach (var feature in extensionManager.LoadFeatures(new[] { testFeature })) {
foreach (var type in feature.ExportedTypes) {
foreach (OrchardFeatureAttribute featureAttribute in type.GetCustomAttributes(typeof(OrchardFeatureAttribute), false)) {
Assert.That(featureAttribute.FeatureName, Is.EqualTo("TestFeature"));
}
}
}
}
@@ -324,7 +331,7 @@ features:
.SelectMany(x => x.Features)
.Single(x => x.Name == "TestModule");
foreach (var feature in extensionManager.LoadFeatures(new [] { testModule })) {
foreach (var feature in extensionManager.LoadFeatures(new[] { testModule })) {
foreach (var type in feature.ExportedTypes) {
Assert.That(type != typeof(Phi));
Assert.That((type == typeof(Alpha) || (type == typeof(Beta))));

View File

@@ -1,10 +1,7 @@
using System;
using System.Collections.Generic;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Routing;
using NUnit.Framework;
using Orchard.Environment.Extensions;
using Orchard.Environment.Extensions.Models;
using Orchard.Environment.Topology.Models;
using Orchard.Mvc.Routes;
@@ -58,38 +55,5 @@ namespace Orchard.Tests.Mvc.Routes {
Assert.That(barAdmin.DataTokens["area"], Is.EqualTo("Long.Name.Bar"));
Assert.That(barRoute.DataTokens["area"], Is.EqualTo("Long.Name.Bar"));
}
public class StubExtensionManager : IExtensionManager {
public IEnumerable<ExtensionDescriptor> AvailableExtensions() {
throw new NotImplementedException();
}
public IEnumerable<Feature> LoadFeatures(IEnumerable<FeatureDescriptor> features) {
throw new NotImplementedException();
}
public IEnumerable<ExtensionEntry> ActiveExtensions_Obsolete() {
yield return new ExtensionEntry {
Descriptor = new ExtensionDescriptor {
Name = "Long.Name.Foo",
DisplayName = "Foo",
}
};
yield return new ExtensionEntry {
Descriptor = new ExtensionDescriptor {
Name = "Long.Name.Bar",
DisplayName = "Bar",
}
};
}
public void InstallExtension(string extensionType, HttpPostedFileBase extensionBundle) {
throw new NotImplementedException();
}
public void UninstallExtension(string extensionType, string extensionName) {
throw new NotImplementedException();
}
}
}
}

View File

@@ -2,6 +2,7 @@
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web;
using ICSharpCode.SharpZipLib.Zip;
using Orchard.Environment.Extensions.Folders;
using Orchard.Environment.Extensions.Helpers;
@@ -9,13 +10,11 @@ using Orchard.Environment.Extensions.Loaders;
using Orchard.Environment.Extensions.Models;
using Orchard.Localization;
using Orchard.Logging;
using System.Web;
namespace Orchard.Environment.Extensions {
public class ExtensionManager : IExtensionManager {
private readonly IEnumerable<IExtensionFolders> _folders;
private readonly IEnumerable<IExtensionLoader> _loaders;
private IEnumerable<ExtensionEntry> _activeExtensions;
public Localizer T { get; set; }
public ILogger Logger { get; set; }
@@ -30,7 +29,7 @@ namespace Orchard.Environment.Extensions {
// This method does not load extension types, simply parses extension manifests from
// the filesystem.
public IEnumerable<ExtensionDescriptor> AvailableExtensions() {
return _folders.SelectMany(folder=>folder.AvailableExtensions());
return _folders.SelectMany(folder => folder.AvailableExtensions());
}
public IEnumerable<Feature> LoadFeatures(IEnumerable<FeatureDescriptor> featureDescriptors) {
@@ -39,14 +38,6 @@ namespace Orchard.Environment.Extensions {
.ToArray();
}
// This method loads types from extensions into the ExtensionEntry array.
public IEnumerable<ExtensionEntry> ActiveExtensions_Obsolete() {
if (_activeExtensions == null) {
_activeExtensions = BuildActiveExtensions().ToList();
}
return _activeExtensions;
}
private Feature LoadFeature(FeatureDescriptor featureDescriptor) {
var featureName = featureDescriptor.Name;
string extensionName = GetExtensionForFeature(featureName);
@@ -165,14 +156,15 @@ namespace Orchard.Environment.Extensions {
var moreRecentEntry = loaders
.Select(loader => loader.Probe(descriptor))
.Where(entry => entry != null)
.OrderByDescending( entry => entry.LastModificationTimeUtc)
.OrderByDescending(entry => entry.LastModificationTimeUtc)
.FirstOrDefault();
ExtensionEntry result = null;
foreach (var loader in loaders) {
ExtensionEntry entry = loader.Load(moreRecentEntry);
if (entry != null && result == null)
if (entry != null && result == null) {
result = entry;
}
}
return result;
}

View File

@@ -8,8 +8,5 @@ namespace Orchard.Environment.Extensions {
IEnumerable<Feature> LoadFeatures(IEnumerable<FeatureDescriptor> featureDescriptors);
void InstallExtension(string extensionType, HttpPostedFileBase extensionBundle);
void UninstallExtension(string extensionType, string extensionName);
// Used by the HackInstallationGenerator and will be removed along with it.
IEnumerable<ExtensionEntry> ActiveExtensions_Obsolete();
}
}