mirror of
https://github.com/actualbudget/actual.git
synced 2026-05-06 15:12:35 -05:00
Fix/spending report date range save (#7672)
* Fix saved spending report date range * Add release note
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
import { describe, expect, it } from 'vitest';
|
||||
|
||||
import { calculateSpendingReportTimeRange } from './reportRanges';
|
||||
|
||||
// In test mode, monthUtils.currentMonth() returns '2017-01'
|
||||
describe('calculateSpendingReportTimeRange', () => {
|
||||
it('preserves the saved compare month for live average reports', () => {
|
||||
const [compare, compareTo] = calculateSpendingReportTimeRange({
|
||||
compare: '2016-12',
|
||||
isLive: true,
|
||||
mode: 'average',
|
||||
});
|
||||
|
||||
expect(compare).toBe('2016-12');
|
||||
expect(compareTo).toBe('2016-12');
|
||||
});
|
||||
|
||||
it('preserves the saved compare month for live budget reports', () => {
|
||||
const [compare, compareTo] = calculateSpendingReportTimeRange({
|
||||
compare: '2016-12',
|
||||
isLive: true,
|
||||
mode: 'budget',
|
||||
});
|
||||
|
||||
expect(compare).toBe('2016-12');
|
||||
expect(compareTo).toBe('2016-12');
|
||||
});
|
||||
|
||||
it('preserves the saved compare months for live single month reports', () => {
|
||||
const [compare, compareTo] = calculateSpendingReportTimeRange({
|
||||
compare: '2016-12',
|
||||
compareTo: '2016-11',
|
||||
isLive: true,
|
||||
mode: 'single-month',
|
||||
});
|
||||
|
||||
expect(compare).toBe('2016-12');
|
||||
expect(compareTo).toBe('2016-11');
|
||||
});
|
||||
|
||||
it('defaults live average reports to the current month without a saved compare month', () => {
|
||||
const [compare, compareTo] = calculateSpendingReportTimeRange({
|
||||
isLive: true,
|
||||
mode: 'average',
|
||||
});
|
||||
|
||||
expect(compare).toBe('2017-01');
|
||||
expect(compareTo).toBe('2017-01');
|
||||
});
|
||||
});
|
||||
@@ -249,7 +249,12 @@ export function calculateSpendingReportTimeRange({
|
||||
mode?: 'budget' | 'average' | 'single-month';
|
||||
}): [string, string] {
|
||||
if (['budget', 'average'].includes(mode) && isLive) {
|
||||
return [monthUtils.currentMonth(), monthUtils.currentMonth()];
|
||||
const month = compare ?? monthUtils.currentMonth();
|
||||
return [month, month];
|
||||
}
|
||||
|
||||
if (mode === 'single-month' && isLive && compare) {
|
||||
return [compare, compareTo ?? monthUtils.subMonths(compare, 1)];
|
||||
}
|
||||
|
||||
const [start, end] = calculateTimeRange(
|
||||
|
||||
6
upcoming-release-notes/7672.md
Normal file
6
upcoming-release-notes/7672.md
Normal file
@@ -0,0 +1,6 @@
|
||||
---
|
||||
category: Bugfixes
|
||||
authors: [Aurora-Flipped]
|
||||
---
|
||||
|
||||
Fixed Spending reports not preserving saved date range selections.
|
||||
Reference in New Issue
Block a user