about summary refs log tree commit diff
path: root/pkgs/development/interpreters/bats
diff options
context:
space:
mode:
authorThibault Gagnaux <tgagnaux@gmail.com>2023-03-11 10:48:09 +0100
committerThibault Gagnaux <tgagnaux@gmail.com>2023-03-11 10:57:33 +0100
commitf4fcb40eb45ccd25d5631d81d7fb410d4ab1f58e (patch)
tree1f996d6c36ba5ee20adbe268f006a7a7fd121cf4 /pkgs/development/interpreters/bats
parenta42a71cdbb618d2f999ff7a1d2c873f65d941f5e (diff)
bats: add bats-file library test
Diffstat (limited to 'pkgs/development/interpreters/bats')
-rw-r--r--pkgs/development/interpreters/bats/default.nix16
1 files changed, 15 insertions, 1 deletions
diff --git a/pkgs/development/interpreters/bats/default.nix b/pkgs/development/interpreters/bats/default.nix
index 4e7effcbb8025..97a209f208411 100644
--- a/pkgs/development/interpreters/bats/default.nix
+++ b/pkgs/development/interpreters/bats/default.nix
@@ -138,8 +138,15 @@ resholve.mkDerivation rec {
       setup() {
         bats_load_library bats-support
         bats_load_library bats-assert
+        bats_load_library bats-file
 
         bats_require_minimum_version 1.5.0
+
+        TEST_TEMP_DIR="$(temp_make --prefix 'nixpkgs-bats-test')"
+      }
+
+      teardown() {
+        temp_del "$TEST_TEMP_DIR"
       }
 
       @test echo_hi {
@@ -152,10 +159,17 @@ resholve.mkDerivation rec {
         assert_line --index 0 "cp: missing file operand"
         assert_line --index 1 "Try 'cp --help' for more information."
       }
+
+      @test file_exists {
+        echo "hi" > "$TEST_TEMP_DIR/hello.txt"
+        assert_file_exist "$TEST_TEMP_DIR/hello.txt"
+        run cat "$TEST_TEMP_DIR/hello.txt"
+        assert_output "hi"
+      }
     '';
     passAsFile = [ "testScript" ];
   } ''
-    ${bats.withLibraries (p: [ p.bats-support p.bats-assert ])}/bin/bats "$testScriptPath"
+    ${bats.withLibraries (p: [ p.bats-support p.bats-assert p.bats-file ])}/bin/bats "$testScriptPath"
     touch "$out"
   '';