public void GetInstances_NoServicesFound_ReturnsEmptyArray <TService>(IDiContainer container)
            where TService : class
        {
            var services = container.GetInstances <TService>().ToArray();

            Xunit.Assert.Empty(services);

            var serviceObjects = container.GetInstances(typeof(TService));

            Xunit.Assert.Empty(serviceObjects);
        }
        private void CheckTransientServices <TService>(IDiContainer container, Type[] implementationTypes)
            where TService : class
        {
            var services = container.GetInstances <TService>().ToArray();

            CheckServices(services, implementationTypes);

            var serviceObjects = container.GetInstances <TService>().ToArray();

            CheckServices(serviceObjects, implementationTypes);

            Assert.True(services.All(service => !serviceObjects.ToList().Contains(service)));
        }
        private void CheckSingletonServices <TService>(IDiContainer container, Type[] implementationTypes)
            where TService : class
        {
            var services = container.GetInstances <TService>().ToArray();

            CheckServices(services, implementationTypes);

            var serviceObjects = container.GetInstances <TService>().ToArray();

            CheckServices(serviceObjects, implementationTypes);

            Assert.True(services.SequenceEqual(serviceObjects));
        }
        public void TestGetInstances <TService>(IDiContainer container, params Type[] implementationTypes)
            where TService : class
        {
            var services = container.GetInstances <TService>().ToArray();

            Xunit.Assert.Equal(implementationTypes.Length, services.Length);

            CheckServices(services, implementationTypes);

            var serviceObjects = container.GetInstances(typeof(TService)).ToArray();

            Xunit.Assert.Equal(implementationTypes.Length, serviceObjects.Length);

            CheckServices(serviceObjects, implementationTypes);
        }
예제 #5
0
 public static IEnumerable <T> GetInstances <T>()
     where T : class
 {
     return(DiContainer.GetInstances <T>());
 }