aboutsummaryrefslogtreecommitdiffstats
path: root/test/ruby/test_time.rb
Commit message (Collapse)AuthorAgeFilesLines
* test/ruby: suppress some warningsYusuke Endoh2020-12-171-1/+5
| | | | follow up to 9908177857a28633d6279c43a1ad4dfedcb98596
* test/ruby: Check warning messages at a finer granularityNobuyoshi Nakada2020-12-171-1/+0
| | | | | Instead of suppressing all warnings wholly in each test scripts by setting `$VERBOSE` to `nil` in `setup` methods.
* Removed deprecated Time#succNobuyoshi Nakada2020-12-071-2/+1
|
* Fix Time#ceil when result should be the same as the receiverJeremy Evans2020-07-281-0/+5
| | | | Fixes [Bug #17025]
* Fixed formatted substring expansion [Bug #16767]Nobuyoshi Nakada2020-04-081-0/+7
|
* TestTime#test_memsize: skip when on GC_DEBUG卜部昌平2020-02-201-0/+1
| | | | | GC_DEBUG=1 makes this test fail because it changes the size of struct RVALUE. I don't think the test is useful then. Let's just skip.
* support multi-run for test/ruby/test_time.rbKoichi Sasada2020-01-281-0/+7
| | | | | | | | | | | | | ruby/test_time_tz.rb (not sure only this file affects) changes TZ and it seems to change internal state. This internal state change fails test_2038 and test_timegm on 2nd time execution. At this time I have no idea how to fix this issue, so I skips these tests on 2nd trial. You can try this failure with the following command without this patch. $ make test-all TESTS='--repeat-count=2 ruby/require ruby/time ruby/time_tz'
* Simplify obj2ubits checksJohn Hawthorn2020-01-131-0/+4
| | | | | If this value is less than zero, then the mask check is guaranteed to fail as well, so we might as well rely on that.
* Update test to handle x32 ABI compiled Ruby on LinuxJeremy Evans2019-10-171-0/+1
| | | | | | Suggestion from Laurence Parry. Fixes [Bug #16030]
* Separate Time#inspect from to_s and show subsec [Feature #15958]NARUSE, Yui2019-09-191-0/+24
|
* Relaxed delta of nanosec from Float timeNobuyoshi Nakada2019-07-131-1/+1
|
* Marshal distant past/futureNobuyoshi Nakada2019-06-191-0/+10
| | | | [Feature #15160]
* Add `Time#ceil`.manga_osyo2019-05-231-0/+26
| | | | Closes: https://github.com/ruby/ruby/pull/2133
* Add `Time#floor`nobu2019-04-201-0/+26
| | | | | | | | | [Feature #15653] [Fix GH-2092] From: manga_osyo <manga.osyo@gmail.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* time.c: zone in fixoff modenobu2018-12-241-0/+4
| | | | | | | | | * time.c (time_set_utc_offset): reset zone when setting to fixoff mode. while previously TZMODE_SET_FIXOFF has reset it always, the zone is kept for loaded zone since r65025. [ruby-core:90627] [Bug #15439] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Normalize month-mday before finding epochnaruse2018-11-251-0/+23
| | | | | | | Especially over the year 2038, 30 Feb and so on may cause odd behavior on validating found epoch with given year-month-day [Bug #15340] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* support theap for T_HASH. [Feature #14989]ko12018-10-301-0/+1
| | | | | | | | | | | | | | | | | * hash.c, internal.h: support theap for small Hash. Introduce RHASH_ARRAY (li_table) besides st_table and small Hash (<=8 entries) are managed by an array data structure. This array data can be managed by theap. If st_table is needed, then converting array data to st_table data. For st_table using code, we prepare "stlike" APIs which accepts hash value and are very similar to st_ APIs. This work is based on the GSoC achievement by tacinight <tacingiht@gmail.com> and refined by ko1. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/ruby (*no_hidden_garbage): disable GC and skip if multi-threadednormal2018-07-081-0/+3
| | | | | | | | | | Any single object allocation can reduce object count, and object counts are global, so multi-threading leads to unpredictable results. See also similar commits: r60699 and r62608 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* skip a test if another Thread is running.ko12018-02-281-0/+2
| | | | | | | | | * test/ruby/test_time.rb (test_strftime_no_hidden_garbage): this test checks no object allocation while specific process, however another thread can generate objects. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Time#at receives 3rd argument which specifies the unit of 2nd argument ↵naruse2017-09-251-0/+11
| | | | | | [Feature #13919] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* time.c: preserve marshalled timezonenobu2017-07-041-1/+3
| | | | | | | | | * time.c (time_add): preserve timezone name restored by Marshal. [ruby-core:81892] [Bug #13710] * time.c (time_mload): reset localtime if having timezone. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* define PACKED_STRUCT_UNALIGNED correctlynormal2017-04-221-0/+17
| | | | | | | | | | | | | | | | | | | Defining PACKED_STRUCT_UNALIGNED to a noop in ruby/config.h (via `configure') prevents the definition in include/ruby/defines.h from working This should have been fixed in r46914, so there's a size regression for some objects since Ruby 2.2+. I do not believe we can backport to existing releases, either, since it can affect ABI. Add a test for Time objects on common x86-based platforms to check for future regressions. * configure.in: remove PACKED_STRUCT_UNALIGNED definition * test/ruby/test_time.rb (test_memsize): new test for x86 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_time.rb: use UTCnobu2017-02-011-1/+1
| | | | | | | * test/ruby/test_time.rb (test_strftime_no_hidden_garbage): fix failure due to timezone offset. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57494 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* time.c (time_strftime): avoid garbage in common casenormal2017-01-311-0/+11
| | | | | | | | | | strftime format strings which are dynamically-generated will benefit from avoiding garbage, here. * time.c (time_strftime): use rb_str_tmp_frozen_{acquire,release} * test/ruby/test_time.rb (test_strftime_no_hidden_garbage): new test git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* time.c: refine num_exact error messagenobu2016-12-211-0/+10
| | | | | | | * time.c (num_exact): show the original argument when conversion failed, instead of intermediate nil. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57140 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix vtm_add_offset yday on last day of year.akr2016-11-051-0/+17
| | | | | | | | | * time.c (vtm_add_offset): Fix yday on last day of year. [ruby-core:72878] [Bug #11994] Fixed by Andrew White. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Use qualified namesnobu2016-08-301-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* strftime.c: Bignum conversionnobu2016-03-241-0/+9
| | | | | | | * strftime.c (format_value): convert from Bignum to String, instead of rb_str_format. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54253 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* strftime.c: set buffer lengthnobu2016-03-241-1/+1
| | | | | | | * strftime.c (FMTV): set the buffer length before appending to keep just put part. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* strftime.c: fix FMTVnobu2016-03-241-0/+3
| | | | | | | | * strftime.c (FMT_PADDING): extract format for padding. * strftime.c (FMT_PRECISION): extract precision formula. * strftime.c (FMTV): append formatted string to expand the result. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* strftime.c: case conversionnobu2016-03-241-0/+7
| | | | | | | * strftime.c (STRFTIME): deal with case conversion flags for recursive formats. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54245 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* strftime.c: fix false failurenobu2016-03-241-0/+2
| | | | | | | | * strftime.c (rb_strftime_with_timespec): remove unnecessary check, as `s` equals to `endp` when recursed STRFTIME resized the capacity same as the size. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* strftime.c: format in Stringnobu2016-03-231-2/+1
| | | | | | | | | | | | * strftime.c (rb_strftime_with_timespec): append formatted results to the given string with expanding, and also deal with NUL chars. * strftime.c (rb_strftime, rb_strftime_timespec): return formatted string, not the length put in the given buffer. * time.c (rb_strftime_alloc): no longer needs to retry with reallocating buffers. * time.c (time_strftime): no longer needs to split by NUL chars. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54236 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add frozen_string_literal: false for all filesnaruse2015-12-161-0/+1
| | | | | | When you change this to true, you may need to add more tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* preserve encodings in error messagesnobu2015-09-281-0/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51962 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * time.c: zone encoding should be US-ASCII if all 7-bits. Fix r46907.eregon2015-02-221-3/+6
| | | | | | * test/ruby/test_time.rb, test/ruby/test_time_tz.rb: Update tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_time.rb: Add test for getlocal(nil). Seeheadius2014-12-151-0/+11
| | | | | | jruby/jruby#2310. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* add an assertion.akr2014-11-151-0/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48452 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/lib/envutil.rb: Moved from test/ruby/.akr2014-11-131-1/+0
| | | | | | | | | | | | | | * test/lib/find_executable.rb: Ditto. * test/lib/memory_status.rb: Ditto. * test/lib/test/unit.rb: require envutil. * test/: Don't require envutil in test files. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * time.c: raise exception when minutes of utc_offset is out of 00-59.glass2014-09-211-0/+1
| | | | | | | | | | patch is from Kenichi Kamiya. [ruby-dev:47539] [Bug #8679] * test/ruby/test_time.rb: test for above. patch is from Kenichi Kamiya. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * time.c (rb_time_unmagnify_to_float): Avoid double rounding.akr2014-08-261-0/+6
| | | | | | | | | Reported by Tsuyoshi Sawada. https://bugs.ruby-lang.org/issues/10135#note-1 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47289 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* time.c: unnecessary encodingnobu2014-07-231-0/+1
| | | | | | | * time.c (time_zone_name): remove unnecessary encoding and conversion if it is 7bit-ascii only. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_time.rb: encoding of Time#zonenobu2014-07-231-3/+10
| | | | | | | * test/ruby/test_time.rb (assert_zone_encoding): encoding of Time#zone is not locale, but the default internal. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* time.c: fix underflow of unsigned integersnobu2014-05-021-0/+1
| | | | | | | * time.c (vtm_add_offset): get rid of underflow of unsigned integers. fix up r45155. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_time.rb: extended the timeout span and reduce the loop count.usa2014-03-251-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45406 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_time.rb: use portable time zone. see [ruby-core:61671] [Bug ↵usa2014-03-251-1/+1
| | | | | | #9652] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_time.rb: arguments ordernobu2014-03-241-1/+1
| | | | | | | * test/ruby/test_time.rb (TestTime#test_marshal_zone_gc): fix the order of arguments. expected value should come first. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45396 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Asia/Tokyo is more portable value for ENV["TZ"] [Bug #9652]naruse2014-03-241-1/+1
| | | | | | FreeBSD doesn't accept "Japan". git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* time.c: freeze and preserve marshal-loaded time zonenormal2014-03-191-0/+15
| | | | | | | | | | | | We need to prevent vtm.zone from pointing to a GC-ed string buffer. The rb_copy_generic_ivar call misses it because get_attr deleted it. Thanks to nobu for the rb_str_new_frozen suggestion. * time.c (time_mload): freeze and preserve marshal-loaded time zone * test/ruby/test_time.rb: add test for GC on loaded object [Bug #9652] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby: get rid of warnings.usa2014-03-051-1/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45273 b2dd03c8-39d4-4d8f-98ff-823fe69b080e