diff --git a/base/file.jl b/base/file.jl index 072de8006ed70..659c39d7415f8 100644 --- a/base/file.jl +++ b/base/file.jl @@ -976,6 +976,7 @@ isfifo(obj::DirEntry) = (isunknown(obj) || islink(obj)) ? isfifo(obj.path) issocket(obj::DirEntry) = (isunknown(obj) || islink(obj)) ? issocket(obj.path) : obj.rawtype == UV_DIRENT_SOCKET ischardev(obj::DirEntry) = (isunknown(obj) || islink(obj)) ? ischardev(obj.path) : obj.rawtype == UV_DIRENT_CHAR isblockdev(obj::DirEntry) = (isunknown(obj) || islink(obj)) ? isblockdev(obj.path) : obj.rawtype == UV_DIRENT_BLOCK +realpath(obj::DirEntry) = realpath(obj.path) """ _readdirx(dir::AbstractString=pwd(); sort::Bool = true) -> Vector{DirEntry} diff --git a/test/file.jl b/test/file.jl index c7fe3e88fece9..a5ab29a3bf8bc 100644 --- a/test/file.jl +++ b/test/file.jl @@ -31,7 +31,8 @@ if !Sys.iswindows() || Sys.windows_version() >= Sys.WINDOWS_VISTA_VER symlink(subdir, dirlink) @test stat(dirlink) == stat(subdir) @test readdir(dirlink) == readdir(subdir) - @test Base.Filesystem._readdirx(dirlink) == Base.Filesystem._readdirx(subdir) + @test map(o->o.names, Base.Filesystem._readdirx(dirlink)) == map(o->o.names, Base.Filesystem._readdirx(subdir)) + @test realpath.(Base.Filesystem._readdirx(dirlink)) == realpath.(Base.Filesystem._readdirx(subdir)) # relative link relsubdirlink = joinpath(subdir, "rel_subdirlink") @@ -58,7 +59,7 @@ if !Sys.iswindows() || Sys.windows_version() >= Sys.WINDOWS_VISTA_VER mkdir(new_dir) touch(foo_file) @test readdir(new_dir) == readdir(nedlink) - @test Base.Filesystem._readdirx(new_dir) == Base.Filesystem._readdirx(nedlink) + @test realpath.(Base.Filesystem._readdirx(new_dir)) == realpath.(Base.Filesystem._readdirx(nedlink)) rm(foo_file) rm(new_dir) @@ -1444,7 +1445,7 @@ rm(dirwalk, recursive=true) touch(randstring()) end @test issorted(readdir()) - @test issorted(_readdirx()) + @test issorted(Base.Filesystem._readdirx()) @test map(o->o.name, Base.Filesystem._readdirx()) == readdir() @test map(o->o.path, Base.Filesystem._readdirx()) == readdir(join=true) @test count(isfile, readdir(join=true)) == count(isfile, Base.Filesystem._readdirx()) diff --git a/test/misc.jl b/test/misc.jl index 6597ecf8a8428..e54eb9a44c501 100644 --- a/test/misc.jl +++ b/test/misc.jl @@ -1363,9 +1363,9 @@ end @test isdefined(KwdefWithEsc_TestModule, :Struct) @testset "exports of modules" begin - for (_, mod) in Base.loaded_modules + @testset "$mod" for (_, mod) in Base.loaded_modules mod === Main && continue # Main exports everything - for v in names(mod) + @testset "$v" for v in names(mod) @test isdefined(mod, v) end end @@ -1521,7 +1521,7 @@ end @testset "Base docstrings" begin undoc = Docs.undocumented_names(Base) @test_broken isempty(undoc) - @test undoc == [:BufferStream, :CanonicalIndexError, :CapturedException, :Filesystem, :IOServer, :InvalidStateException, :Order, :PipeEndpoint, :Sort, :TTY] + @test undoc == [:BufferStream, :CanonicalIndexError, :CapturedException, :DirEntry, :Filesystem, :IOServer, :InvalidStateException, :Order, :PipeEndpoint, :Sort, :TTY] end @testset "Base.Libc docstrings" begin