public void CannotInsertANewPayeeWithoutADefaultCategory()
        {
            DataHelper.NewDb();

            var service = new RentalsService();

            var payeeToAdd = new Payee()
            {
                Name = "Payee Name",
            };

            service.SaveNewPayee(payeeToAdd);

            Assert.Fail("Payee was added without a DefaultCategory");
        }
        public void CannotInsertNewPayeetWithSameNameAsAnExistingPayee()
        {
            DataHelper.NewDb();

            var payeeToAdd = new Payee()
            {
                Name = "Renter A",
                DefaultCategoryId = 1
            };

            var service = new RentalsService();

            service.SaveNewPayee(payeeToAdd);
            Assert.Fail("Added an payee with same name as an exiting payee");
        }
        public void CanInsertNewPayeeWithExistingDefaultCategory()
        {
            DataHelper.NewDb();

            var service = new RentalsService();

            var payeeToAdd = new Payee()
            {
                Name = "Payee Name",
                DefaultCategoryId = 1
            };

            service.SaveNewPayee(payeeToAdd);

            Assert.AreEqual(DataHelper.Payees.Count + 1, service.GetNumberOfPayees());
        }
        public void CanInsertNewPayeeWithANewDefaultCategoryAndBothWillBeInserted()
        {
            DataHelper.NewDb();

            var service = new RentalsService();

            var payeeToAdd = new Payee()
            {
                Name            = "Payee Name",
                DefaultCategory = new Category()
                {
                    Name = "NewCategory", Type = CategoryType.Income
                }
            };

            service.SaveNewPayee(payeeToAdd);

            Assert.AreEqual(DataHelper.Payees.Count + 1, service.GetNumberOfPayees());
            Assert.AreEqual(DataHelper.Categories.Count + 1, service.GetNumberOfCategories());
        }