Skip to content

DST testing across many timezones? #556

@justingrant

Description

@justingrant

Is Temporal testing its DST support across many different timezones? I'm asking because I was impressed with the CI test suite of date-fns which run all tests against hundreds of time zones for every PR. I used this suite to find a subtle bug that only reproed in Atlantic/Azores.

If Temporal isn't doing something like this, it should! (and might be able to borrow the implementation from date-fns)

For quick (non-CI) testing, I like this advice from https://www.npmjs.com/package/timezone-mock#supported-timezones:

Currently supported timezones are:

  • US/Pacific
  • US/Eastern
  • Brazil/East
  • UTC
  • Europe/London
  • Australia/Adelaide

I found that testing on these three were enough to ensure code worked in all timezones (important factor is to test on a timezone with Daylight Saving Time if your local timezone does not). Brazil/East has the unique characteristic of having the DST transition happen right at midnight, so code that sets a Date object to midnight on a particular day and then does operations on that Date object is especially vulnerable in that timezone. Europe/London is included as a timezone that is a positive offset from UTC, and Australia/Adelaide as one that has a large positive and non-integral offset (+9.5/+10.5).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions