Release 1.2.1 #19

Merged
Cedric merged 6 commits from dev into main 2026-07-08 11:23:25 +02:00
2 changed files with 21 additions and 0 deletions
Showing only changes of commit a3d66129ac - Show all commits
@@ -69,6 +69,10 @@ public class HistoryService {
addIfChanged(changes, "personalUseAmount", before.getPersonalUseAmount(), after.getPersonalUseAmount());
addIfChanged(changes, "otherPersonAmount", before.getOtherPersonAmount(), after.getOtherPersonAmount());
addIfChanged(changes, "category", before.getCategory(), after.getCategory());
addIfChanged(changes, "splitMode",
before.getSplitMode() == null ? null : before.getSplitMode().name(),
after.getSplitMode() == null ? null : after.getSplitMode().name());
addIfChanged(changes, "splitPercentage", before.getSplitPercentage(), after.getSplitPercentage());
addIfChanged(changes, "date", before.getDate(), after.getDate());
addIfChanged(changes, "owner",
before.getOwner() == null ? null : before.getOwner().getUsername(),
@@ -24,6 +24,7 @@ import de.zendric.app.xpensely_server.model.ExpenseHistoryEntry;
import de.zendric.app.xpensely_server.model.ExpenseList;
import de.zendric.app.xpensely_server.model.FieldChange;
import de.zendric.app.xpensely_server.model.HistoryEntryType;
import de.zendric.app.xpensely_server.model.SplitMode;
import de.zendric.app.xpensely_server.repo.ExpenseHistoryRepository;
import de.zendric.app.xpensely_server.services.HistoryService;
@@ -86,6 +87,22 @@ class HistoryServiceTest {
assertThat(changes).containsExactly(new FieldChange("owner", "alice", "ben"));
}
@Test
void diff_reportsSplitModeAndPercentageChanges() {
Expense before = new Expense();
before.setSplitMode(SplitMode.DETAILED);
before.setSplitPercentage(null);
Expense after = new Expense();
after.setSplitMode(SplitMode.PERCENTAGE);
after.setSplitPercentage(70);
List<FieldChange> changes = service.diff(before, after);
assertThat(changes).contains(new FieldChange("splitMode", "DETAILED", "PERCENTAGE"));
assertThat(changes).contains(new FieldChange("splitPercentage", null, "70"));
}
@Test
void diff_nullToValue_isReported() {
Expense before = expense("Taxi", 9.0, null, LocalDate.of(2026, 7, 1), user(1L, "alice"));