Removed WindsorServiceHost and pushed responsibility into the ServiceHostBuilder...
[castle.git] / Facilities / Wcf / Castle.Facilities.WcfIntegration.Tests / ServiceHostFactoryFixture.cs
blob88e81e5d2f19a2464c27366d4c99aae425dabee7
1 // Copyright 2004-2008 Castle Project - http://www.castleproject.org/
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
15 namespace Castle.Facilities.WcfIntegration.Tests
17 using System;
18 using System.ServiceModel;
19 using Castle.Windsor;
20 using Castle.Facilities.WcfIntegration.Demo;
21 using NUnit.Framework;
23 [TestFixture]
24 public class ServiceHostFactoryFixture
26 [Test]
27 public void CanCreateServiceByName()
29 IWindsorContainer windsorContainer = new WindsorContainer()
30 .AddComponent("operations", typeof(IOperations), typeof(Operations))
31 .AddComponent<IServiceHostBuilder<WcfServiceModel>, DefaultServiceHostBuilder>();
33 WindsorServiceHostFactory factory = new WindsorServiceHostFactory(windsorContainer.Kernel);
34 ServiceHostBase serviceHost = factory.CreateServiceHost("operations",
35 new Uri[] {new Uri("http://localhost/Foo.svc")});
36 Assert.IsNotNull(serviceHost);
39 [Test]
40 public void CanCreateWindsorHostFactory()
42 WindsorServiceHostFactory factory = new WindsorServiceHostFactory(new WindsorContainer().Kernel);
43 Assert.IsNotNull(factory);
46 [Test, Ignore("This test requires the Castle.Facilities.WcfIntegration.Demo running")]
47 public void CanCallHostedService()
49 IAmUsingWindsor client = ChannelFactory<IAmUsingWindsor>.CreateChannel(
50 new BasicHttpBinding(), new EndpointAddress("http://localhost:27197/UsingWindsorWithoutConfig.svc"));
51 Assert.AreEqual(42, client.GetValueFromWindsorConfig());