Howard Hinnant 1e5d2fa8dd Create local and system time types for timezone functions.
* Add sys_time.
* Add sys_days.
* Add sys_seconds.
* Add local_time.
* Add local_days.
* Add local_seconds.
* Rename day_point to sys_days.
* Rename Zone to time_zone.
2016-05-03 23:19:09 -04:00
..
2015-08-15 16:00:42 -04:00

To test: * Install tz.cpp by downloading the IANA timezone database at: http://www.iana.org/time-zones You only need the data, not the code.

  • Change the string install in tz.cpp to point to your downloaded IANA database.

  • Compile validate.cpp along with tz.cpp.

  • Run the binary and direct the terminal output to a temporary file.

  • Unzip the tzdata file that has the version corresponding to the IANA database you downloaded (e.g. tzdata2015f.txt.zip).

  • Compare the unzipped txt file with the output of your validate test program. If they are identical, the test passes, else it fails.

Miscellaneous:

You can also compare one version of the tzdatabase with another using these uncompressed text files. The text files contain for each timezone its initial state, and each {offset, abbreviation} change contained in the database up through the year 2035. As the database versions change, minor updates to the set of these transitions are typically made, typically due to changes in government policies.

The tests in this section will run much faster with optimizations cranked up.