mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 19:54:57 +08:00
Fixing unit tests and adjusting mechanics related to events for host layer components
DefaultOrchardHost may now implement eventhandler interfaces directly DefaultOrchardHostEventSink assistant is obsolete for that reason DefaultOrchardEventBus changed to use interface methodinfo rather than class methodinfo OrchardStarter includes EventsModule with root container to allow components to receive event firing proxies Special case added to CompositionStrategy to prevent DefaultOrchardHost from being re-registered when shell container is built EventsModule is internal to prevent it from being re-registered in the same way --HG-- branch : dev
This commit is contained in:
@@ -15,20 +15,19 @@ namespace Orchard.Tests.Modules.Settings.Topology {
|
||||
public override void Register(ContainerBuilder builder) {
|
||||
builder.RegisterType<ShellDescriptorManager>().As<IShellDescriptorManager>();
|
||||
builder.RegisterType<StubEventBus>().As<IEventBus>().SingleInstance();
|
||||
|
||||
builder.RegisterSource(new EventsRegistrationSource());
|
||||
}
|
||||
|
||||
public class StubEventBus : IEventBus {
|
||||
public string LastMessageName { get; set; }
|
||||
public IDictionary<string, string> LastEventData { get; set; }
|
||||
public IDictionary<string, object> LastEventData { get; set; }
|
||||
|
||||
public void Notify_Obsolete(string messageName, IDictionary<string, string> eventData) {
|
||||
LastMessageName = messageName;
|
||||
LastEventData = eventData;
|
||||
}
|
||||
|
||||
public void Notify(string messageName, Dictionary<string, object> eventData) {
|
||||
throw new NotImplementedException();
|
||||
public void Notify(string messageName, Dictionary<string, object> eventData) {
|
||||
LastMessageName = messageName;
|
||||
LastEventData = eventData;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -141,7 +140,7 @@ namespace Orchard.Tests.Modules.Settings.Topology {
|
||||
Enumerable.Empty<ShellFeature>(),
|
||||
Enumerable.Empty<ShellParameter>());
|
||||
|
||||
Assert.That(eventBus.LastMessageName, Is.EqualTo("ShellDescriptor_Changed"));
|
||||
Assert.That(eventBus.LastMessageName, Is.EqualTo("IShellDescriptorManagerEventHandler.Changed"));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user