From 27bd1cd65df8878812adefcf1ab6974660c2714d Mon Sep 17 00:00:00 2001
From: Dominik Ritter <dritter03@googlemail.com>
Date: Sat, 12 May 2018 23:17:49 +0200
Subject: Fix test for rust segment

---
 powerlevel9k.zsh-theme          |  1 +
 test/segments/rust_version.spec | 20 +++++++++++++++-----
 2 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/powerlevel9k.zsh-theme b/powerlevel9k.zsh-theme
index 530b0d9a..2b21b3de 100755
--- a/powerlevel9k.zsh-theme
+++ b/powerlevel9k.zsh-theme
@@ -1114,6 +1114,7 @@ prompt_rust_version() {
     "$1_prompt_segment" "$0" "$2" "208" "$DEFAULT_COLOR" "$rust_version" 'RUST_ICON'
   fi
 }
+
 # RSpec test ratio
 prompt_rspec_stats() {
   if [[ (-d app && -d spec) ]]; then
diff --git a/test/segments/rust_version.spec b/test/segments/rust_version.spec
index 8274789f..85b4ec69 100755
--- a/test/segments/rust_version.spec
+++ b/test/segments/rust_version.spec
@@ -5,28 +5,39 @@
 setopt shwordsplit
 SHUNIT_PARENT=$0
 
+TEST_BASE_FOLDER=/tmp/powerlevel9k-test
+RUST_TEST_FOLDER="${TEST_BASE_FOLDER}/rust-test"
+
 function setUp() {
+  OLDPATH="${PATH}"
+  mkdir -p "${RUST_TEST_FOLDER}"
+  PATH="${RUST_TEST_FOLDER}:${PATH}"
+
   export TERM="xterm-256color"
   # Load Powerlevel9k
   source powerlevel9k.zsh-theme
 }
 
+function tearDown() {
+  PATH="${OLDPATH}"
+  rm -fr "${TEST_BASE_FOLDER}"
+}
+
 function mockRust() {
-  echo 'rustc  0.4.1a-alpha'
+  echo "#!/bin/sh\n\necho 'rustc 0.4.1a-alpha'" > "${RUST_TEST_FOLDER}/rustc"
+  chmod +x "${RUST_TEST_FOLDER}/rustc"
 }
 
 function testRust() {
-  alias rustc=mockRust
+  mockRust
   POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(rust_version)
 
   assertEquals "%K{208} %F{black}0.4.1a-alpha %k%F{208}%f " "$(build_left_prompt)"
 
   unset POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
-  unalias rustc
 }
 
 function testRustPrintsNothingIfRustIsNotAvailable() {
-  alias rustc=noRust
   POWERLEVEL9K_CUSTOM_WORLD='echo world'
   POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(custom_world rust_version)
 
@@ -34,7 +45,6 @@ function testRustPrintsNothingIfRustIsNotAvailable() {
 
   unset POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
   unset POWERLEVEL9K_CUSTOM_WORLD
-  unalias rustc
 }
 
 source shunit2/source/2.1/src/shunit2
-- 
cgit v1.2.3