Sha256: 8c121b0dcecc4fbe9c066f175ede998528c23286f8762f01157d9811efdc89f9

Contents?: true

Size: 1.9 KB

Versions: 74

Compression:

Stored size: 1.9 KB

Contents

#!/usr/bin/env bash

# FORMAT

echo '-------------------------------------------------------'
echo "Checking Formatting"

if [ ! -f "bin/elm-format" ] || [[ ! $(bin/elm-format --help | grep "elm-format-0.18 0.7.0-exp") ]]; then
  echo "Installing local copy of elm-format"
  bin/install-elm-format
fi

bin/elm-format --yes --validate exercises/**/*.example.elm  exercises/**/tests/Tests.elm

if [ $? -ne 0 ]; then
    echo "*******************************************************************"
    echo "*******************************************************************"
    echo "**                       elm-format failed                       **"
    echo "**        perhaps some of your changes are not formatted?        **"
    echo "**             Please run elm-format before pushing.             **"
    echo "*******************************************************************"
    echo "*******************************************************************"
    exit 1
else
  echo "Formatting looks good!"
fi

# TEST

declare -i TEST_RESULT=0
FAILED_EXERCISES=''

mkdir -p build/tests

for example_file in exercises/**/*.example.elm
do
  # clean up generated code from last run
  rm -rf build/tests/elm-stuff/generated-code/

  exercise_dir=$(dirname $example_file)
  exercise_name=$(basename $example_file .example.elm)
  cp "$exercise_dir/$exercise_name.example.elm" "build/$exercise_name.elm"
  cp "$exercise_dir/tests/elm-package.json" build/tests/
  cat "$exercise_dir/tests/Tests.elm" | sed 's/skip <|//g' > build/tests/Tests.elm

  echo '-------------------------------------------------------'
  echo "Testing $exercise_name"


  npm test -- build/tests/Tests.elm

  # capture result from last command (elm-test)
  if [ $? -ne 0 ]; then
      TEST_RESULT=1
      FAILED_EXERCISES+="$exercise_name\n"
  fi
done

if [ $TEST_RESULT -ne 0 ]; then
  echo "The following exercises failed"
  printf $FAILED_EXERCISES
  exit $TEST_RESULT
fi

Version data entries

74 entries across 74 versions & 1 rubygems

Version Path
trackler-2.2.1.119 tracks/elm/bin/build.sh
trackler-2.2.1.118 tracks/elm/bin/build.sh
trackler-2.2.1.117 tracks/elm/bin/build.sh
trackler-2.2.1.116 tracks/elm/bin/build.sh
trackler-2.2.1.115 tracks/elm/bin/build.sh
trackler-2.2.1.114 tracks/elm/bin/build.sh
trackler-2.2.1.113 tracks/elm/bin/build.sh
trackler-2.2.1.111 tracks/elm/bin/build.sh
trackler-2.2.1.110 tracks/elm/bin/build.sh
trackler-2.2.1.109 tracks/elm/bin/build.sh
trackler-2.2.1.108 tracks/elm/bin/build.sh
trackler-2.2.1.107 tracks/elm/bin/build.sh
trackler-2.2.1.106 tracks/elm/bin/build.sh
trackler-2.2.1.105 tracks/elm/bin/build.sh