2018-07-18 22:22:17 +02:00
|
|
|
#!/usr/bin/env zsh
|
|
|
|
#vim:ft=zsh ts=2 sw=2 sts=2 et fenc=utf-8
|
|
|
|
|
|
|
|
# Required for shunit2 to run correctly
|
|
|
|
setopt shwordsplit
|
|
|
|
SHUNIT_PARENT=$0
|
|
|
|
|
|
|
|
function setUp() {
|
|
|
|
export TERM="xterm-256color"
|
|
|
|
|
|
|
|
P9K_HOME=$(pwd)
|
|
|
|
### Test specific
|
|
|
|
# Create default folder and git init it.
|
|
|
|
FOLDER=/tmp/powerlevel9k-test/nvm-test
|
2018-07-19 07:40:58 +02:00
|
|
|
mkdir -p "${FOLDER}/bin"
|
|
|
|
OLD_PATH=$PATH
|
|
|
|
PATH=${FOLDER}/bin:$PATH
|
2018-07-18 22:22:17 +02:00
|
|
|
cd $FOLDER
|
|
|
|
}
|
|
|
|
|
|
|
|
function tearDown() {
|
2018-07-19 07:40:58 +02:00
|
|
|
# Restore old path
|
|
|
|
PATH="${OLD_PATH}"
|
2018-07-18 22:22:17 +02:00
|
|
|
# Go back to powerlevel9k folder
|
|
|
|
cd "${P9K_HOME}"
|
|
|
|
# Remove eventually created test-specific folder
|
|
|
|
rm -fr "${FOLDER}"
|
|
|
|
# At least remove test folder completely
|
|
|
|
rm -fr /tmp/powerlevel9k-test
|
|
|
|
}
|
|
|
|
|
|
|
|
function testNvmSegmentPrintsNothingIfNvmIsNotAvailable() {
|
2018-07-19 22:39:19 +02:00
|
|
|
local -a POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
|
|
|
|
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(nvm custom_world)
|
2018-07-18 22:22:17 +02:00
|
|
|
local POWERLEVEL9K_CUSTOM_WORLD='echo world'
|
|
|
|
|
2018-07-25 07:52:06 +02:00
|
|
|
# Load Powerlevel9k
|
|
|
|
source ${P9K_HOME}/powerlevel9k.zsh-theme
|
|
|
|
|
2018-07-18 22:22:17 +02:00
|
|
|
assertEquals "%K{white} %F{black}world %k%F{white}%f " "$(build_left_prompt)"
|
|
|
|
}
|
|
|
|
|
|
|
|
function testNvmSegmentWorksWithoutHavingADefaultAlias() {
|
2018-07-19 22:39:19 +02:00
|
|
|
local -a POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
|
|
|
|
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(nvm)
|
2018-07-18 22:22:17 +02:00
|
|
|
|
2018-07-25 07:52:06 +02:00
|
|
|
# Load Powerlevel9k
|
|
|
|
source ${P9K_HOME}/powerlevel9k.zsh-theme
|
|
|
|
|
2018-07-19 07:40:58 +02:00
|
|
|
function nvm_version() {
|
|
|
|
[[ ${1} == 'current' ]] && echo 'v4.6.0' || echo 'v1.4.0'
|
|
|
|
}
|
2018-07-18 22:22:17 +02:00
|
|
|
|
2018-07-19 07:40:58 +02:00
|
|
|
assertEquals "%K{magenta} %F{black%}⬢ %f%F{black}4.6.0 %k%F{magenta}%f " "$(build_left_prompt)"
|
2018-07-18 22:22:17 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
function testNvmSegmentPrintsNothingWhenOnDefaultVersion() {
|
2018-07-19 22:39:19 +02:00
|
|
|
local -a POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
|
|
|
|
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(nvm custom_world)
|
2018-07-18 22:22:17 +02:00
|
|
|
local POWERLEVEL9K_CUSTOM_WORLD='echo world'
|
|
|
|
|
2018-07-25 07:52:06 +02:00
|
|
|
# Load Powerlevel9k
|
|
|
|
source ${P9K_HOME}/powerlevel9k.zsh-theme
|
|
|
|
|
2018-07-19 07:40:58 +02:00
|
|
|
function nvm_version() {
|
|
|
|
[[ ${1} == 'current' ]] && echo 'v4.6.0' || echo 'v4.6.0'
|
|
|
|
}
|
2018-07-18 22:22:17 +02:00
|
|
|
|
|
|
|
assertEquals "%K{white} %F{black}world %k%F{white}%f " "$(build_left_prompt)"
|
|
|
|
}
|
|
|
|
|
|
|
|
source shunit2/source/2.1/src/shunit2
|