From ada261d0a0b130eb7b47bf5377641308f7486864 Mon Sep 17 00:00:00 2001 From: = Date: Mon, 25 May 2026 19:49:31 +0200 Subject: [PATCH] Feat: Updated validation for Transaction --- .../g40/mappe/model/Transaction.java | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Transaction.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Transaction.java index fe7e6c5..62993f1 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Transaction.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Transaction.java @@ -1,6 +1,7 @@ package edu.ntnu.idi.idatt2003.g40.mappe.model; import edu.ntnu.idi.idatt2003.g40.mappe.service.TransactionCalculator; +import edu.ntnu.idi.idatt2003.g40.mappe.utils.Validator; /** * Transaction abstract class. @@ -40,14 +41,22 @@ public abstract class Transaction { protected Transaction(final Share share, final int week, final TransactionCalculator calculator) - throws IllegalArgumentException{ - if (share == null || calculator == null) { - throw new IllegalArgumentException("Invalid stock or calculator!"); - } else { - this.share = share; - this.week = week; - this.calculator = calculator; + throws IllegalArgumentException { + if (share == null + || calculator == null) { + throw new IllegalArgumentException( + "Invalid configuration for transaction!" + ); } + if (!Validator.VALID_WEEK.isValid(Integer.toString(week))) { + throw new IllegalArgumentException( + Validator.VALID_WEEK.getErrorMessage() + ); + } + this.share = share; + this.week = week; + this.calculator = calculator; + } /**