Exemplo n.º 1
0
        public void TestBasicOperations()
        {
            WindsorContainer container = new WindsorContainer(new DefaultConfigurationStore());

            container.AddFacility(new AutoTxFacility());

            container.Register(Component.For <ITransactionManager>().ImplementedBy <MockTransactionManager>().Named("transactionmanager"));

            container.Register(Component.For <CustomerService>().Named("services.customer"));

            CustomerService service = container.Resolve <CustomerService>("services.customer");

            service.Insert("TestCustomer", "Rua P Leite, 33");

            MockTransactionManager transactionManager = container.Resolve <MockTransactionManager>("transactionmanager");

            Assert.AreEqual(1, transactionManager.TransactionCount);
            Assert.AreEqual(1, transactionManager.CommittedCount);
            Assert.AreEqual(0, transactionManager.RolledBackCount);

            try
            {
                service.Delete(1);
            }
            catch (Exception)
            {
                // Expected
            }

            Assert.AreEqual(2, transactionManager.TransactionCount);
            Assert.AreEqual(1, transactionManager.CommittedCount);
            Assert.AreEqual(1, transactionManager.RolledBackCount);
        }
 public virtual void DelegateInsert(string name, string
                                    address)
 {
     customerService.Insert(name, address);
 }