public void TypedCreateServiceWorksAsExpected()
        {
            // --- Arrange
            var factory = new EmptyContextServiceFactory(ServiceManager.ServiceRegistry);

            // --- Act
            var service = factory.CreateService <IDummy2>();

            // --- Assert
            service.ShouldNotBeNull();
        }
        public void CreateServiceRetrievesNullForUnknownService()
        {
            // --- Arrange
            var factory = new EmptyContextServiceFactory(ServiceManager.ServiceRegistry);

            // --- Act
            var service = factory.CreateService(typeof(IComparable));

            // --- Assert
            service.ShouldBeNull();
        }
        public void GetServiceIsAvailable()
        {
            // --- Arrange
            var factory = new EmptyContextServiceFactory(new SimpleServiceLocator());

            // --- Act
            var service = factory.CreateService <IDummy2>() as Dummy2Service;

            // --- Assert
            service.ShouldNotBeNull();
            // ReSharper disable once PossibleNullReferenceException
            service.GetService <IDummy2>().ShouldBeOfType(typeof(Dummy2Service));
        }
        public void ServiceIsSetupProperly()
        {
            // --- Arrange
            var factory = new EmptyContextServiceFactory(ServiceManager.ServiceRegistry);

            // --- Act
            var service     = factory.CreateService <IDummy2>();
            var context     = service.CallContext;
            var locator     = service.ServiceLocator;
            var realService = service.GetObject(typeof(IDummy2));

            // --- Assert
            context.ShouldNotBeNull();
            locator.ShouldNotBeNull();
            realService.ShouldNotBeNull();
        }