From 4319790c614fc709f20f44f3cae1ec3cf2542fd8 Mon Sep 17 00:00:00 2001 From: Simon Geering <25039878+SimonGeering@users.noreply.github.com> Date: Mon, 7 Dec 2020 19:21:40 +0000 Subject: [PATCH] #146 Switched Budget to be a record --- .../DomainModel/Modules/BudgetModule/Budget.cs | 2 +- .../Modules/BudgetModule/Builders/BudgetBuilder.cs | 14 ++++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/AdminAssistant/DomainModel/Modules/BudgetModule/Budget.cs b/src/AdminAssistant/DomainModel/Modules/BudgetModule/Budget.cs index 1a7c8bcd..0f9b19fa 100644 --- a/src/AdminAssistant/DomainModel/Modules/BudgetModule/Budget.cs +++ b/src/AdminAssistant/DomainModel/Modules/BudgetModule/Budget.cs @@ -2,7 +2,7 @@ namespace AdminAssistant.DomainModel.Modules.BudgetModule { - public class Budget : IDatabasePersistable + public record Budget : IDatabasePersistable { public const int BudgetNameMaxLength = Constants.NameMaxLength; diff --git a/src/AdminAssistant/DomainModel/Modules/BudgetModule/Builders/BudgetBuilder.cs b/src/AdminAssistant/DomainModel/Modules/BudgetModule/Builders/BudgetBuilder.cs index c03a8d51..4449f131 100644 --- a/src/AdminAssistant/DomainModel/Modules/BudgetModule/Builders/BudgetBuilder.cs +++ b/src/AdminAssistant/DomainModel/Modules/BudgetModule/Builders/BudgetBuilder.cs @@ -6,21 +6,27 @@ public interface IBudgetBuilder IBudgetBuilder WithTestData(int budgetID = Constants.UnknownRecordID); IBudgetBuilder WithBudgetName(string empty); } - internal class BudgetBuilder : Budget, IBudgetBuilder + internal class BudgetBuilder : IBudgetBuilder { + private Budget _budget = new Budget(); + public static Budget Default(IBudgetBuilder builder) => builder.Build(); - public Budget Build() => this; + public Budget Build() => _budget; public IBudgetBuilder WithTestData(int budgetID = Constants.UnknownRecordID) { - BudgetName = "Test Budget"; + _budget = _budget with + { + BudgetID = budgetID, + BudgetName = "Test Budget" + }; return this; } public IBudgetBuilder WithBudgetName(string budgetName) { - BudgetName = budgetName; + _budget = _budget with { BudgetName = budgetName }; return this; } }