aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBaptiste Daroussin <bapt@FreeBSD.org>2026-06-04 17:24:45 +0000
committerBaptiste Daroussin <bapt@FreeBSD.org>2026-06-04 17:24:45 +0000
commit5f58d9207469dcd2d3fa24db7f5276a681df91e5 (patch)
treeb6dc44f6390fad9f6b6ca7bab955486649a784f6
parentb813e46e153327b66db4791ec0003b7e7cc51214 (diff)
nuageinit: add dirname edge case tests
-rw-r--r--libexec/nuageinit/tests/dirname.lua23
1 files changed, 23 insertions, 0 deletions
diff --git a/libexec/nuageinit/tests/dirname.lua b/libexec/nuageinit/tests/dirname.lua
index 7e3a2c835502..9d76aed0ac11 100644
--- a/libexec/nuageinit/tests/dirname.lua
+++ b/libexec/nuageinit/tests/dirname.lua
@@ -1,11 +1,34 @@
#!/usr/libexec/flua
+---
+-- SPDX-License-Identifier: BSD-2-Clause
+--
+-- Copyright (c) 2026 Baptiste Daroussin <bapt@FreeBSD.org>
local n = require("nuage")
print(n.dirname("/my/path/path1"))
+
+-- relative path with no directory component: nil
if n.dirname("path") then
n.err('Expecting nil for n.dirname("path")')
end
+
+-- nil input: nil
if n.dirname() then
n.err("Expecting nil for n.dirname")
end
+
+-- root path: returns "/"
+if n.dirname("/") ~= "/" then
+ n.err('Expecting "/" for n.dirname("/"), got: ' .. tostring(n.dirname("/")))
+end
+
+-- top-level directory: returns "/"
+if n.dirname("/foo") ~= "/" then
+ n.err('Expecting "/" for n.dirname("/foo")')
+end
+
+-- deep path
+if n.dirname("/foo/bar/baz") ~= "/foo/bar/" then
+ n.err('Expecting "/foo/bar/" for n.dirname("/foo/bar/baz")')
+end