public void ShouldAddBehaviourToDescription() { var container = new MiniCoreContainer(); var host = new MiniCoreServiceHost(container, typeof(MockService), new[] { new Uri("net.tcp://mock") }); host.Open(); host.Close(); Assert.IsTrue(host.Description.Behaviors.Any(a => a.GetType() == typeof(MiniCoreInstanceProviderBehaviour))); }
public void ShouldProvideInstance() { var container = new MiniCoreContainer(); var instance = new MockPoco(); container.Register(instance); var provider = new MiniCoreInstanceProvider(container); var context = new InstanceContext(new MockServiceHost(typeof(MockPoco))); var actual = provider.GetInstance(context); Assert.AreSame(instance, actual); }
public void ShouldApplyBehaviour() { var host = new MockServiceHost(typeof(MockPoco)); var dispatcher = new MockChannelDispatcher(); dispatcher.Endpoints.Add(new EndpointDispatcher(new EndpointAddress("net.tcp://mock"), "", "")); host.ChannelDispatchers.Add(dispatcher); var container = new MiniCoreContainer(); var behaviour = new MiniCoreInstanceProviderBehaviour(new MiniCoreInstanceProvider(container)); behaviour.ApplyDispatchBehavior(new ServiceDescription(), host); var endpoints = new List <EndpointDispatcher>(); foreach (var channelDispatcher in host.ChannelDispatchers) { endpoints.AddRange((channelDispatcher as MockChannelDispatcher).Endpoints); } CollectionAssert.AllItemsAreInstancesOfType(endpoints.Select(s => s.DispatchRuntime.InstanceProvider).ToList(), typeof(MiniCoreInstanceProvider)); }
public void TestInitialize() { container = new MiniCoreContainer(); }