diff options
author | eregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-09-20 20:18:52 +0000 |
---|---|---|
committer | eregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-09-20 20:18:52 +0000 |
commit | 1d15d5f08032acf1b7bceacbb450d617ff6e0931 (patch) | |
tree | a3785a79899302bc149e4a6e72f624ac27dc1f10 /spec/rubyspec/shared/time | |
parent | 75bfc6440d595bf339007f4fb280fd4d743e89c1 (diff) |
Move spec/rubyspec to spec/ruby for consistency
* Other ruby implementations use the spec/ruby directory.
[Misc #13792] [ruby-core:82287]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'spec/rubyspec/shared/time')
-rw-r--r-- | spec/rubyspec/shared/time/strftime_for_date.rb | 275 | ||||
-rw-r--r-- | spec/rubyspec/shared/time/strftime_for_time.rb | 173 |
2 files changed, 0 insertions, 448 deletions
diff --git a/spec/rubyspec/shared/time/strftime_for_date.rb b/spec/rubyspec/shared/time/strftime_for_date.rb deleted file mode 100644 index f126c5a323..0000000000 --- a/spec/rubyspec/shared/time/strftime_for_date.rb +++ /dev/null @@ -1,275 +0,0 @@ -# Shared for Time, Date and DateTime, testing only date components (smallest unit is day) - -describe :strftime_date, shared: true do - before :all do - @d200_4_6 = @new_date[200, 4, 6] - @d2000_4_6 = @new_date[2000, 4, 6] - @d2000_4_9 = @new_date[2000, 4, 9] - @d2000_4_10 = @new_date[2000, 4, 10] - @d2009_9_18 = @new_date[2009, 9, 18] - end - - # Per conversion specifier, not combining - it "should be able to print the full day name" do - @d2000_4_6.strftime("%A").should == "Thursday" - @d2009_9_18.strftime('%A').should == 'Friday' - end - - it "should be able to print the short day name" do - @d2000_4_6.strftime("%a").should == "Thu" - @d2009_9_18.strftime('%a').should == 'Fri' - end - - it "should be able to print the full month name" do - @d2000_4_6.strftime("%B").should == "April" - @d2009_9_18.strftime('%B').should == 'September' - end - - it "should be able to print the short month name" do - @d2000_4_6.strftime("%b").should == "Apr" - @d2000_4_6.strftime("%h").should == "Apr" - @d2000_4_6.strftime("%b").should == @d2000_4_6.strftime("%h") - @d2009_9_18.strftime('%b').should == 'Sep' - end - - it "should be able to print the century" do - @d2000_4_6.strftime("%C").should == "20" - end - - it "should be able to print the month day with leading zeroes" do - @d2000_4_6.strftime("%d").should == "06" - @d2009_9_18.strftime('%d').should == '18' - end - - it "should be able to print the month day with leading spaces" do - @d2000_4_6.strftime("%e").should == " 6" - end - - it "should be able to print the commercial year with leading zeroes" do - @d2000_4_6.strftime("%G").should == "2000" - @d200_4_6.strftime("%G").should == "0200" - end - - it "should be able to print the commercial year with only two digits" do - @d2000_4_6.strftime("%g").should == "00" - @d200_4_6.strftime("%g").should == "00" - end - - it "should be able to print the hour with leading zeroes (hour is always 00)" do - @d2000_4_6.strftime("%H").should == "00" - end - - it "should be able to print the hour in 12 hour notation with leading zeroes" do - @d2000_4_6.strftime("%I").should == "12" - end - - it "should be able to print the julian day with leading zeroes" do - @d2000_4_6.strftime("%j").should == "097" - @d2009_9_18.strftime('%j').should == '261' - end - - it "should be able to print the hour in 24 hour notation with leading spaces" do - @d2000_4_6.strftime("%k").should == " 0" - end - - it "should be able to print the hour in 12 hour notation with leading spaces" do - @d2000_4_6.strftime("%l").should == "12" - end - - it "should be able to print the minutes with leading zeroes" do - @d2000_4_6.strftime("%M").should == "00" - end - - it "should be able to print the month with leading zeroes" do - @d2000_4_6.strftime("%m").should == "04" - @d2009_9_18.strftime('%m').should == '09' - end - - it "should be able to add a newline" do - @d2000_4_6.strftime("%n").should == "\n" - end - - it "should be able to show AM/PM" do - @d2000_4_6.strftime("%P").should == "am" - end - - it "should be able to show am/pm" do - @d2000_4_6.strftime("%p").should == "AM" - end - - it "should be able to show the number of seconds with leading zeroes" do - @d2000_4_6.strftime("%S").should == "00" - end - - it "should be able to show the number of seconds since the unix epoch for a date" do - @d2000_4_6.strftime("%s").should == "954979200" - end - - it "should be able to add a tab" do - @d2000_4_6.strftime("%t").should == "\t" - end - - it "should be able to show the week number with the week starting on Sunday (%U) and Monday (%W)" do - @d2000_4_6.strftime("%U").should == "14" # Thursday - @d2000_4_6.strftime("%W").should == "14" - - @d2000_4_9.strftime("%U").should == "15" # Sunday - @d2000_4_9.strftime("%W").should == "14" - - @d2000_4_10.strftime("%U").should == "15" # Monday - @d2000_4_10.strftime("%W").should == "15" - - # start of the year - saturday_first = @new_date[2000,1,1] - saturday_first.strftime("%U").should == "00" - saturday_first.strftime("%W").should == "00" - - sunday_second = @new_date[2000,1,2] - sunday_second.strftime("%U").should == "01" - sunday_second.strftime("%W").should == "00" - - monday_third = @new_date[2000,1,3] - monday_third.strftime("%U").should == "01" - monday_third.strftime("%W").should == "01" - - sunday_9th = @new_date[2000,1,9] - sunday_9th.strftime("%U").should == "02" - sunday_9th.strftime("%W").should == "01" - - monday_10th = @new_date[2000,1,10] - monday_10th.strftime("%U").should == "02" - monday_10th.strftime("%W").should == "02" - - # middle of the year - some_sunday = @new_date[2000,8,6] - some_sunday.strftime("%U").should == "32" - some_sunday.strftime("%W").should == "31" - some_monday = @new_date[2000,8,7] - some_monday.strftime("%U").should == "32" - some_monday.strftime("%W").should == "32" - - # end of year, and start of next one - saturday_30th = @new_date[2000,12,30] - saturday_30th.strftime("%U").should == "52" - saturday_30th.strftime("%W").should == "52" - - sunday_last = @new_date[2000,12,31] - sunday_last.strftime("%U").should == "53" - sunday_last.strftime("%W").should == "52" - - monday_first = @new_date[2001,1,1] - monday_first.strftime("%U").should == "00" - monday_first.strftime("%W").should == "01" - end - - it "should be able to show the commercial week day" do - @d2000_4_9.strftime("%u").should == "7" - @d2000_4_10.strftime("%u").should == "1" - end - - it "should be able to show the commercial week with %V" do - @d2000_4_9.strftime("%V").should == "14" - @d2000_4_10.strftime("%V").should == "15" - end - - # %W: see %U - - it "should be able to show the week day" do - @d2000_4_9.strftime("%w").should == "0" - @d2000_4_10.strftime("%w").should == "1" - @d2009_9_18.strftime('%w').should == '5' - end - - it "should be able to show the year in YYYY format" do - @d2000_4_9.strftime("%Y").should == "2000" - @d2009_9_18.strftime('%Y').should == '2009' - end - - it "should be able to show the year in YY format" do - @d2000_4_9.strftime("%y").should == "00" - @d2009_9_18.strftime('%y').should == '09' - end - - it "should be able to show the timezone of the date with a : separator" do - @d2000_4_9.strftime("%z").should == "+0000" - end - - it "should be able to escape the % character" do - @d2000_4_9.strftime("%%").should == "%" - end - - # Combining conversion specifiers - it "should be able to print the date in full" do - @d2000_4_6.strftime("%c").should == "Thu Apr 6 00:00:00 2000" - @d2000_4_6.strftime("%c").should == @d2000_4_6.strftime('%a %b %e %H:%M:%S %Y') - end - - it "should be able to print the date with slashes" do - @d2000_4_6.strftime("%D").should == "04/06/00" - @d2000_4_6.strftime("%D").should == @d2000_4_6.strftime('%m/%d/%y') - end - - it "should be able to print the date as YYYY-MM-DD" do - @d2000_4_6.strftime("%F").should == "2000-04-06" - @d2000_4_6.strftime("%F").should == @d2000_4_6.strftime('%Y-%m-%d') - end - - it "should be able to show HH:MM for a date" do - @d2000_4_6.strftime("%R").should == "00:00" - @d2000_4_6.strftime("%R").should == @d2000_4_6.strftime('%H:%M') - end - - it "should be able to show HH:MM:SS AM/PM for a date" do - @d2000_4_6.strftime("%r").should == "12:00:00 AM" - @d2000_4_6.strftime("%r").should == @d2000_4_6.strftime('%I:%M:%S %p') - end - - it "should be able to show HH:MM:SS" do - @d2000_4_6.strftime("%T").should == "00:00:00" - @d2000_4_6.strftime("%T").should == @d2000_4_6.strftime('%H:%M:%S') - end - - it "should be able to show HH:MM:SS" do - @d2000_4_6.strftime("%X").should == "00:00:00" - @d2000_4_6.strftime("%X").should == @d2000_4_6.strftime('%H:%M:%S') - end - - it "should be able to show MM/DD/YY" do - @d2000_4_6.strftime("%x").should == "04/06/00" - @d2000_4_6.strftime("%x").should == @d2000_4_6.strftime('%m/%d/%y') - end - - # GNU modificators - it "supports GNU modificators" do - time = @new_date[2001, 2, 3] - - time.strftime('%^h').should == 'FEB' - time.strftime('%^_5h').should == ' FEB' - time.strftime('%0^5h').should == '00FEB' - time.strftime('%04m').should == '0002' - time.strftime('%0-^5h').should == 'FEB' - time.strftime('%_-^5h').should == 'FEB' - time.strftime('%^ha').should == 'FEBa' - - time.strftime("%10h").should == ' Feb' - time.strftime("%^10h").should == ' FEB' - time.strftime("%_10h").should == ' Feb' - time.strftime("%_010h").should == '0000000Feb' - time.strftime("%0_10h").should == ' Feb' - time.strftime("%0_-10h").should == 'Feb' - time.strftime("%0-_10h").should == 'Feb' - end - - it "supports the '-' modifier to drop leading zeros" do - @new_date[2001,3,22].strftime("%-m/%-d/%-y").should == "3/22/1" - end - - with_feature :encoding do - it "passes the format string's encoding to the result string" do - result = @new_date[2010,3,8].strftime("%d. März %Y") - - result.encoding.should == Encoding::UTF_8 - result.should == "08. März 2010" - end - end -end diff --git a/spec/rubyspec/shared/time/strftime_for_time.rb b/spec/rubyspec/shared/time/strftime_for_time.rb deleted file mode 100644 index 49cd09051a..0000000000 --- a/spec/rubyspec/shared/time/strftime_for_time.rb +++ /dev/null @@ -1,173 +0,0 @@ -# Shared for Time and DateTime, testing only time components (hours, minutes, seconds and smaller) - -describe :strftime_time, shared: true do - before :all do - @time = @new_time[2001, 2, 3, 4, 5, 6] - end - - it "formats time according to the directives in the given format string" do - @new_time[1970, 1, 1].strftime("There is %M minutes in epoch").should == "There is 00 minutes in epoch" - end - - # Per conversion specifier, not combining - it "returns the 24-based hour with %H" do - time = @new_time[2009, 9, 18, 18, 0, 0] - time.strftime('%H').should == '18' - end - - it "returns the 12-based hour with %I" do - time = @new_time[2009, 9, 18, 18, 0, 0] - time.strftime('%I').should == '06' - end - - it "supports 24-hr formatting with %l" do - time = @new_time[2004, 8, 26, 22, 38, 3] - time.strftime("%k").should == "22" - morning_time = @new_time[2004, 8, 26, 6, 38, 3] - morning_time.strftime("%k").should == " 6" - end - - describe "with %L" do - it "formats the milliseconds of the second" do - @new_time[2009, 1, 1, 0, 0, Rational(100, 1000)].strftime("%L").should == "100" - @new_time[2009, 1, 1, 0, 0, Rational(10, 1000)].strftime("%L").should == "010" - @new_time[2009, 1, 1, 0, 0, Rational(1, 1000)].strftime("%L").should == "001" - @new_time[2009, 1, 1, 0, 0, Rational(1, 10000)].strftime("%L").should == "000" - end - end - - it "supports 12-hr formatting with %l" do - time = @new_time[2004, 8, 26, 22, 38, 3] - time.strftime('%l').should == '10' - morning_time = @new_time[2004, 8, 26, 6, 38, 3] - morning_time.strftime('%l').should == ' 6' - end - - it "returns the minute with %M" do - time = @new_time[2009, 9, 18, 12, 6, 0] - time.strftime('%M').should == '06' - end - - describe "with %N" do - it "formats the nanoseconds of the second with %N" do - @new_time[2000, 4, 6, 0, 0, Rational(1234560, 1_000_000_000)].strftime("%N").should == "001234560" - end - - it "formats the milliseconds of the second with %3N" do - @new_time[2000, 4, 6, 0, 0, Rational(50, 1000)].strftime("%3N").should == "050" - end - - it "formats the microseconds of the second with %6N" do - @new_time[2000, 4, 6, 0, 0, Rational(42, 1000)].strftime("%6N").should == "042000" - end - - it "formats the nanoseconds of the second with %9N" do - @new_time[2000, 4, 6, 0, 0, Rational(1234, 1_000_000)].strftime("%9N").should == "001234000" - end - - it "formats the picoseconds of the second with %12N" do - @new_time[2000, 4, 6, 0, 0, Rational(999999999999, 1000_000_000_000)].strftime("%12N").should == "999999999999" - end - end - - it "supports am/pm formatting with %P" do - time = @new_time[2004, 8, 26, 22, 38, 3] - time.strftime('%P').should == 'pm' - time = @new_time[2004, 8, 26, 11, 38, 3] - time.strftime('%P').should == 'am' - end - - it "supports AM/PM formatting with %p" do - time = @new_time[2004, 8, 26, 22, 38, 3] - time.strftime('%p').should == 'PM' - time = @new_time[2004, 8, 26, 11, 38, 3] - time.strftime('%p').should == 'AM' - end - - it "returns the second with %S" do - time = @new_time[2009, 9, 18, 12, 0, 6] - time.strftime('%S').should == '06' - end - - it "should be able to show the number of seconds since the unix epoch" do - @new_time_in_zone["GMT", 0, 2005].strftime("%s").should == "1104537600" - end - - it "returns the timezone with %Z" do - time = @new_time[2009, 9, 18, 12, 0, 0] - zone = time.zone - time.strftime("%Z").should == zone - end - - describe "with %z" do - it "formats a UTC time offset as '+0000'" do - @new_time_in_zone["GMT", 0, 2005].strftime("%z").should == "+0000" - end - - it "formats a local time with positive UTC offset as '+HHMM'" do - @new_time_in_zone["CET", 1, 2005].strftime("%z").should == "+0100" - end - - it "formats a local time with negative UTC offset as '-HHMM'" do - @new_time_in_zone["PST", -8, 2005].strftime("%z").should == "-0800" - end - - it "formats a time with fixed positive offset as '+HHMM'" do - @new_time_with_offset[2012, 1, 1, 0, 0, 0, 3660].strftime("%z").should == "+0101" - end - - it "formats a time with fixed negative offset as '-HHMM'" do - @new_time_with_offset[2012, 1, 1, 0, 0, 0, -3660].strftime("%z").should == "-0101" - end - - it "formats a time with fixed offset as '+/-HH:MM' with ':' specifier" do - @new_time_with_offset[2012, 1, 1, 0, 0, 0, 3660].strftime("%:z").should == "+01:01" - end - - it "formats a time with fixed offset as '+/-HH:MM:SS' with '::' specifier" do - @new_time_with_offset[2012, 1, 1, 0, 0, 0, 3665].strftime("%::z").should == "+01:01:05" - end - end - - # Combining conversion specifiers - it "should be able to print the time in full" do - @time.strftime("%c").should == "Sat Feb 3 04:05:06 2001" - @time.strftime("%c").should == @time.strftime('%a %b %e %H:%M:%S %Y') - end - - it "should be able to show HH:MM" do - @time.strftime("%R").should == "04:05" - @time.strftime("%R").should == @time.strftime('%H:%M') - end - - it "should be able to show HH:MM:SS AM/PM" do - @time.strftime("%r").should == "04:05:06 AM" - @time.strftime("%r").should == @time.strftime('%I:%M:%S %p') - end - - it "supports HH:MM:SS formatting with %T" do - @time.strftime('%T').should == '04:05:06' - @time.strftime('%T').should == @time.strftime('%H:%M:%S') - end - - it "supports HH:MM:SS formatting with %X" do - @time.strftime('%X').should == '04:05:06' - @time.strftime('%X').should == @time.strftime('%H:%M:%S') - end - - # GNU modificators - it "supports the '-' modifier to drop leading zeros" do - time = @new_time[2001,1,1,14,01,42] - time.strftime("%-m/%-d/%-y %-I:%-M %p").should == "1/1/1 2:1 PM" - - time = @new_time[2010,10,10,12,10,42] - time.strftime("%-m/%-d/%-y %-I:%-M %p").should == "10/10/10 12:10 PM" - end - - it "supports the '-' modifier for padded format directives" do - time = @new_time[2010, 8, 8, 8, 10, 42] - time.strftime("%-e").should == "8" - time.strftime("%-k%p").should == "8AM" - time.strftime("%-l%p").should == "8AM" - end -end |