mirror of
https://github.com/super-linter/super-linter.git
synced 2024-11-23 14:41:00 -05:00
1d12a31fce
- CSS, Sass, SCSS - HTML - JSON - JSX - GraphQL - Vue - YAML
50 lines
1.3 KiB
Bash
Executable file
50 lines
1.3 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
set -o errexit
|
|
set -o nounset
|
|
set -o pipefail
|
|
|
|
# shellcheck source=/dev/null
|
|
source "test/testUtils.sh"
|
|
|
|
# shellcheck source=/dev/null
|
|
source "lib/globals/languages.sh"
|
|
|
|
function LanguageArrayNotEmptyTest() {
|
|
local FUNCTION_NAME
|
|
FUNCTION_NAME="${FUNCNAME[0]}"
|
|
info "${FUNCTION_NAME} start"
|
|
|
|
if [ ${#LANGUAGE_ARRAY[@]} -gt 0 ]; then
|
|
debug "Language array is not empty as expected"
|
|
else
|
|
fatal "Language array is empty"
|
|
fi
|
|
|
|
notice "${FUNCTION_NAME} PASS"
|
|
}
|
|
|
|
function LanguageTestPresenceTest() {
|
|
local FUNCTION_NAME
|
|
FUNCTION_NAME="${FUNCNAME[0]}"
|
|
info "${FUNCTION_NAME} start"
|
|
|
|
for LANGUAGE in "${LANGUAGE_ARRAY[@]}"; do
|
|
local -l LOWERCASE_LANGUAGE="${LANGUAGE}"
|
|
# shellcheck disable=SC2153
|
|
local LINTER_TEST_CASE_DIRECTORY="${LINTERS_TEST_CASE_DIRECTORY}/${LOWERCASE_LANGUAGE}"
|
|
|
|
if [[ ! -d "${LINTER_TEST_CASE_DIRECTORY}" ]]; then
|
|
fatal "Test case directory for ${LANGUAGE} (${LINTER_TEST_CASE_DIRECTORY}) doesn't exist or is not readable."
|
|
fi
|
|
|
|
if [ -z "$(ls -A "${LINTER_TEST_CASE_DIRECTORY}")" ]; then
|
|
fatal "Test case directory for ${LANGUAGE} (${LINTER_TEST_CASE_DIRECTORY}) is empty, and it should contain test cases for ${LANGUAGE}."
|
|
fi
|
|
done
|
|
|
|
notice "${FUNCTION_NAME} PASS"
|
|
}
|
|
|
|
LanguageArrayNotEmptyTest
|
|
LanguageTestPresenceTest
|