public void SetUp()
        {
            var assemblies = new[] { typeof(UnitTestSetUp).Assembly };
            var container  = new Container();

            container.Options.DefaultScopedLifestyle = new AsyncScopedLifestyle();

            UnitTestSetUp.ConfigureDatabase(container);

            container.ConfigureMediator(assemblies);

            Crud.CreateInitializer(container, assemblies)
            .UseEntityFramework()
            .Initialize();

            container.Options.AllowOverridingRegistrations = true;
            container.Register <ICrudErrorHandler, TestErrorHandler>(Lifestyle.Singleton);
            container.Options.AllowOverridingRegistrations = false;

            _scope = AsyncScopedLifestyle.BeginScope(container);

            Mediator = _scope.GetInstance <IMediator>();
            Context  = _scope.GetInstance <DbContext>();
            Context.Database.EnsureDeleted();

            Container = container;
        }
Exemple #2
0
        public static void UnitTestOneTimeSetUp()
        {
            var assemblies = new[] { typeof(UnitTestSetUp).Assembly };

            Container = new Container();

            Container.Options.DefaultScopedLifestyle = new AsyncScopedLifestyle();

            ConfigureDatabase(Container);
            ConfigureAutoMapper(Container, assemblies);
            ConfigureFluentValidation(Container, assemblies);

            Container.ConfigureMediator(assemblies);

            // NOTE: License removed from repository

            //if (!LicenseManager.ValidateLicense(out var licenseErrorMessage))
            //{
            //    throw new Exception(licenseErrorMessage);
            //}

            Crud.CreateInitializer(Container, assemblies)
            .ValidateAllRequests(false)
            .UseFluentValidation()
            .UseEntityFrameworkExtensions(BulkExtensions.Create | BulkExtensions.Update)
            .Initialize();

            Container.Options.AllowOverridingRegistrations = true;
            Container.Register <IDeleteDataAgent, SoftDeleteDataAgent>(Lifestyle.Singleton);
            Container.Register <IBulkDeleteDataAgent, SoftDeleteDataAgent>(Lifestyle.Singleton);
            Container.Options.AllowOverridingRegistrations = false;

            Container.Verify();
        }
        public void SetUp()
        {
            var assemblies = new[] { typeof(UnitTestSetUp).Assembly };
            var container  = new Container();

            container.Options.DefaultScopedLifestyle = new AsyncScopedLifestyle();

            UnitTestSetUp.ConfigureDatabase(container);

            container.ConfigureMediator(assemblies);

            Crud.CreateInitializer(container, assemblies)
            .Initialize();

            container.Options.AllowOverridingRegistrations = true;

            container.Register <IEntityContext, InMemoryContext>();

            var dataAgent = new InMemoryDataAgent();

            container.RegisterInstance <ICreateDataAgent>(dataAgent);
            container.RegisterInstance <IUpdateDataAgent>(dataAgent);
            container.RegisterInstance <IDeleteDataAgent>(dataAgent);
            container.RegisterInstance <IBulkCreateDataAgent>(dataAgent);
            container.RegisterInstance <IBulkUpdateDataAgent>(dataAgent);
            container.RegisterInstance <IBulkDeleteDataAgent>(dataAgent);

            container.Options.AllowOverridingRegistrations = false;

            _scope = AsyncScopedLifestyle.BeginScope(container);

            Mediator = _scope.GetInstance <IMediator>();
            Context  = _scope.GetInstance <IEntityContext>();

            InMemoryContext.Clear();

            Container = container;
        }