2018-03-04 10:09:32 -05:00
require_relative '../../spec_helper'
2017-05-07 08:04:49 -04:00
describe " File.ctime " do
before :each do
@file = __FILE__
end
after :each do
@file = nil
end
it " returns the change time for the named file (the time at which directory information about the file was changed, not the file itself). " do
File . ctime ( @file )
File . ctime ( @file ) . should be_kind_of ( Time )
end
2020-04-02 20:47:19 -04:00
platform_is :linux , :windows do
2017-05-07 08:04:49 -04:00
it " returns the change time for the named file (the time at which directory information about the file was changed, not the file itself) with microseconds. " do
supports_subseconds = Integer ( ` stat -c%z ' #{ __FILE__ } ' ` [ / \ .( \ d+) / , 1 ] , 10 )
if supports_subseconds != 0
File . ctime ( __FILE__ ) . usec . should > 0
else
File . ctime ( __FILE__ ) . usec . should == 0
end
end
end
it " accepts an object that has a # to_path method " do
File . ctime ( mock_to_path ( @file ) )
end
it " raises an Errno::ENOENT exception if the file is not found " do
2019-07-27 06:40:09 -04:00
- > { File . ctime ( 'bogus' ) } . should raise_error ( Errno :: ENOENT )
2017-05-07 08:04:49 -04:00
end
end
describe " File # ctime " do
before :each do
@file = File . open ( __FILE__ )
end
after :each do
@file . close
@file = nil
end
it " returns the change time for the named file (the time at which directory information about the file was changed, not the file itself). " do
@file . ctime
@file . ctime . should be_kind_of ( Time )
end
end