示例#1
0
        /// <summary>
        /// Adds test data to a context.
        /// </summary>
        /// <param name="context">The context to which data will be added.</param>
        private void AddTestData(CheckbookContext context)
        {
            context.Database.OpenConnection();
            context.Database.EnsureCreated();

            // Users
            User user1 = new User
            {
                Id        = 1,
                Username  = "******",
                FirstName = "Brian",
                LastName  = "Dorgan",
            };

            context.Users.Add(user1);

            // Accounts
            Account bankAccount1 = new Account
            {
                Id            = 1,
                Name          = "My Account",
                IsUserAccount = true,
                UserId        = user1.Id,
            };

            context.Accounts.Add(bankAccount1);

            Account merchantAccount1 = new Account
            {
                Id            = 2,
                Name          = "Awesome Company",
                IsUserAccount = false,
            };
            Account merchantAccount2 = new Account
            {
                Id            = 3,
                Name          = "Wonderful Restaurant",
                IsUserAccount = false,
            };
            Account merchantAccount3 = new Account
            {
                Id            = 4,
                Name          = "Apple and Suasage Factory",
                IsUserAccount = false,
            };

            context.Accounts.Add(merchantAccount1);
            context.Accounts.Add(merchantAccount2);
            context.Accounts.Add(merchantAccount3);

            // Categories
            Category categoryFood = new Category
            {
                Id     = 1,
                UserId = user1.Id,
                Name   = "Food",
            };
            Category categoryEntertainment = new Category
            {
                Id     = 2,
                UserId = user1.Id,
                Name   = "Entertainment",
            };
            Category categoryTransportation = new Category
            {
                Id     = 3,
                UserId = user1.Id,
                Name   = "Transportation",
            };

            context.Categories.Add(categoryFood);
            context.Categories.Add(categoryEntertainment);
            context.Categories.Add(categoryTransportation);

            // Budgets.
            Budget budgetGroceries = new Budget
            {
                Id         = 1,
                UserId     = user1.Id,
                Name       = "Groceries",
                CategoryId = categoryFood.Id,
            };
            Budget budgetPeaches = new Budget
            {
                Id         = 2,
                UserId     = user1.Id,
                Name       = "Peaches",
                CategoryId = categoryFood.Id,
            };
            Budget budgetRestaruants = new Budget
            {
                Id         = 3,
                UserId     = user1.Id,
                Name       = "Restaurants",
                CategoryId = categoryFood.Id,
            };
            Budget budgetDates = new Budget
            {
                Id         = 4,
                UserId     = user1.Id,
                Name       = "Dates",
                CategoryId = categoryEntertainment.Id,
            };
            Budget budgetVacations = new Budget
            {
                Id         = 5,
                UserId     = user1.Id,
                Name       = "Vacations",
                CategoryId = categoryEntertainment.Id,
            };
            Budget budgetGasoline = new Budget
            {
                Id         = 6,
                UserId     = user1.Id,
                Name       = "Gasoline",
                CategoryId = categoryTransportation.Id,
            };
            Budget budgetCarInsurance = new Budget
            {
                Id         = 7,
                UserId     = user1.Id,
                Name       = "Car Insurance",
                CategoryId = categoryTransportation.Id,
            };
            Budget budgetOilChanges = new Budget
            {
                Id         = 8,
                UserId     = user1.Id,
                Name       = "Oil Changes",
                CategoryId = categoryTransportation.Id,
            };
            Budget budgetHawaii = new Budget
            {
                Id         = 9,
                UserId     = user1.Id,
                Name       = "Hawaii",
                CategoryId = categoryEntertainment.Id,
            };
            Budget budgetNewCar = new Budget
            {
                Id         = 10,
                UserId     = user1.Id,
                Name       = "New Car",
                CategoryId = categoryTransportation.Id,
            };

            context.Budgets.Add(budgetGroceries);
            context.Budgets.Add(budgetPeaches);
            context.Budgets.Add(budgetRestaruants);
            context.Budgets.Add(budgetDates);
            context.Budgets.Add(budgetVacations);
            context.Budgets.Add(budgetGasoline);
            context.Budgets.Add(budgetCarInsurance);
            context.Budgets.Add(budgetOilChanges);
            context.Budgets.Add(budgetHawaii);
            context.Budgets.Add(budgetNewCar);

            // Transactions
            Transaction transaction1 = new Transaction
            {
                Id            = 1,
                Date          = DateTime.Now.AddDays(-7),
                FromAccountId = bankAccount1.Id,
                UserId        = user1.Id,
                ToAccountId   = merchantAccount1.Id,
                Items         = new List <TransactionItem>
                {
                    new TransactionItem
                    {
                        Id            = 1,
                        TransactionId = 1,
                        BudgetId      = budgetOilChanges.Id,
                        Amount        = 50.00m,
                    },
                },
            };
            Transaction transaction2 = new Transaction
            {
                Id            = 2,
                Date          = DateTime.Now.AddDays(-5),
                FromAccountId = bankAccount1.Id,
                ToAccountId   = merchantAccount2.Id,
                UserId        = user1.Id,
                Items         = new List <TransactionItem>
                {
                    new TransactionItem
                    {
                        Id            = 2,
                        TransactionId = 2,
                        BudgetId      = budgetGroceries.Id,
                        Amount        = 25.00m,
                    },
                },
            };
            Transaction transaction3 = new Transaction
            {
                Id            = 3,
                Date          = DateTime.Now.AddDays(-2),
                FromAccountId = bankAccount1.Id,
                ToAccountId   = merchantAccount3.Id,
                UserId        = user1.Id,
                Items         = new List <TransactionItem>
                {
                    new TransactionItem
                    {
                        Id            = 3,
                        TransactionId = 3,
                        BudgetId      = budgetDates.Id,
                        Amount        = 100.00m,
                    },
                    new TransactionItem
                    {
                        Id            = 4,
                        TransactionId = budgetRestaruants.Id,
                        BudgetId      = 2,
                        Amount        = 200.00m,
                    },
                    new TransactionItem
                    {
                        Id            = 5,
                        TransactionId = 3,
                        BudgetId      = budgetHawaii.Id,
                        Amount        = 300.00m,
                    },
                },
            };

            context.Transactions.Add(transaction1);
            context.Transactions.Add(transaction2);
            context.Transactions.Add(transaction3);

            context.SaveChanges();
        }
示例#2
0
        /// <summary>
        /// Adds entities to the context for testing.
        /// </summary>
        /// <param name="context">The database context.</param>
        public static void AddEntities(CheckbookContext context)
        {
            context.Users.Add(new User
            {
                Id        = 1,
                FirstName = "First",
                LastName  = "User",
                Username  = "******",
            });
            context.Users.Add(new User
            {
                Id        = 2,
                FirstName = "Second",
                LastName  = "User",
                Username  = "******",
            });

            context.Categories.Add(new Category
            {
                Id     = 1,
                Name   = "First Category for the first user",
                UserId = 1,
            });
            context.Categories.Add(new Category
            {
                Id     = 2,
                Name   = "Second Category for the first user",
                UserId = 1,
            });
            context.Categories.Add(new Category
            {
                Id     = 3,
                Name   = "First Category for the second user",
                UserId = 2,
            });
            context.Categories.Add(new Category
            {
                Id     = 4,
                Name   = "Second Category for the second user",
                UserId = 2,
            });

            context.Budgets.Add(new Budget
            {
                Id         = 1,
                CategoryId = 1,
                Name       = "First Budget for the first user",
                UserId     = 1,
            });
            context.Budgets.Add(new Budget
            {
                Id         = 2,
                CategoryId = 2,
                Name       = "Second Budget for the first user",
                UserId     = 1,
            });
            context.Budgets.Add(new Budget
            {
                Id         = 3,
                CategoryId = 2,
                Name       = "Third Budget for the first user",
                UserId     = 1,
            });
            context.Budgets.Add(new Budget
            {
                Id         = 4,
                CategoryId = 2,
                Name       = "First Budget for the second user",
                UserId     = 2,
            });
            context.Budgets.Add(new Budget
            {
                Id         = 5,
                CategoryId = 2,
                Name       = "Second Budget for the second user",
                UserId     = 2,
            });

            context.Accounts.Add(new Account
            {
                Id            = 1,
                Name          = "First Bank Account for First User",
                IsUserAccount = true,
                UserId        = 1,
            });
            context.Accounts.Add(new Account
            {
                Id            = 2,
                Name          = "First Merchant Account",
                IsUserAccount = false,
            });
            context.Accounts.Add(new Account
            {
                Id            = 3,
                Name          = "Second Merchant Account",
                IsUserAccount = false,
            });
            context.Accounts.Add(new Account
            {
                Id            = 4,
                Name          = "First Account for Second User",
                IsUserAccount = true,
                UserId        = 2,
            });

            context.Transactions.Add(new Transaction
            {
                Id            = 1,
                FromAccountId = 1,
                ToAccountId   = 2,
                UserId        = 1,
                Date          = DateTime.Now,
                Items         = new List <TransactionItem>
                {
                    new TransactionItem
                    {
                        Id       = 1,
                        BudgetId = 1,
                        Amount   = 10,
                    },
                    new TransactionItem
                    {
                        Id       = 2,
                        BudgetId = 2,
                        Amount   = 20,
                    },
                },
                IsProcessed = false,
                Notes       = "Notes for the first transaction for first user.",
            });
            context.Transactions.Add(new Transaction
            {
                Id            = 2,
                FromAccountId = 1,
                ToAccountId   = 3,
                UserId        = 1,
                Date          = DateTime.Now,
                Items         = new List <TransactionItem>
                {
                    new TransactionItem
                    {
                        Id       = 3,
                        BudgetId = 1,
                        Amount   = 30,
                    },
                    new TransactionItem
                    {
                        Id       = 4,
                        BudgetId = 3,
                        Amount   = 40,
                    },
                },
                IsProcessed = false,
                Notes       = "Notes for the second transaction for first user.",
            });
            context.Transactions.Add(new Transaction
            {
                Id            = 3,
                FromAccountId = 4,
                ToAccountId   = 3,
                UserId        = 2,
                Date          = DateTime.Now,
                Items         = new List <TransactionItem>
                {
                    new TransactionItem
                    {
                        Id       = 5,
                        BudgetId = 1,
                        Amount   = 50,
                    },
                },
                IsProcessed = false,
                Notes       = "Notes for the first transaction for the second user.",
            });

            context.SaveChanges();
        }
示例#3
0
        private void AddTestData(CheckbookContext context)
        {
            context.Merchants.Add(new Merchant
            {
                Id   = 1,
                Name = "Awesome Company",
            });
            context.Merchants.Add(new Merchant
            {
                Id   = 2,
                Name = "Wonderful Restaurant",
            });
            context.Merchants.Add(new Merchant
            {
                Id   = 3,
                Name = "Apple and Suasage Factory",
            });

            context.Transactions.Add(new Transaction
            {
                Id = 1,
                TransactionDate = DateTime.Now.AddDays(-7),
                Amount          = 50.00m,
                MerchantId      = 1,
                Merchant        = new Merchant
                {
                    Id   = 1,
                    Name = "Awesome Company",
                },
                BankAccountId = 1,
                BankAccount   = new BankAccount
                {
                    Id   = 1,
                    Name = "My Account",
                },
                TransactionItems = new List <TransactionItem>(),
            });
            context.Transactions.Add(new Transaction
            {
                Id = 2,
                TransactionDate = DateTime.Now.AddDays(-5),
                Amount          = 25.00m,
                MerchantId      = 2,
                Merchant        = new Merchant
                {
                    Id   = 2,
                    Name = "Wonderful Restaurant",
                },
                BankAccountId = 1,
                BankAccount   = new BankAccount
                {
                    Id   = 1,
                    Name = "My Account",
                },
                TransactionItems = new List <TransactionItem>(),
            });
            context.Transactions.Add(new Transaction
            {
                Id = 3,
                TransactionDate = DateTime.Now.AddDays(-2),
                Amount          = 500.00m,
                MerchantId      = 3,
                Merchant        = new Merchant
                {
                    Id   = 3,
                    Name = "Apple and Suasage Factory",
                },
                BankAccountId = 1,
                BankAccount   = new BankAccount
                {
                    Id   = 1,
                    Name = "My Account",
                },
                TransactionItems = new List <TransactionItem>(),
            });

            context.SaveChanges();
        }