diff --git a/test/segments/swift_version.spec b/test/segments/swift_version.spec new file mode 100755 index 00000000..e58cc817 --- /dev/null +++ b/test/segments/swift_version.spec @@ -0,0 +1,52 @@ +#!/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" + # Load Powerlevel9k + source powerlevel9k.zsh-theme + + P9K_HOME=$(pwd) + ### Test specific + # Create default folder and git init it. + FOLDER=/tmp/powerlevel9k-test + mkdir -p "${FOLDER}" + cd $FOLDER +} + +function tearDown() { + # 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 testSwiftSegmentPrintsNothingIfSwiftIsNotAvailable() { + local POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(swift_version custom_world) + local POWERLEVEL9K_CUSTOM_WORLD='echo world' + alias swift="noswift" + + + assertEquals "%K{white} %F{black}world %k%F{white}%f " "$(build_left_prompt)" + + unalias swift +} + +function testSwiftSegmentWorks() { + local POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(swift_version) + function swift() { + echo "Apple Swift version 3.0.1 (swiftlang-800.0.58.6 clang-800.0.42.1)\nTarget: x86_64-apple-macosx10.9" + } + + assertEquals "%K{magenta} %F{white%}Swift %f%F{white}3.0.1 %k%F{magenta}%f " "$(build_left_prompt)" + + unfunction swift +} + +source shunit2/source/2.1/src/shunit2 \ No newline at end of file