Skip to content
Snippets Groups Projects
Commit 434361ca authored by Harry Linrui XU's avatar Harry Linrui XU
Browse files

Fixed filepath, such that tests can be run

parent ae3c821a
No related branches found
No related tags found
1 merge request!43Merging frontend-testing into master
......@@ -103,7 +103,8 @@ public class BudgetController extends FinanceController {
try {
System.out.println("Just in budget try");
general = loadBudgetDataFromFile("Budget");
general = loadBudgetDataFromFile(
"budgets/" + FileHandlingSelectedBudget.readSelectedBudget() + "/Budget");
budgetList = FXCollections.observableArrayList(general.getBudgetItems());
budgetTableView.setItems(budgetList);
System.out.println("After loading general");
......@@ -113,8 +114,8 @@ public class BudgetController extends FinanceController {
} else {
budgetRegister = FileHandlingBudgetArchive.readBudgetArchive("");
}
if (FileHandlingBudget.isNewBudget("Budget")) {
if (FileHandlingBudget.isNewBudget(
"budgets/" + FileHandlingSelectedBudget.readSelectedBudget() + "/Budget")) {
returnToMainMenuBtn.setOpacity(0);
returnToMainMenuBtn.setDisable(true);
daysLeftLbl.setOpacity(0);
......@@ -280,7 +281,8 @@ public class BudgetController extends FinanceController {
*/
@Override
public void saveDataToFile() throws IOException {
FileHandlingBudget.writeGeneralBudgetToFile("Budget", general);
FileHandlingBudget.writeGeneralBudgetToFile(
"budgets/" + FileHandlingSelectedBudget.readSelectedBudget() + "/Budget", general);
}
public void updateBudgetRegister(String budgetFolderName) {
......
......@@ -155,18 +155,23 @@ public class IncomeExpenseController extends FinanceController {
//Initialize columns
setColumns();
//Initialize registers and tableview
incomeRegister = loadIncomeDataFromFile("Income");
try {
//Initialize registers and tableview
incomeRegister = loadIncomeDataFromFile(
"budgets/" + FileHandlingSelectedBudget.readSelectedBudget() + "/Income");
expenseRegister = loadExpenseDataFromFile(
"budgets/" + FileHandlingSelectedBudget.readSelectedBudget() + "/Expense");
} catch(IOException ioe) {
showErrorDialogBox("File reading error", "Could not read register", "");
}
income = FXCollections.observableArrayList(incomeRegister.getItems());
incomeTableView.setItems(income);
System.out.println("After income rgister ");
expenseRegister = loadExpenseDataFromFile("Expense");
expenses = FXCollections.observableArrayList(expenseRegister.getItems());
expenseTableView.setItems(expenses);
System.out.println("Afte expense register");
//Setting pie chart values to correspond with the registers
incomePieChart.setLegendSide(Side.RIGHT);
incomePieChart.setLabelLineLength(10);
......@@ -474,13 +479,16 @@ public class IncomeExpenseController extends FinanceController {
*/
@Override
public void saveDataToFile() throws IOException {
FileHandling.writeItemRegisterToFile(incomeRegister, "Income");
FileHandling.writeItemRegisterToFile(expenseRegister, "Expense");
FileHandling.writeItemRegisterToFile(incomeRegister,
"budgets/" + FileHandlingSelectedBudget.readSelectedBudget() + "/Income");
FileHandling.writeItemRegisterToFile(expenseRegister,
"budgets/" + FileHandlingSelectedBudget.readSelectedBudget() + "/Expense");
}
public void saveDisposableIncomeToFile() throws IOException {
String disposableIncomeAsString = String.valueOf(incomeRegister.getTotalSum() - expenseRegister.getTotalSum());
FileHandlingBudget.writeMaxAmountToFile(FileHandlingSelectedBudget.readSelectedBudget(), disposableIncomeAsString);
FileHandlingBudget.writeMaxAmountToFile(
"budgets/" + FileHandlingSelectedBudget.readSelectedBudget() + "/Budget", disposableIncomeAsString);
}
/**
* Switches scenes back to main menu, by loading a new FXML file and setting the scene to this location.
......
......@@ -24,6 +24,7 @@ import javafx.scene.paint.Color;
import javafx.stage.Screen;
import javafx.stage.Stage;
import no.ntnu.idatt1002.demo.data.Budget.FileHandlingBudget;
import no.ntnu.idatt1002.demo.data.Budget.FileHandlingSelectedBudget;
import no.ntnu.idatt1002.demo.data.Budget.GeneralBudget;
import no.ntnu.idatt1002.demo.data.Economics.ExpenseCategory;
import no.ntnu.idatt1002.demo.data.Economics.ExpenseRegister;
......@@ -104,9 +105,12 @@ public class MainMenu {
public void initialize() {
//Initialize all registers + overview
try {
incomeRegister = loadIncomeDataFromFile("Income");
expenseRegister = loadExpenseDataFromFile("Expense");
generalBudget = loadBudgetDataFromFile("Budget");
incomeRegister = loadIncomeDataFromFile(
"budgets/" + FileHandlingSelectedBudget.readSelectedBudget() + "/Income");
expenseRegister = loadExpenseDataFromFile(
"budgets/" + FileHandlingSelectedBudget.readSelectedBudget() + "/Expense");
generalBudget = loadBudgetDataFromFile(
"budgets/" + FileHandlingSelectedBudget.readSelectedBudget() + "/Budget");
} catch (IOException ioe) {
Alert alert = new Alert(AlertType.ERROR);
alert.setTitle("Could not load register data");
......@@ -164,17 +168,17 @@ public class MainMenu {
/**
* Method that either reads data from a file with which it fills an income register, if older changes exist, or instantiates an income register if the file is empty.
* @param fileName The name of the file that is being read from.
* @param fileDestination The name of the file that is being read from.
* @return An object of type IncomeRegister.
* @throws IOException If an error occurs while reading from the file.
*/
public IncomeRegister loadIncomeDataFromFile(String fileName) throws IOException {
public IncomeRegister loadIncomeDataFromFile(String fileDestination) throws IOException {
//Instantiate incomeRegister
if (FileHandling.isEmpty(fileName)) {
if (FileHandling.isEmpty(fileDestination)) {
incomeRegister = new IncomeRegister();
} else { //Load previous income register
try {
incomeRegister = FileHandling.readIncomeRegisterFromFile(fileName);
incomeRegister = FileHandling.readIncomeRegisterFromFile(fileDestination);
} catch (IOException e) {
e.printStackTrace();
}
......@@ -184,17 +188,17 @@ public class MainMenu {
/**
* Method that either reads data from a file with which it fills an expense register, if older changes exist, or instantiates an expense register if the file is empty.
* @param fileName The name of the file that is being read from.
* @param fileDestination The name of the file that is being read from.
* @return An object of type IncomeRegister.
* @throws IOException If an error occurs while reading from the file.
*/
public ExpenseRegister loadExpenseDataFromFile(String fileName) throws IOException {
public ExpenseRegister loadExpenseDataFromFile(String fileDestination) throws IOException {
//Instantiate expense register
if (FileHandling.isEmpty(fileName)) {
if (FileHandling.isEmpty(fileDestination)) {
expenseRegister = new ExpenseRegister();
} else {
try {
expenseRegister = FileHandling.readExpenseRegisterFromFile(fileName);
expenseRegister = FileHandling.readExpenseRegisterFromFile(fileDestination);
} catch (IOException e) {
e.printStackTrace();
}
......@@ -204,18 +208,18 @@ public class MainMenu {
/**
* Method that either reads data from a file with which it fills a budget register, if this is an old budget, or instantiates a budget register if this is a new budget.
* @param fileName The name of the file that is being read from.
* @param fileDestination The name of the file that is being read from.
* @return An object of type GeneralBudget.
* @throws IOException If an error occurs while reading from the file.
*/
public GeneralBudget loadBudgetDataFromFile(String fileName) throws IOException {
public GeneralBudget loadBudgetDataFromFile(String fileDestination) throws IOException {
//Instantiate new budget
if (FileHandlingBudget.isEmpty(fileName)) {
if (FileHandlingBudget.isEmpty(fileDestination)) {
System.out.println("hey");
generalBudget = new GeneralBudget(1000);
} else { //Load previous budget
try {
generalBudget = FileHandlingBudget.readGeneralBudgetFromFile(fileName);
generalBudget = FileHandlingBudget.readGeneralBudgetFromFile(fileDestination);
} catch (IOException e) {
e.printStackTrace();
}
......
......@@ -15,7 +15,7 @@ public class FileHandlingBudget {
private static final String filePath = "src/main/resources/budgets/Budget/";
private static final String fileType = ".budget";
private static final String path = "src/main/resources/budgets/";
private static final String path = "src/main/resources/";
private static final String type = ".register";
private static final String maxAmount = "maxAmount=";
private static final String budgetAmount = "budgetAmount=";
......@@ -31,7 +31,7 @@ public class FileHandlingBudget {
* @throws IOException if an input or output exception occurred.
*/
public static void writeGeneralBudgetToFile(String fileTitle, GeneralBudget generalBudget) throws IOException {
try (BufferedWriter bw = new BufferedWriter(new FileWriter(path + FileHandlingSelectedBudget.readSelectedBudget() + "/" + fileTitle + fileType))) {
try (BufferedWriter bw = new BufferedWriter(new FileWriter(path + fileTitle + fileType))) {
//try (BufferedWriter bw = new BufferedWriter(new FileWriter(filePath + fileTitle + fileType))) {
bw.write(generalBudget.toString());
} catch (IOException ex) {
......@@ -51,7 +51,7 @@ public class FileHandlingBudget {
/*try (BufferedReader br = new BufferedReader(new FileReader(filePath + fileTitle + fileType))) {
return br.readLine() == null;
}*/
try (BufferedReader br = new BufferedReader(new FileReader(path + FileHandlingSelectedBudget.readSelectedBudget() + "/" + fileTitle + fileType))) {
try (BufferedReader br = new BufferedReader(new FileReader(path + fileTitle + fileType))) {
System.out.println("Trying budget isEmpty in: " + path + FileHandlingSelectedBudget.readSelectedBudget() + "/" + fileTitle + fileType);
return br.readLine() == null;
}
......@@ -67,7 +67,7 @@ public class FileHandlingBudget {
*/
public static boolean isNewBudget(String fileTitle) throws IOException {
try (BufferedReader br = new BufferedReader(
new FileReader(path + FileHandlingSelectedBudget.readSelectedBudget() + "/" + fileTitle + fileType))) {
new FileReader(path + fileTitle + fileType))) {
//new FileReader(filePath + fileTitle + fileType))) {
for (int i = 0; i < 2; ++i) {
......@@ -85,7 +85,7 @@ public class FileHandlingBudget {
public static void writeMaxAmountToFile(String fileDestination, String maxAmount) throws IOException {
try (BufferedWriter bw = new BufferedWriter(new FileWriter(path
+ fileDestination + "/Budget" + fileType))) {
+ fileDestination + fileType))) {
bw.write("maxAmount=" + maxAmount);
System.out.println("Max amount is...");
} catch (IOException ex) {
......@@ -107,7 +107,7 @@ public class FileHandlingBudget {
ExpenseCategory expenseCategory = null;
String budgetDescription = null;
try (BufferedReader br = new BufferedReader(new FileReader( System.getProperty("user.dir") + "/" + path + FileHandlingSelectedBudget.readSelectedBudget() + "/" + fileTitle + fileType))) {
try (BufferedReader br = new BufferedReader(new FileReader(path + fileTitle + fileType))) {
String line;
String nextLine = br.readLine();
while ((line = nextLine) != null) {
......
......@@ -8,6 +8,7 @@ import java.io.FileWriter;
import java.io.IOException;
//Disable next i dualList før income har blitt lagt til. Kanksje filter som prevneter negativ max amount (if balance < 1)
//MÅTE Å FIKSE TESTER PÅ: LA SELECTEDBUDGET.CURRENT VÆRE EN PARAMETER I METODENE
//Disable next i newBudgetbert til maxamount har blitt burkt opp
//Sette label til total balance i dualList
//HVIS CONTINUE I BUDGET PRESSES, SHOWCONFIRMATION
......@@ -34,11 +35,10 @@ public class FileHandlingBudgetArchive {
public static void writeBudgetRegisterToArchive(BudgetRegister budgetNames) throws IOException {
try (BufferedWriter bw = new BufferedWriter(new FileWriter(filePath + "Archive" + fileType))) {
System.out.println(filePath + "Archive.archive");
bw.write(budgetNames.toString());
} catch (IOException ioe) {
ioe.printStackTrace();
throw new IOException("Could not write to file: Archive.archive", ioe);
throw new IOException("Could not write to file: Archive", ioe);
}
}
......
......@@ -18,7 +18,7 @@ import no.ntnu.idatt1002.demo.data.Budget.FileHandlingSelectedBudget;
public class FileHandling{
private static final String filePath = "src/main/resources/budgets/Economics/";
private static final String path = "src/main/resources/budgets/";
private static final String path = "src/main/resources/";
private static final String fileType = ".register";
private static final String date = "date=";
private static final String description = "description=";
......@@ -35,7 +35,7 @@ public class FileHandling{
*/
public static <T extends Item>void writeItemRegisterToFile(final ItemRegister<T> itemRegister, String fileTitle) throws IOException {
//try (BufferedWriter bw = new BufferedWriter(new FileWriter(filePath + fileTitle + fileType))) {
try (BufferedWriter bw = new BufferedWriter(new FileWriter(path + FileHandlingSelectedBudget.readSelectedBudget() + "/" + fileTitle + fileType))) {
try (BufferedWriter bw = new BufferedWriter(new FileWriter(path + fileTitle + fileType))) {
if (itemRegister.isEmpty()){
bw.write("");
} else{
......@@ -61,8 +61,7 @@ public class FileHandling{
return false;
}
}*/
try (BufferedReader br = new BufferedReader(new FileReader(path + FileHandlingSelectedBudget.readSelectedBudget() + "/" + fileTitle + fileType))) {
try (BufferedReader br = new BufferedReader(new FileReader(path + fileTitle + fileType))) {
return br.readLine() == null;
}
}
......@@ -81,7 +80,7 @@ public class FileHandling{
double amount = 0;
boolean reoccuring = false;
IncomeCategory incomeCategory = null;
try (BufferedReader br = new BufferedReader(new FileReader(path + FileHandlingSelectedBudget.readSelectedBudget() + "/" + fileTitle + fileType))) {
try (BufferedReader br = new BufferedReader(new FileReader(path + fileTitle + fileType))) {
//try (BufferedReader br = new BufferedReader(new FileReader(filePath + fileTitle + fileType))) {
String line;
String nextLine = br.readLine();
......@@ -129,7 +128,7 @@ public class FileHandling{
double amount = 0;
boolean reoccuring = false;
ExpenseCategory expenseCategory = null;
try (BufferedReader br = new BufferedReader(new FileReader(path + FileHandlingSelectedBudget.readSelectedBudget() + "/" + fileTitle + fileType))) {
try (BufferedReader br = new BufferedReader(new FileReader(path + fileTitle + fileType))) {
//try (BufferedReader br = new BufferedReader(new FileReader(filePath + fileTitle + fileType))) {
String line;
String nextLine = br.readLine();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment