Tests for PROFILE detection
diff --git a/test/install_script/nvm_detect_profile b/test/install_script/nvm_detect_profile
new file mode 100755
index 0000000..08aea82
--- /dev/null
+++ b/test/install_script/nvm_detect_profile
@@ -0,0 +1,67 @@
+#!/bin/sh
+
+cleanup () {
+ unset -f setup cleanup die
+ unset _PROFILE
+ rm -f .bashrc .bash_profile .zshrc .profile test_profile > /dev/null 2>&1
+}
+die () { echo $@ ; cleanup ; exit 1; }
+
+NVM_ENV=testing . ../../install.sh
+
+setup () {
+ touch .bashrc
+ touch .bash_profile
+ touch .zshrc
+ touch .profile
+ touch test_profile
+}
+
+#Let's hack $HOME
+HOME="."
+
+setup
+
+
+# $PROFILE points to a valid file, its path must be returned
+PROFILE="test_profile"
+_PROFILE=$(nvm_detect_profile)
+[ "_$_PROFILE" = "_$PROFILE" ] || die "nvm_detect_profile didn't pick \$PROFILE"
+
+# $PROFILE doesn't point to a valid file, its path must not be returned
+PROFILE="invalid_profile"
+_PROFILE=$(nvm_detect_profile)
+[ "_$_PROFILE" != "_$PROFILE" ] || die "nvm_detect_profile shouldn't pick \$PROFILE when it's not a valid file"
+
+
+# Below are tests for when $PROFILE is undefined
+rm test_profile
+unset PROFILE
+
+# It should favor .bashrc if file exists
+_PROFILE=$(nvm_detect_profile)
+[ "_$_PROFILE" = "_$HOME/.bashrc" ] || die "nvm_detect_profile should have selected .bashrc"
+
+rm .bashrc
+# Otherwise, it should favor .bash_profile if file exists
+_PROFILE=$(nvm_detect_profile)
+[ "_$_PROFILE" = "_$HOME/.bash_profile" ] || die "nvm_detect_profile should have selected .bash_profile"
+
+rm .bash_profile
+# Otherwise, it should favor .zshrc if file exists
+_PROFILE=$(nvm_detect_profile)
+[ "_$_PROFILE" = "_$HOME/.zshrc" ] || die "nvm_detect_profile should have selected .zshrc"
+
+rm .zshrc
+# Otherwise, it should favor .profile if file exists
+_PROFILE=$(nvm_detect_profile)
+[ "_$_PROFILE" = "_$HOME/.profile" ] || die "nvm_detect_profile should have selected .profile"
+
+rm .profile
+# It should be empty if none is found
+_PROFILE=$(nvm_detect_profile)
+[ -z "$_PROFILE" ] || die "nvm_detect_profile should have echo'ed an empty value"
+
+
+cleanup
+