[Tests] Add unit tests for `nvm_is_version_installed`
diff --git a/test/fast/Unit tests/nvm_is_version_installed b/test/fast/Unit tests/nvm_is_version_installed
new file mode 100644
index 0000000..d530658
--- /dev/null
+++ b/test/fast/Unit tests/nvm_is_version_installed
@@ -0,0 +1,47 @@
+#!/bin/sh
+
+cleanup () {
+  rm -rf "$NVM_DIR"
+  unset -f die cleanup check_version
+  unset NVM_DIR NODE_PATH
+}
+die () { echo "$@" ; cleanup ; exit 1; }
+
+\. ../../../nvm.sh
+
+set -ex
+
+NVM_DIR=$(mktemp -d)
+NODE_PATH="$NVM_DIR/versions/node"
+mkdir -p "$NODE_PATH"
+if [ -z "$NODE_PATH" ]; then
+  die 'Unable to create temporary folder'
+fi
+
+check_version() {
+  local VERSION
+  local BINARY
+  VERSION=$1
+  BINARY=$2
+
+  # nvm_is_version_installed fails with non existing version
+  ! nvm_is_version_installed "$VERSION" || die "nvm_is_version_installed $VERSION should fail with non existing version"
+
+  # nvm_is_version_installed fails with non executable existing version
+  mkdir -p "$NODE_PATH/$VERSION/bin" && cd "$NODE_PATH/$VERSION/bin" && touch "$NODE_PATH/$VERSION/bin/$BINARY"
+  ! nvm_is_version_installed "$VERSION" || die "nvm_is_version_installed $VERSION should fail with non executable existing version"
+
+  # nvm_is_version_installed whould work
+  chmod +x "$NODE_PATH/$VERSION/bin/$BINARY"
+  nvm_is_version_installed "$VERSION" || die "nvm_is_version_installed $VERSION should work"
+}
+
+# nvm_is_version_installed is available
+type nvm_is_version_installed > /dev/null 2>&1 || die 'nvm_is_version_installed is not available'
+
+# nvm_is_version_installed with no parameter fails
+! nvm_is_version_installed || die 'nvm_is_version_installed without parameter should fail'
+
+check_version '12.0.0' 'node'
+
+cleanup