Add Unit-Tests

Add unittests via shunit2 (https://github.com/kward/shunit2),
that integrate with travis-ci.org.
This commit is contained in:
Dominik Ritter 2016-02-09 00:45:33 +01:00
parent 9e191d4305
commit 42c39c8922
4 changed files with 61 additions and 0 deletions

3
.gitmodules vendored Normal file
View File

@ -0,0 +1,3 @@
[submodule "shunit2"]
path = shunit2
url = git@github.com:kward/shunit2.git

9
.travis.yml Normal file
View File

@ -0,0 +1,9 @@
language: php
sudo: false
php:
- '7.0'
script:
- test/powerlevel9k.spec

1
shunit2 Submodule

@ -0,0 +1 @@
Subproject commit 60dd60bcd1573befe38465010263ab242e55811d

48
test/powerlevel9k.spec Executable file
View File

@ -0,0 +1,48 @@
#!/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 oneTimeSetUp() {
# Load Powerlevel9k
source powerlevel9k.zsh-theme
source functions/*
}
function testJoinedSegments() {
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(dir dir_joined)
assertEquals "%K{blue} %F{black}%~ %K{blue}%F{black}%F{black}%~ %k%F{blue}%f " "$(build_left_prompt)"
unset POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
}
function testTransitiveJoinedSegments() {
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(dir root_indicator_joined dir_joined)
assertEquals "%K{blue} %F{black}%~ %K{blue}%F{black}%F{black}%~ %k%F{blue}%f " "$(build_left_prompt)"
unset POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
}
function testJoiningWithConditionalSegment() {
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(dir background_jobs dir_joined)
assertEquals "%K{blue} %F{black}%~ %K{blue}%F{black} %F{black}%~ %k%F{blue}%f " "$(build_left_prompt)"
unset POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
}
function testDynamicColoringOfSegmentsWork() {
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(dir)
POWERLEVEL9K_DIR_HOME_SUBFOLDER_BACKGROUND='red'
assertEquals "%K{red} %F{black}%~ %k%F{red}%f " "$(build_left_prompt)"
unset POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
unset POWERLEVEL9K_DIR_HOME_SUBFOLDER_BACKGROUND
}
source shunit2/source/2.1/src/shunit2