|
|
#!/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,'
|