Skip to content

Commit

Permalink
Merge pull request #974 from 18F/staging
Browse files Browse the repository at this point in the history
[Tech Debt] Really fix off-by-one error in yearly calculations -- Production
  • Loading branch information
levinmr authored Feb 26, 2025
2 parents 42d2d56 + 3b07904 commit 07d5c93
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 22 deletions.
10 changes: 4 additions & 6 deletions src/google_analytics/query_builder.js
Original file line number Diff line number Diff line change
Expand Up @@ -62,16 +62,14 @@ function _mapStringToDateRange(rangeString) {
);
const daysSinceStartOfPreviousYear =
differenceInDays(startOfCurrentYear(), startOfPreviousYear()) +
daysSinceStartOfCurrentYear -
1;
daysSinceStartOfCurrentYear;
const daysSinceStartOfCurrentFiscalYear = differenceInDays(
today(),
startOfCurrentFiscalYear(),
);
const daysSinceStartOfPreviousFiscalYear =
differenceInDays(startOfCurrentFiscalYear(), startOfPreviousFiscalYear()) +
daysSinceStartOfCurrentFiscalYear -
1;
daysSinceStartOfCurrentFiscalYear;
const descriptorToDateRangeHashMap = {
yesterday: { startDate: "yesterday", endDate: "yesterday" },
"7-days": { startDate: "7daysAgo", endDate: "yesterday" },
Expand All @@ -87,11 +85,11 @@ function _mapStringToDateRange(rangeString) {
},
"previous-year": {
startDate: `${daysSinceStartOfPreviousYear}daysAgo`,
endDate: `${daysSinceStartOfCurrentYear}daysAgo`,
endDate: `${daysSinceStartOfCurrentYear + 1}daysAgo`,
},
"previous-fiscal-year": {
startDate: `${daysSinceStartOfPreviousFiscalYear}daysAgo`,
endDate: `${daysSinceStartOfCurrentFiscalYear}daysAgo`,
endDate: `${daysSinceStartOfCurrentFiscalYear + 1}daysAgo`,
},
};

Expand Down
32 changes: 16 additions & 16 deletions test/google_analytics/query_builder.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -74,20 +74,20 @@ describe("GoogleAnalyticsQueryBuilder", () => {
property: `properties/${appConfig.account.ids}`,
dateRanges: [
{
endDate: "yesterday",
startDate: "49daysAgo",
endDate: "yesterday", // 2/18/2025
startDate: "49daysAgo", // 1/1/2025
},
{
endDate: "yesterday",
startDate: "141daysAgo",
endDate: "yesterday", // 2/18/2025
startDate: "141daysAgo", // 10/1/2024
},
{
endDate: "49daysAgo",
startDate: "414daysAgo",
endDate: "50daysAgo", // 12/31/2024
startDate: "415daysAgo", // 1/1/2024
},
{
endDate: "141daysAgo",
startDate: "506daysAgo",
endDate: "142daysAgo", // 9/30/2024
startDate: "507daysAgo", // 10/1/2023
},
],
},
Expand Down Expand Up @@ -159,20 +159,20 @@ describe("GoogleAnalyticsQueryBuilder", () => {
property: `properties/${appConfig.account.ids}`,
dateRanges: [
{
endDate: "yesterday",
startDate: "291daysAgo",
endDate: "yesterday", // 10/18/2025
startDate: "291daysAgo", // 1/1/2025
},
{
endDate: "yesterday",
startDate: "18daysAgo",
endDate: "yesterday", // 10/18/2025
startDate: "18daysAgo", // 10/1/2025
},
{
endDate: "291daysAgo",
startDate: "656daysAgo",
endDate: "292daysAgo", // 12/31/2024
startDate: "657daysAgo", // 1/1/2024
},
{
endDate: "18daysAgo",
startDate: "382daysAgo",
endDate: "19daysAgo", // 9/30/2025
startDate: "383daysAgo", // 10/1/2024
},
],
},
Expand Down

0 comments on commit 07d5c93

Please sign in to comment.