-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathExpenseRepositoryTest.java
More file actions
70 lines (57 loc) · 2.34 KB
/
ExpenseRepositoryTest.java
File metadata and controls
70 lines (57 loc) · 2.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package com.sda.ironhack.Personal.Finance.Tracker.webApp.repos;
import com.sda.ironhack.Personal.Finance.Tracker.webApp.entities.Expense;
import com.sda.ironhack.Personal.Finance.Tracker.webApp.entities.Income;
import com.sda.ironhack.Personal.Finance.Tracker.webApp.entities.User;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.time.LocalDate;
import java.util.List;
import static org.junit.jupiter.api.Assertions.*;
@SpringBootTest
class ExpenseRepositoryTest {
@Autowired
private ExpenseRepository expenseRepository;
@Autowired
private UserRepository userRepository;
private Expense expense1;
private Expense expense2;
private Expense expense3;
private User user1;
@Autowired
private IncomeRepository incomeRepository;
@BeforeEach
void setUp() {
user1 = new User("Nawaf", "Changan", "alotayf@legend.com", 10);
userRepository.save(user1);
LocalDate date1 = LocalDate.of(2023, 12, 11);
LocalDate date2 = LocalDate.of(2023, 12, 12);
LocalDate date3 = LocalDate.of(2023, 12, 13);
Expense expense1 = new Expense(user1,"Food",230.12,date1);
Expense expense2 = new Expense(user1,"Sport things",121,date2);
Expense expense3 = new Expense(user1,"Dunkin dounts",12.12,date3);
expenseRepository.save(expense1);
expenseRepository.save(expense2);
expenseRepository.save(expense3);
}
@AfterEach
void tearDown(){
incomeRepository.deleteAll();
}
@Test
public void getAllExpenses() {
List<Expense> expenses = expenseRepository.findAll();
}
@Test
public void getAllExpensesByUserId(){
// Retrieve a user from the database based on userIdToTest
User userFromDb = userRepository.findByUserId(user1.getUserId());
// Retrieve incomes for the specified user
List<Expense> expenses = expenseRepository.findAllByUser(userFromDb);
// Add your assertions here to validate the expected results
assertNotNull(expenses);
assertEquals(expenses, expenseRepository.findAllByUser(userFromDb));
}
}