Skip to main content
Glama
pshempel

MCP Time Server Node

by pshempel
holiday-automated-verification.md2.4 kB
# Automated Holiday Verification **Created**: 2025-01-28 **Purpose**: Document the automated verification approach for holiday data ## Overview We've implemented automated tests that verify our holiday data against known correct dates. This ensures our holiday calculations remain accurate over time. ## Test Structure ### Location - Test file: `/tests/data/holidays.verification.test.ts` - 59 tests covering multiple years and countries ### What's Tested 1. **2025 Holiday Verification** - All holidays for US, UK, CA, AU - Verifies exact dates match expected values - Handles naming variations (e.g., "Juneteenth" vs "Juneteenth National Independence Day") 2. **2026 Holiday Verification** - US holidays to verify year-to-year consistency - Ensures weekday calculations work across years 3. **Holiday Type Verification** - Fixed dates (e.g., July 4) - Nth weekday (e.g., 3rd Monday in January) - Last weekday (e.g., last Monday in May) - Easter-based (e.g., Good Friday) - Special rules (e.g., Victoria Day) 4. **Multi-year Consistency** - Holiday counts remain stable - Weekday holidays always fall on correct day ## Running Verification ```bash # Run holiday verification tests npm test holidays.verification # Run all holiday tests npm test holidays ``` ## Updating Expected Data When updating expected holiday data: 1. Verify dates against official sources: - US: https://www.opm.gov/policy-data-oversight/pay-leave/federal-holidays/ - UK: https://www.gov.uk/bank-holidays - CA: https://www.canada.ca/en/revenue-agency/services/tax/public-holidays.html - AU: https://www.australia.gov.au/about-australia/special-dates-and-events/public-holidays 2. Update the `expectedHolidays20XX` objects in the test file 3. Add alternate names if official names differ from our implementation 4. Run tests to ensure all pass ## Benefits 1. **Automated Verification**: No need for manual checking 2. **Early Detection**: Catches calculation errors immediately 3. **Documentation**: Expected dates serve as documentation 4. **Confidence**: Know our data is correct without external dependencies ## Future Enhancements 1. Add more years of expected data 2. Include weekend observation rules 3. Add Venezuela and Chile when implemented 4. Consider integrating with external APIs for automatic updates 5. Add CI/CD integration to run annually

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/pshempel/mcp-time-server-node'

If you have feedback or need assistance with the MCP directory API, please join our Discord server