public void TransactionCommitRollbackTest()
        {
            PeopleRepository peopleRepository = new PeopleRepository();
            AccountsRepository accountsRepository = new AccountsRepository();
            BankDataContextFactory contextFactory = new BankDataContextFactory();

            Person createdPerson = new Person();
            createdPerson.Name = "transaction test";
            createdPerson.Document = "ZGMFX20A";
            createdPerson.Email = "*****@*****.**";

            Account createdAccount = new Account();
            createdAccount.Number = 2354235;
            createdAccount.Agency = 34;

            UnitOfWork unitOfWork = contextFactory.CreateUnitOfWork();

            peopleRepository.Save(createdPerson, unitOfWork);

            createdAccount.OwnerId = createdPerson.Id;

            accountsRepository.Save(createdAccount, unitOfWork);

            unitOfWork.Commit();

            Assert.IsNotNull(peopleRepository.FindSingle(p => p.Name == createdPerson.Name));
            Assert.IsNotNull(accountsRepository.FindSingle(a => a.Number == createdAccount.Number));

            unitOfWork = contextFactory.CreateUnitOfWork();

            accountsRepository.Delete(createdAccount, unitOfWork);
            peopleRepository.Delete(createdPerson, unitOfWork);

            unitOfWork.Rollback();

            Assert.IsNotNull(peopleRepository.FindSingle(p => p.Name == createdPerson.Name));
            Assert.IsNotNull(accountsRepository.FindSingle(a => a.Number == createdAccount.Number));

            unitOfWork = contextFactory.CreateUnitOfWork();

            accountsRepository.Delete(createdAccount, unitOfWork);
            peopleRepository.Delete(createdPerson, unitOfWork);

            unitOfWork.Commit();

            Assert.IsNull(peopleRepository.FindSingle(p => p.Name == createdPerson.Name));
            Assert.IsNull(accountsRepository.FindSingle(a => a.Number == createdAccount.Number));
        }
예제 #2
0
 public IHttpActionResult Delete(int id)
 {
     if (accountsRepository.Delete(id) == 1)
     {
         return(Ok("Successfully"));
     }
     else
     {
         return(BadRequest("Data Not Available"));
     }
 }
예제 #3
0
        public IHttpActionResult Delete(Guid id)
        {
            var repo = new AccountsRepository();

            if (repo.Delete(_connectionString, id))
            {
                return(Ok());
            }

            return(BadRequest("Delete Account Data Supplied is invalid."));
        }
예제 #4
0
        internal string Delete(int id, string userId)
        {
            Account foundAccount = _repo.GetById(id, userId);

            if (foundAccount.UserId != userId)
            {
                throw new Exception("That is not your account");
            }
            if (_repo.Delete(id, userId))
            {
                return("Account removed");
            }
            throw new Exception("Something went wrong");
        }
예제 #5
0
        public ActionResult DeleteAccount([FromODataUri] int key)
        {
            if (!ModelState.IsValid)
            {
                BadRequest(ModelState);
            }

            var result = _repository.RealAll().SingleOrDefault(x => x.Id == key);

            if (result == null)
            {
                return(NotFound());
            }

            _repository.Delete(key);
            return(Ok(result));
        }
        public void CreateFindUpdateDeleteTest()
        {
            Person createdPerson = new Person();
            createdPerson.Name = "gandamu strike freedom";
            createdPerson.Document = "ZGMFX20A";
            createdPerson.Email = "*****@*****.**";

            PeopleRepository peopleRepository = new PeopleRepository();

            peopleRepository.Save(createdPerson);

            Account createdAccount = new Account();
            createdAccount.Agency = 435;
            createdAccount.Number = 123123123;
            createdAccount.OwnerId = createdPerson.Id;

            AccountsRepository repository = new AccountsRepository();

            repository.Save(createdAccount);

            Assert.AreNotEqual(0, createdAccount.Id);

            Account retrievedAccount = repository.FindSingle(a => a.Id == createdAccount.Id);

            Assert.AreEqual(createdAccount, retrievedAccount);

            retrievedAccount.Agency = 666;

            repository.Save(retrievedAccount);

            retrievedAccount = repository.FindSingle(a => a.Id == createdAccount.Id);
            IList<Account> accounts = repository.Find(a => a.Id == createdAccount.Id);

            Assert.AreEqual(666, retrievedAccount.Agency);
            Assert.AreEqual(1, accounts.Count);

            repository.Delete(retrievedAccount);

            accounts = repository.Find(a => a.Id == createdAccount.Id);

            Assert.AreEqual(0, accounts.Count);
        }
예제 #7
0
        /// <summary>
        /// Delete account after confirmation.
        /// </summary>
        /// <returns>Result of async operation.</returns>
        public IEnumerable <IResult> Delete()
        {
            yield return(Animation.Stop("ShowActionsPanel"));

            yield return(Animation.Stop("HideActionsPanel"));

            var openConfirmationResult = new OpenConfirmationResult(EventAggregator)
            {
                Message = string.Format(Resources.Strings.AccountView_Delete_Confirmation_Message, Name),
                Title   = Resources.Strings.AccountView_Delete_Confirmation_Title,
                Options = MessageBoxOptions.Yes | MessageBoxOptions.Cancel,
            };

            yield return(openConfirmationResult);

            if (openConfirmationResult.Selected == MessageBoxOptions.Yes)
            {
                AccountsRepository.Delete(Id);
            }
        }