-
Notifications
You must be signed in to change notification settings - Fork 8
[Test] Add Leap-Year Boundary Test Case to Habit Streak Test Suite #69
Copy link
Copy link
Open
Labels
accessibilityAccessibility / a11y improvements (ARIA attributes, keyboard navigation, contrast)Accessibility / a11y improvements (ARIA attributes, keyboard navigation, contrast)area:coreCore domain logic, shared arithmetic helpers, security, and utility servicesCore domain logic, shared arithmetic helpers, security, and utility servicesbeginner friendlyAccessible task suitable for developers new to open sourceAccessible task suitable for developers new to open sourcebugConfirmed defect, malfunctioning behavior, or validation errorConfirmed defect, malfunctioning behavior, or validation errorcommunityCommunity-driven enhancement, UX feedback, or resource sharingCommunity-driven enhancement, UX feedback, or resource sharingcontributions-welcomeCommunity contributions are explicitly encouraged for this issueCommunity contributions are explicitly encouraged for this issuedifficulty:beginnerBeginner-friendly task with single-file scope and clear acceptance criteriaBeginner-friendly task with single-file scope and clear acceptance criteriadifficulty:easyStraightforward task requiring basic familiarity with React/TypeScriptStraightforward task requiring basic familiarity with React/TypeScriptenhancementSmall improvement, refinement, or feature expansionSmall improvement, refinement, or feature expansiongood first issueCurated, self-contained task suitable for first-time contributorsCurated, self-contained task suitable for first-time contributorshacktoberfestEligible high-quality task for open-source community eventsEligible high-quality task for open-source community eventshelp wantedMaintainer is actively welcoming community contributions on this issueMaintainer is actively welcoming community contributions on this issuetestingUnit tests, test matrix expansion, validation fixtures, and regression coverageUnit tests, test matrix expansion, validation fixtures, and regression coveragetime:<15mQuick fix, typo correction, or minor tweak (< 15 minutes)Quick fix, typo correction, or minor tweak (< 15 minutes)up-for-grabsUnassigned issue that is available for any contributorUnassigned issue that is available for any contributor
Description
Activity
Metadata
Metadata
Assignees
Labels
accessibilityAccessibility / a11y improvements (ARIA attributes, keyboard navigation, contrast)Accessibility / a11y improvements (ARIA attributes, keyboard navigation, contrast)area:coreCore domain logic, shared arithmetic helpers, security, and utility servicesCore domain logic, shared arithmetic helpers, security, and utility servicesbeginner friendlyAccessible task suitable for developers new to open sourceAccessible task suitable for developers new to open sourcebugConfirmed defect, malfunctioning behavior, or validation errorConfirmed defect, malfunctioning behavior, or validation errorcommunityCommunity-driven enhancement, UX feedback, or resource sharingCommunity-driven enhancement, UX feedback, or resource sharingcontributions-welcomeCommunity contributions are explicitly encouraged for this issueCommunity contributions are explicitly encouraged for this issuedifficulty:beginnerBeginner-friendly task with single-file scope and clear acceptance criteriaBeginner-friendly task with single-file scope and clear acceptance criteriadifficulty:easyStraightforward task requiring basic familiarity with React/TypeScriptStraightforward task requiring basic familiarity with React/TypeScriptenhancementSmall improvement, refinement, or feature expansionSmall improvement, refinement, or feature expansiongood first issueCurated, self-contained task suitable for first-time contributorsCurated, self-contained task suitable for first-time contributorshacktoberfestEligible high-quality task for open-source community eventsEligible high-quality task for open-source community eventshelp wantedMaintainer is actively welcoming community contributions on this issueMaintainer is actively welcoming community contributions on this issuetestingUnit tests, test matrix expansion, validation fixtures, and regression coverageUnit tests, test matrix expansion, validation fixtures, and regression coveragetime:<15mQuick fix, typo correction, or minor tweak (< 15 minutes)Quick fix, typo correction, or minor tweak (< 15 minutes)up-for-grabsUnassigned issue that is available for any contributorUnassigned issue that is available for any contributor
good first issue,testing,difficulty:beginner,area:coretests/habits-routines.test.tsWhy This Matters
Habit streak calculations must correctly handle February 28 to February 29 transitions during leap years without resetting the streak to zero.
Current Behavior
tests/habits-routines.test.tsvalidates daily and weekly habit streaks, but lacks an explicit leap-year boundary test case spanning2028-02-28to2028-02-29and2028-03-01.Requested Change
Add a new test case in
tests/habits-routines.test.tsverifying that completing a daily habit on Feb 28, Feb 29 (leap day), and Mar 1 calculates a continuous 3-day streak.Acceptance Criteria
tests/habits-routines.test.ts.npm run test:file -- tests/habits-routines.test.ts.Verification
Contributor Notes
Follow the existing test patterns in
tests/habits-routines.test.ts.