Problem: the codebase still used the upstream \`oil\` naming everywhere — URL schemes, the \`:Oil\` command, highlight groups, user events, module paths, filetypes, buffer/window variables, LuaCATS type annotations, vimdoc help tags, syntax groups, and internal identifiers. Solution: mechanical rename of every reference. URL schemes now use \`canola://\` (plus \`canola-ssh://\`, \`canola-s3://\`, \`canola-sss://\`, \`canola-trash://\`, \`canola-test://\`). The \`:Canola\` command replaces \`:Oil\`. All highlight groups, user events, augroups, namespaces, filetypes, require paths, type annotations, help tags, and identifiers follow suit. The \`upstream\` remote to \`stevearc/oil.nvim\` has been removed and the \`vim.g.oil\` deprecation shim dropped.
32 lines
914 B
Lua
32 lines
914 B
Lua
local pathutil = require('canola.pathutil')
|
|
describe('pathutil', function()
|
|
it('calculates parent path', function()
|
|
local cases = {
|
|
{ '/foo/bar', '/foo/' },
|
|
{ '/foo/bar/', '/foo/' },
|
|
{ '/', '/' },
|
|
{ '', '' },
|
|
{ 'foo/bar/', 'foo/' },
|
|
{ 'foo', '' },
|
|
}
|
|
for _, case in ipairs(cases) do
|
|
local input, expected = unpack(case)
|
|
local output = pathutil.parent(input)
|
|
assert.equals(expected, output, string.format('Parent path "%s" failed', input))
|
|
end
|
|
end)
|
|
|
|
it('calculates basename', function()
|
|
local cases = {
|
|
{ '/foo/bar', 'bar' },
|
|
{ '/foo/bar/', 'bar' },
|
|
{ '/', nil },
|
|
{ '', nil },
|
|
}
|
|
for _, case in ipairs(cases) do
|
|
local input, expected = unpack(case)
|
|
local output = pathutil.basename(input)
|
|
assert.equals(expected, output, string.format('Basename "%s" failed', input))
|
|
end
|
|
end)
|
|
end)
|