Valentin Lab
6 years ago
2 changed files with 143 additions and 4 deletions
@ -0,0 +1,138 @@ |
|||
#!/bin/bash |
|||
|
|||
exname=$(basename $0) |
|||
|
|||
prefix_cmd=" |
|||
. /etc/shlib |
|||
|
|||
include common |
|||
include parse |
|||
|
|||
. ../lib/common |
|||
|
|||
" |
|||
|
|||
# mock |
|||
relation-get() { |
|||
local key="$1" |
|||
echo "$CFG" | shyaml get-value "$key" 2>/dev/null |
|||
} |
|||
export -f relation-get |
|||
|
|||
cfg-get-value() { |
|||
local key="$1" |
|||
shyaml get-value "$key" 2>/dev/null |
|||
} |
|||
export -f cfg-get-value |
|||
|
|||
get_service_relations() { |
|||
printf "%s\0" "${RELATIONS[@]}" |
|||
} |
|||
export -f get_service_relations |
|||
|
|||
export state_tmpdir=$(mktemp -d -t tmp.XXXXXXXXXX) |
|||
trap "rm -rf \"$state_tmpdir\"" EXIT |
|||
|
|||
## |
|||
## Tests |
|||
## |
|||
|
|||
try " |
|||
__vhost_cfg_normalize_protocol ' |
|||
protocol: both |
|||
'" |
|||
noerror |
|||
is out ',http,https,' |
|||
|
|||
try " |
|||
__vhost_cfg_normalize_protocol ' |
|||
protocol: http |
|||
'" |
|||
noerror |
|||
is out ',http,' |
|||
|
|||
|
|||
try " |
|||
__vhost_cfg_normalize_protocol ' |
|||
protocol: https |
|||
'" |
|||
noerror |
|||
is out ',https,' |
|||
|
|||
try " |
|||
__vhost_cfg_normalize_protocol ' |
|||
protocol: ssl |
|||
'" |
|||
noerror |
|||
is out ',https,' |
|||
|
|||
|
|||
## |
|||
## auto |
|||
## |
|||
|
|||
|
|||
try " |
|||
__vhost_cfg_normalize_protocol ' |
|||
protocol: auto |
|||
'" |
|||
noerror |
|||
is out ',http,' |
|||
|
|||
try " |
|||
__vhost_cfg_normalize_protocol ' |
|||
'" |
|||
noerror |
|||
is out ',http,' |
|||
|
|||
|
|||
try " |
|||
__vhost_cfg_normalize_protocol ' |
|||
ssl: false |
|||
'" |
|||
noerror |
|||
is out ',http,' |
|||
|
|||
|
|||
try " |
|||
__vhost_cfg_normalize_protocol ' |
|||
ssl: null |
|||
'" |
|||
noerror |
|||
is out ',http,' |
|||
|
|||
|
|||
try " |
|||
__vhost_cfg_normalize_protocol ' |
|||
ssl: true |
|||
'" |
|||
noerror |
|||
is out ',http,https,' |
|||
|
|||
|
|||
## This case is special, we have values, but we don't know |
|||
## how if there are any plugin that can use it. For this |
|||
## function's responsibility, we are wanting 'ssl'. |
|||
try " |
|||
__vhost_cfg_normalize_protocol ' |
|||
ssl: xxx |
|||
'" |
|||
noerror |
|||
is out ',http,https,' |
|||
|
|||
|
|||
try " |
|||
RELATIONS=(cert-provider foo a True) |
|||
__vhost_cfg_normalize_protocol ' |
|||
'" "no ssl, but with cert-provider" |
|||
noerror |
|||
is out ',http,https,' |
|||
|
|||
|
|||
try " |
|||
RELATIONS=(cert-provider foo a True) |
|||
__vhost_cfg_normalize_protocol ' |
|||
ssl: false |
|||
'" "with explicit ssl disable, but with cert-provider" |
|||
noerror |
|||
is out ',http,' |
Write
Preview
Loading…
Cancel
Save
Reference in new issue