public void CloseAccount_RemoveBankAccountTests(List <Account> collection, int id)
        {
            Mock <IAccountStorage> mockStorage   = new Mock <IAccountStorage>();
            Mock <IBonusCounter>   mockCounter   = new Mock <IBonusCounter>();
            Mock <IIDGenerator>    mockGenerator = new Mock <IIDGenerator>();

            mockStorage.Setup(storage => storage.GetAllAccounts()).Returns(collection);

            BankAccountService service = new BankAccountService(mockStorage.Object, mockCounter.Object);

            service.CloseBankAccount(id);

            mockStorage.Verify(storage => storage.RemoveAccount(
                                   It.Is <Account>(account =>
                                                   account.UserName == collection.Find(x => x.Id == id).UserName&&
                                                   account.UserSurname == collection.Find(x => x.Id == id).UserSurname&&
                                                   account.Amount == collection.Find(x => x.Id == id).Amount&&
                                                   account.Type == collection.Find(x => x.Id == id).Type)),
                               Times.Once);
        }