diff options
| author | Moritz Meißelbach <arbelzapf@gmail.com> | 2019-12-03 20:24:20 +0100 |
|---|---|---|
| committer | Moritz Meißelbach <arbelzapf@gmail.com> | 2019-12-03 20:24:20 +0100 |
| commit | 96a1109a71aed08352c4bdf6162acc91948106e1 (patch) | |
| tree | 81d399e818643c9be5260470c55469348405bc4c /tests | |
| parent | c0d0b778d1d20739faf4d4657c8cf949245db3fc (diff) | |
| parent | bb222ad4b33c97cf43bb5f7c76b57426074834fa (diff) | |
| download | sway-launcher-desktop-96a1109a71aed08352c4bdf6162acc91948106e1.tar.gz sway-launcher-desktop-96a1109a71aed08352c4bdf6162acc91948106e1.zip | |
Merge branch 'master' into github_actions
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/data/config/0/sway-launcher-desktop/providers.conf | 7 | ||||
| -rw-r--r-- | tests/describe.bats | 6 | ||||
| -rw-r--r-- | tests/providers.bats | 36 |
3 files changed, 46 insertions, 3 deletions
diff --git a/tests/data/config/0/sway-launcher-desktop/providers.conf b/tests/data/config/0/sway-launcher-desktop/providers.conf new file mode 100644 index 0000000..4e82b2b --- /dev/null +++ b/tests/data/config/0/sway-launcher-desktop/providers.conf @@ -0,0 +1,7 @@ +[foo] +list_cmd=printf "foo\034foo" +launch_cmd=printf 'printf "{1}"' +preview_cmd=printf 'printf "{1}"' + +[incomplete] +list_cmd=echo 'nope' diff --git a/tests/describe.bats b/tests/describe.bats index d02ee96..1541974 100644 --- a/tests/describe.bats +++ b/tests/describe.bats @@ -1,13 +1,13 @@ @test "Name and description of firefox desktop file are properly extracted" { - run ../sway-launcher-desktop.sh describe data/desktop-files/0/applications/firefox.desktop desktop + run env XDG_CONFIG_HOME=./data/config ../sway-launcher-desktop.sh describe desktop ./data/desktop-files/0/applications/firefox.desktop [ "$status" -eq 0 ] [[ ${lines[0]} =~ "Firefox" ]] [[ ${lines[1]} =~ "Browse the World Wide Web" ]] } @test "Name and description of ls command should be given" { - run ../sway-launcher-desktop.sh describe ls command + run env XDG_CONFIG_HOME=./data/config ../sway-launcher-desktop.sh describe command ls [ "$status" -eq 0 ] [[ ${lines[0]} =~ "ls" ]] [[ ${lines[1]} =~ "list directory contents" ]] -}
\ No newline at end of file +} diff --git a/tests/providers.bats b/tests/providers.bats new file mode 100644 index 0000000..1c11f0d --- /dev/null +++ b/tests/providers.bats @@ -0,0 +1,36 @@ +@test "Builtin desktop provider works" { + run env XDG_CONFIG_HOME=./data/config XDG_DATA_HOME=./data/desktop-files/1 XDG_DATA_DIRS=./data/desktop-files/0 ../sway-launcher-desktop.sh provide desktop + echo "OUTPUT:$output" + echo "LINES:${#lines[@]}" + [ "$status" -eq 0 ] + [[ ${#lines[@]} -gt 2 ]] +} + +@test "Builtin command provider works" { + run env XDG_CONFIG_HOME=./data/config XDG_DATA_HOME=./data/desktop-files/1 XDG_DATA_DIRS=./data/desktop-files/0 ../sway-launcher-desktop.sh provide command + echo "OUTPUT:$output" + echo "LINES:${#lines[@]}" + [ "$status" -eq 0 ] + [[ ${#lines[@]} -gt 2 ]] +} + +@test "Reads custom provider from providers.conf" { + run printf %q "$(env XDG_CONFIG_HOME=./data/config/0 ../sway-launcher-desktop.sh provide foo)" + echo "OUTPUT:$output" + [ "$status" -eq 0 ] + [[ ${output} == "$'foo\034foo'" ]] +} + +@test "Skips incomplete custom provider from providers.conf" { + run printf %q "$(env XDG_CONFIG_HOME=./data/config/0 ../sway-launcher-desktop.sh provide incomplete)" + echo "OUTPUT:$output" + [ "$status" -eq 0 ] + [[ ${output} == "''" ]] +} + +@test "Does not use builtin providers when reading from providers.conf" { + run printf %q "$(env XDG_CONFIG_HOME=./data/config/0 ../sway-launcher-desktop.sh provide desktop)" + echo "OUTPUT:$output" + [ "$status" -eq 0 ] + [[ ${output} == "''" ]] +} |
