public void Command_Update_Person_Valid_Entity()
        {
            handler.Handle(new CreateNewPersonCommand()
            {
                FirstName = "Test",
                LastName  = "Test",
                Age       = 10
            });

            handler = iocProvider.GetContainer().Resolve <IPersonCommandHandler>();

            var person = new ModifyExistingPersonCommand()
            {
                Id = 1, FirstName = "Adam111111", LastName = "Liu11111", Age = 1000
            };

            handler.Handle(person);
        }
Example #2
0
        public void SetUp()
        {
            iocProvider = new AutofacProvider($@"{ AppDomain.CurrentDomain.BaseDirectory}repoconfig\autofac.repo.reader.json",
                                              $@"{AppDomain.CurrentDomain.BaseDirectory}repoconfig\autofac.repo.writer.json",
                                              $@"{AppDomain.CurrentDomain.BaseDirectory}moduleconfig\autofac.modules.json");

            //add the configues out of configue files in PreBuild
            iocProvider.PreBuild((builder) => {
                //Interceptor only can be configured by code
                //PersonCommandHandler dependents object that registered in config file
                builder.RegisterType <PersonCommandHandler>()
                .As <IPersonCommandHandler>()
                .EnableInterfaceInterceptors();
                builder.Register(c => new CommandPropertyValidator());


                //Register ErrorHandler
                builder.RegisterType <UnKnownErrorHandler>()
                .As <IUnKnownErrorHandler>();
                builder.RegisterType <NegativeErrorHandler>()
                .As <INegativeErrorHandler>();

                //Register LoggerController
                builder.RegisterType <LoggerFactory>()
                .As <ILoggerFactory>();
                builder.RegisterType <LoggerController <VersionedEvent> >()
                .As <ILoggerController <VersionedEvent> >();
                builder.RegisterType <LoggerController <ExceptionEvent> >()
                .As <ILoggerController <ExceptionEvent> >();
                builder.RegisterType <LoggerController <UnKnownErrorEvent> >()
                .As <ILoggerController <UnKnownErrorEvent> >();
            });


            iocProvider
            .Build();
            handler = iocProvider.GetContainer().Resolve <IPersonCommandHandler>();
        }
 public PersonCommandService(IPersonCommandHandler handler)
 {
     _handler = handler;
 }