private void Save() { if (IsAdding) { _addToAccount.Transactions.Add(Transaction); _model.SaveChanges(); RaiseTransactionAddFinished(); } else if (IsEditing) { _model.SaveChanges(); IsEditing = false; } }
public void LastEventInformation_IsAvailableOnReplay() { string lastEventId = Account.LastEventID; Account accountCopy = BudgetModel.FindEntity <Account>(Account.EntityID); Assert.That(accountCopy.LastEventID, Is.EqualTo(lastEventId)); bool vectorEqual = Account.LastEventVector.CompareVectors(accountCopy.LastEventVector) == Infrastructure.VectorClock.ComparisonResult.Equal; Assert.That(vectorEqual, Is.True); Account.Name = "Change The Name"; BudgetModel.SaveChanges(); Assert.That(Account.LastEventID, Is.Not.EqualTo(lastEventId)); Assert.That(Account.LastEventID, Is.EqualTo(TestEvents[0].EventID.ToString())); Assert.That(Account.LastEventID, Is.EqualTo(accountCopy.LastEventID)); }
public void SaveChanges() { BudgetModel.SaveChanges(); }
private void CreateBudget() { string budgetPath = _budgetLoader.GetBudgetSavePath(Budget.Name); if (budgetPath == null) { return; } InitializeDefaultCategories(); BudgetModel budgetModel = _budgetLoader.CreateNewBudget(budgetPath, Budget); Account manyTransactions = new Account(); manyTransactions.AccountType = AccountTypes.Checking; manyTransactions.BudgetingType = BudgetingTypes.OnBudget; manyTransactions.Name = "Many Transactions"; Account manyMoreTransactions = new Account(); manyMoreTransactions.AccountType = AccountTypes.Checking; manyMoreTransactions.BudgetingType = BudgetingTypes.OnBudget; manyMoreTransactions.Name = "Many More Transactions"; Payee payee = new Payee(); payee.Name = "Subway"; Budget.Payees.Add(payee); budgetModel.SaveChanges(); /*for (int i = 1; i <= 1000; i++) * { * OpenBudget.Model.Entities.Transaction transaction = new OpenBudget.Model.Entities.Transaction(); * transaction.Amount = -i; * transaction.Category = Budget.MasterCategories[0].Categories[0]; * transaction.TransactionDate = DateTime.Today; * transaction.Payee = payee; * if (i % 2 == 0) * { * manyTransactions.Transactions.Add(transaction); * } * else * { * manyMoreTransactions.Transactions.Add(transaction); * } * } * * Budget.Accounts.Add(manyTransactions); * Budget.Accounts.Add(manyMoreTransactions); * budgetModel.SaveChanges();*/ List <ModelEvent> events = budgetModel.BudgetStore.EventStore.GetEvents().ToList(); EventStreamHeader header = new EventStreamHeader(events[0].EventVector, events.Last().EventVector, default(Guid), default(Guid)); using (var stream = File.Create(Path.Combine(Path.GetDirectoryName(budgetPath), "events.json"))) using (var writer = new EventStreamWriter(stream, header, true)) { writer.WriteEvents(events); } var deviceSettings = _settingsProvider.Get <Device>(); BudgetStub budgetStub = new BudgetStub() { BudgetName = Budget.Name, BudgetPath = budgetPath, LastEdited = DateTime.Now }; deviceSettings.AddRecentBudgetToTop(budgetStub); deviceSettings.Save(); _mainViewModel.MountBudget(budgetModel); _budget.ErrorsChanged -= Budget_ErrorsChanged; _navigationService.NavigateTo <MainBudgetViewModel>(); }