neovim/test/functional/lua
Famiu Haque 8e5c48b08d
feat(lua): vim.fs.normalize() resolves ".", ".." #28203
Problem:
`vim.fs.normalize` does not resolve `.` and `..` components. This makes
no sense as the entire point of normalization is to remove redundancy
from the path. The path normalization functions in several other
languages (Java, Python, C++, etc.) also resolve `.` and `..`
components.

Reference:
- Python: https://docs.python.org/3/library/os.path.html#os.path.normpath
- Java: https://docs.oracle.com/javase/8/docs/api/java/nio/file/Path.html#normalize--
- C++: https://en.cppreference.com/w/cpp/filesystem/path/lexically_normal

Solution:
Resolve "." and ".." in `vim.fs.normalize`.

    Before:
    "~/foo/bar/../baz/./" => "~/foo/bar/../baz/."
    After:
    "~/foo/bar/../baz/./" => "~/foo/baz"
2024-04-16 12:13:44 -07:00
..
api_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
base64_spec.lua fix(base64): properly handle embedded NULLs when decoding (#28349) 2024-04-15 11:06:54 -05:00
buffer_updates_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
command_line_completion_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
commands_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
comment_spec.lua fix(treesitter): use tree range instead of tree root node range 2024-04-10 15:54:52 +01:00
diagnostic_spec.lua feat(diagnostic): enable(…, opts) 2024-04-15 21:32:31 +02:00
ffi_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
filetype_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
fs_spec.lua feat(lua): vim.fs.normalize() resolves ".", ".." #28203 2024-04-16 12:13:44 -07:00
glob_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
highlight_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
inspector_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
iter_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
json_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
loader_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
loop_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
luaeval_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
mpack_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
overrides_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
runtime_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
secure_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
snippet_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
spell_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
system_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
text_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
thread_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
ui_event_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
ui_spec.lua fix(vim.ui): open() may wait indefinitely #28325 2024-04-15 04:33:09 -07:00
uri_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
version_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
vim_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
watch_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00
xdiff_spec.lua refactor(test): inject after_each differently 2024-04-10 15:53:50 +01:00