about summary refs log tree commit diff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/sandbox.nix12
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/sandbox.nix b/tests/sandbox.nix
index e92099bf..0a860793 100644
--- a/tests/sandbox.nix
+++ b/tests/sandbox.nix
@@ -37,6 +37,10 @@
           # Should fail because we can't access the host's PATH
           ! echo foo | grep -qF foo
 
+          # No /bin/sh by default
+          test ! -e /bin
+          test ! -e /bin/sh
+
           # Write PID information to files, so that we can later verify whether
           # we were in a PID namespace.
           echo $$ > /home/foo/.cache/xdg/ownpid
@@ -105,6 +109,12 @@
         paths.wanted = [ "/home/foo/nonexisting" ];
         paths.runtimeVars = [ "COLLECT_ME" ];
       })
+
+      (pkgs.vuizvui.buildSandbox (pkgs.writeScriptBin "test-sandbox2" ''
+        #!/bin/sh
+        # Another /bin/sh just to be sure :-)
+        /bin/sh -c 'echo /bin/sh works'
+      '') { allowBinSh = true; })
     ];
     users.users.foo.isNormalUser = true;
   };
@@ -124,5 +134,7 @@
 
     $machine->succeed('test "$(< /home/foo/.cache/xdg/procpids)" = /proc/1');
     $machine->succeed('test "$(< /home/foo/.cache/xdg/ownpid)" = 1');
+
+    $machine->succeed('test "$(su -c test-sandbox2 foo)" = "/bin/sh works"');
   '';
 }