mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 19:54:57 +08:00
Fixing OrchardHost unit tests
This commit is contained in:
@@ -95,6 +95,10 @@ namespace Orchard.Tests.Environment {
|
||||
var ext = new ExtensionDescriptor { Id = "Orchard.Framework" };
|
||||
ext.Features = new[] { new FeatureDescriptor { Extension = ext, Id = ext.Id } };
|
||||
yield return ext;
|
||||
|
||||
var settings = new ExtensionDescriptor { Id = "Settings" };
|
||||
settings.Features = new[] { new FeatureDescriptor { Extension = settings, Id = settings.Id } };
|
||||
yield return settings;
|
||||
}
|
||||
|
||||
public IEnumerable<FeatureDescriptor> AvailableFeatures() {
|
||||
@@ -177,6 +181,7 @@ namespace Orchard.Tests.Environment {
|
||||
Assert.That(again2a, Is.SameAs(dep2a));
|
||||
Assert.That(again2b, Is.SameAs(dep2b));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void SingletonDependenciesShouldBeUniquePerShell() {
|
||||
var host = _lifetime.Resolve<IOrchardHost>();
|
||||
@@ -200,6 +205,7 @@ namespace Orchard.Tests.Environment {
|
||||
Assert.That(dep2, Is.SameAs(dep2a));
|
||||
Assert.That(dep2, Is.SameAs(dep2b));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TransientDependenciesShouldBeUniquePerResolve() {
|
||||
var host = _lifetime.Resolve<IOrchardHost>();
|
||||
|
@@ -34,7 +34,11 @@ namespace Orchard.Environment.ShellBuilders {
|
||||
|
||||
var builtinFeatures = BuiltinFeatures().ToList();
|
||||
var builtinFeatureDescriptors = builtinFeatures.Select(x => x.Descriptor).ToList();
|
||||
var availableFeatures = _extensionManager.AvailableFeatures().Concat(builtinFeatureDescriptors).ToDictionary(x => x.Id, StringComparer.OrdinalIgnoreCase);
|
||||
var availableFeatures = _extensionManager.AvailableFeatures()
|
||||
.Concat(builtinFeatureDescriptors)
|
||||
.GroupBy(x => x.Id.ToLowerInvariant()) // prevent duplicates
|
||||
.Select(x => x.FirstOrDefault())
|
||||
.ToDictionary(x => x.Id, StringComparer.OrdinalIgnoreCase);
|
||||
var enabledFeatures = _extensionManager.EnabledFeatures(descriptor).Select(x => x.Id).ToList();
|
||||
var expandedFeatures = ExpandDependencies(availableFeatures, descriptor.Features.Select(x => x.Name)).ToList();
|
||||
var autoEnabledDependencyFeatures = expandedFeatures.Except(enabledFeatures).Except(builtinFeatureDescriptors.Select(x => x.Id)).ToList();
|
||||
|
Reference in New Issue
Block a user