diff --git a/src/main/java/seedu/omnitravel/exchangerateapi/CurrencyRate.java b/src/main/java/seedu/omnitravel/exchangerateapi/CurrencyRate.java index faa304e8f2..812edaba89 100644 --- a/src/main/java/seedu/omnitravel/exchangerateapi/CurrencyRate.java +++ b/src/main/java/seedu/omnitravel/exchangerateapi/CurrencyRate.java @@ -34,14 +34,11 @@ public static void convertCurrency(String localCurrency, String foreignCurrency, .build(); HttpResponse response = client.send(request, HttpResponse.BodyHandlers.ofString()); String jsonResponse = response.body(); - - if(!jsonResponse.contains("\"" + localCurrency + "\"")){ throw new OmniException(localCurrency + " is an invalid currency!"); } else if(!jsonResponse.contains("\"" + foreignCurrency + "\"")){ throw new OmniException(foreignCurrency + " is an invalid currency!"); } - // Parses the data int index = jsonResponse.indexOf("\"" + foreignCurrency + "\""); String subResponse = jsonResponse.substring(index); @@ -60,14 +57,5 @@ public static void convertCurrency(String localCurrency, String foreignCurrency, } } } - - - - } - - - - - } diff --git a/src/main/java/seedu/omnitravel/omnitravel/OmniTravel.java b/src/main/java/seedu/omnitravel/omnitravel/OmniTravel.java index 7d672bf123..53dd7e09b9 100644 --- a/src/main/java/seedu/omnitravel/omnitravel/OmniTravel.java +++ b/src/main/java/seedu/omnitravel/omnitravel/OmniTravel.java @@ -18,7 +18,7 @@ public class OmniTravel { - + //@@author EugeneChanJiajun public static void main(String[] args) throws IOException { Logger logger = Logger.getLogger("Main"); @@ -148,6 +148,7 @@ private static void initialiseLogger(Logger logger) throws IOException{ LogManager.getLogManager().reset(); logger.setLevel(java.util.logging.Level.OFF); } + //@@author EugeneChanJiajun } diff --git a/src/main/java/seedu/omnitravel/parser/Parser.java b/src/main/java/seedu/omnitravel/parser/Parser.java index 4e1c1d9461..93be481f24 100644 --- a/src/main/java/seedu/omnitravel/parser/Parser.java +++ b/src/main/java/seedu/omnitravel/parser/Parser.java @@ -349,7 +349,6 @@ public static void listTagsCommand(String[] command, TravelActivityList list) th public static void currencyExchangeCommand(String line) throws OmniException{ Ui.printLine(); try { - String delimiter = "change | /from | /to "; String[] command = line.split(delimiter); // Check parameters diff --git a/src/main/java/seedu/omnitravel/travelactivitytypes/TravelActivityList.java b/src/main/java/seedu/omnitravel/travelactivitytypes/TravelActivityList.java index a678ed147e..407da6e81c 100644 --- a/src/main/java/seedu/omnitravel/travelactivitytypes/TravelActivityList.java +++ b/src/main/java/seedu/omnitravel/travelactivitytypes/TravelActivityList.java @@ -27,6 +27,7 @@ public TravelActivityList() { /** * Adds travel activity to the travel activity list + * * @param travelActivity The travel activity */ public void addTravelActivity(TravelActivity travelActivity){ @@ -57,6 +58,7 @@ public void listTravelActivities(){ /** * returns the number of travel activities in the list + * * @return the number of travel activities */ public int getNoOfTravelActivities(){ @@ -82,7 +84,12 @@ public void removeTravelActivity(int activityNumber) throws OmniException { assert newSize == initialListSize - 1 :"There is an error with list size!"; } - + /** + * Obtains the description of the plan that we are looking for from the travel activity list + * + * @param plan Plan that we are looking for in the travel activity list + * @return The travel activity description user is looking for + */ public String getDescription(String plan){ for(TravelActivity travelActivity: travelActivities){ if(travelActivity.getPlan().equals(plan)){ @@ -121,6 +128,7 @@ public void searchKeyword (String activityName) { /** * Checks travel activity as completed + * * @param activityNumber The travel activity number on the list */ public void checkTravelActivity(int activityNumber) throws OmniException{ @@ -141,6 +149,7 @@ public void checkTravelActivity(int activityNumber) throws OmniException{ /** * Unchecks travel activity and sets it to uncompleted + * * @param activityNumber The travel activity number on the list */ public void uncheckTravelActivity(int activityNumber) throws OmniException{ @@ -162,6 +171,7 @@ public void uncheckTravelActivity(int activityNumber) throws OmniException{ /** * Adds a tag to travel activity + * * @param taskNumber The travel activity number on the list * @param tag The tag of travel activity */ @@ -179,6 +189,7 @@ public void tagActivity(int taskNumber, String tag) throws OmniException { /** * Removes the tag on a travel activity + * * @param taskNumber The travel activity number on the list */ public void removeTag(int taskNumber) throws OmniException { @@ -195,6 +206,7 @@ public void removeTag(int taskNumber) throws OmniException { /** * Updates the date, duration and tag of the travel activity + * * @param travelActivityNumber The index of the travel activity * @param date The new date of the travel activity * @param duration The new duration of the travel activity @@ -278,10 +290,9 @@ public void findType(String type){ } } - - /** * Adds expense to travel activity + * * @param taskNumber The travel activity number on the list * @param expense The expense of travel activity */ @@ -302,6 +313,7 @@ public void expenseActivity(int taskNumber, String expense) throws OmniException /** * Removes the expense on a travel activity + * * @param taskNumber The travel activity number on the list */ public void removeExpense(int taskNumber) throws OmniException { @@ -318,6 +330,7 @@ public void removeExpense(int taskNumber) throws OmniException { /** * Calculates the total expense for the given type. + * * @param type The type of tasks that the user wants to find */ diff --git a/src/main/java/seedu/omnitravel/ui/Ui.java b/src/main/java/seedu/omnitravel/ui/Ui.java index 51856d5168..af2d83d0cb 100644 --- a/src/main/java/seedu/omnitravel/ui/Ui.java +++ b/src/main/java/seedu/omnitravel/ui/Ui.java @@ -79,7 +79,8 @@ public static void helpCommand(){ "15. findtag \n" + "16. findtype \n" + "17. expense \n" + - "18. removeexpense \n"); + "18. removeexpense \n" + + "19. change /from /to "); printLine(); } @@ -114,18 +115,4 @@ public static void printActivity(TravelActivity activity, int activityIndex) { System.out.println(); } - public static String[] removeElement(String[] array, int indexToRemove) { - if (indexToRemove < 0 || indexToRemove >= array.length) { - throw new IllegalArgumentException("Index out of bounds"); - } - // Create a new array with one less element - String[] newArray = new String[array.length - 1]; - // Copy elements from the original array to the new array, excluding the element to remove - for (int i = 0, j = 0; i < array.length; i++) { - if (i != indexToRemove) { - newArray[j++] = array[i]; - } - } - return newArray; - } } diff --git a/src/test/java/seedu/omnitravel/OmniTravelTest.java b/src/test/java/seedu/omnitravel/OmniTravelTest.java index 4401ce24bd..6b6a510e1e 100644 --- a/src/test/java/seedu/omnitravel/OmniTravelTest.java +++ b/src/test/java/seedu/omnitravel/OmniTravelTest.java @@ -24,6 +24,7 @@ import java.io.ByteArrayOutputStream; import java.io.PrintStream; +import java.util.Arrays; class OmniTravelTest { @@ -361,12 +362,12 @@ public void testActivityCommand() throws OmniException { // Test with valid input Parser.activityCommand("accommodation description /date 2024-10-04 /duration 2 days /tag test", list); } - /* - // Similar tests for other methods such as addCommand, deleteCommand, checkCommand, uncheckCommand, etc. + @Test public void testTagCommand() throws OmniException { TravelActivityList list = new TravelActivityList(); + list.addTravelActivity(accommodationNew1); // Test with valid input Parser.tagCommand("tag 1 test", list); } @@ -374,17 +375,23 @@ public void testTagCommand() throws OmniException { @Test public void testRemoveTagCommand() throws OmniException { TravelActivityList list = new TravelActivityList(); + list.addTravelActivity(accommodationNew1); + Parser.tagCommand("tag 1 test", list); + String[] input = {"untag", "1"}; // Test with valid input - Parser.removeTagCommand(new String[]{"removeTag", "1"}, list); + Parser.removeTagCommand(input, list); } @Test public void testUpdateCommand() throws OmniException { TravelActivityList list = new TravelActivityList(); + list.addTravelActivity(accommodationNew1); // Test with valid input Parser.updateCommand("update 1 /date 2024-04-04 /duration 2 days /tag test", list); } + + @Test public void testFindTagCommand() throws OmniException { TravelActivityList list = new TravelActivityList(); @@ -398,35 +405,33 @@ public void testFindTypeCommand() throws OmniException { // Test with valid input Parser.findTypeCommand("findtype test", list); } - @Test - public void testFindCommand() throws OmniException { + public void testExpenseCommand() throws OmniException { TravelActivityList list = new TravelActivityList(); - // Test with valid input - Parser.findCommand(new String[]{"find", "test"}, list); + list.addTravelActivity(accommodationNew1); + String input = "expense 1 $50"; + Parser.expenseCommand(input, list); } - /* + @Test - public void testExpenseCommand() throws OmniException { + public void testRemoveExpenseCommand() throws OmniException { TravelActivityList list = new TravelActivityList(); - // Test with valid input + list.addTravelActivity(accommodationNew1); Parser.expenseCommand("expense 1 $50", list); + String[] input = {"removeExpense", "1"}; + Parser.removeExpenseCommand(input, list); } - @Test - public void testRemoveExpenseCommand() throws OmniException { + public void testFindCommand() throws OmniException { TravelActivityList list = new TravelActivityList(); // Test with valid input - Parser.removeExpenseCommand(new String[]{"removeExpense", "1"}, list); - + Parser.findCommand(Arrays.toString(new String[]{"find", "test"}), list); } - - @Test public void testTotalExpenseCommand() throws OmniException { TravelActivityList list = new TravelActivityList(); // Test with valid input Parser.totalExpenseCommand("totalexpense", list); } - */ + }