diff options
author | Bruno Wagner <bwagner@riseup.net> | 2017-01-03 15:58:36 -0200 |
---|---|---|
committer | Bruno Wagner <bwagner@riseup.net> | 2017-01-03 15:59:46 -0200 |
commit | 9da37a371bd4f7b14b28036ddb528c33bad1ad18 (patch) | |
tree | 71f02ffb62321a36a3c0f16b009e3d8282c748aa /service | |
parent | 7870742af6738a595a58facf006829d0f35f28e0 (diff) |
Go script is now using make to ease the transition
Diffstat (limited to 'service')
-rwxr-xr-x | service/go | 173 |
1 files changed, 18 insertions, 155 deletions
@@ -1,167 +1,30 @@ #!/bin/bash -NUM_OF_CORES='' -NUM_OF_JOBS='' -TRIAL_PATH='' -TRIAL_REPORTER='verbose' - -function getTrialAbsolutePath { - TRIAL_PATH="$(which trial)" -} - -function resolveNumOfCores { - if [ "$(uname)" == "Darwin" ]; then - NUM_OF_CORES="$(sysctl -n hw.ncpu)" - else - NUM_OF_CORES="$(nproc)" - fi -} - -function resolveNumOfJobs { - resolveNumOfCores - if [ "$(uname)" == "Darwin" ]; then - # Somehow, the tests fail on MacOS X for NUM_OF_JOBS="$NUM_OF_CORES" - NUM_OF_JOBS="$(($NUM_OF_CORES > 1 ? $NUM_OF_CORES / 2 : 1))" - else - NUM_OF_JOBS="$NUM_OF_CORES" - fi -} - -function removeZmqCertificates { - if [ -d ~/.config/leap/events/zmq_certificates ] ; then - echo "Removing zmq folder before running tests." - rm -Rf ~/.config/leap/events/zmq_certificates - fi -} - -function setuppy { - echo "Installing Pixelated User Agent." - pip install --upgrade pip setuptools - if [ `uname -s` = "Darwin" ]; then - CFLAGS="-DCRYPTOPP_DISABLE_ASM=1" pip install --exists-action s -r requirements.txt - else - pip install --exists-action s -r requirements.txt - fi - pip install --exists-action s -r test_requirements.txt - echo "Done." -} - -function setupjs { - echo "Installing node and bower libraries." - cd ../web-ui - npm install - node_modules/bower/bin/bower install --config.interactive=false --allow-root - LC_ALL=en_US.UTF-8 ./go build - cd - - echo "Done." -} - -function runIntegrationTests { - echo "Executing Integration Tests." - resolveNumOfJobs - trial -j $NUM_OF_JOBS --reporter=$TRIAL_REPORTER $* test.integration - echo "Done." -} - -function runUnitTests { - echo "Executing Unit Tests." - removeZmqCertificates - trial --reporter=$TRIAL_REPORTER $* test.unit - echo "Done." -} - -function runPep8 { - echo "Verifying conformation to pep8." - pep8 pixelated test --ignore=E501 - echo "Done." -} - -function runJSHint { - echo "Executing JSHint." - cd ../web-ui - LC_ALL=en_US.UTF-8 ./go jshint - cd - - echo "Done." -} - -function runCoverageUnit { - echo "Generating Unit Test Converage Information." - coverage erase - getTrialAbsolutePath - coverage run -p --source=pixelated $TRIAL_PATH --reporter=$TRIAL_REPORTER $* test.unit - coverage combine - coverage html - echo "Done." -} - -function runCoverageIntegration { - echo "Generating Integration Test Converage Information." - coverage erase - getTrialAbsolutePath - coverage run -p --source=pixelated $TRIAL_PATH --reporter=$TRIAL_REPORTER $* test.integration - coverage combine - coverage html - echo "Done." -} - -function runCoverageUnitAndIntegration { - echo "Generating Unit and Integration Test Converage Information." - coverage erase - getTrialAbsolutePath - coverage run -p --source=pixelated $TRIAL_PATH --reporter=$TRIAL_REPORTER test.unit - coverage run -p --source=pixelated $TRIAL_PATH --reporter=$TRIAL_REPORTER test.integration - coverage combine - coverage html - echo "Done." -} - -function runFunctionalTests { - echo "Executing Functional Tests on headless PhantomJS." - removeZmqCertificates - echo "You should execute it on Debian box for more similar results with CI environment." - behave --tags ~@wip --tags ~@smoke test/functional/features - echo "Done." -} - -function cleanPyc { - find . -name '*.pyc' -delete -} - if [ "$1" == 'test' ]; then set -e - runPep8 - runUnitTests "${@:2}" - runIntegrationTests "${@:2}" -elif [ "$1" == 'unit' ]; then - set -e - cleanPyc - runUnitTests -elif [ "$1" == 'integration' ]; then - set -e - cleanPyc - runIntegrationTests + pushd .. + make test_py + popd elif [ "$1" == 'pep8' ]; then set -e - runPep8 -elif [ "$1" == 'setuppy' ]; then - setuppy -elif [ "$1" == 'setupjs' ]; then - setupjs + pushd .. + make linters_js + popd elif [ "$1" == 'setup' ]; then - setupjs - setuppy "${@:2}" -elif [ "$1" == 'coverage_unit' ]; then - runCoverageUnit "${@:2}" -elif [ "$1" == 'coverage_integration' ]; then - runCoverageIntegration "${@:2}" + set -e + pushd .. + make setup + popd elif [ "$1" == 'coverage_all' ]; then set -e - runPep8 - runCoverageUnitAndIntegration "${@:2}" -elif [ "$1" == 'start' ]; then - /usr/bin/env pixelated-user-agent "${@:2}" + pushd .. + make coverage + popd elif [ "$1" == "functional" ]; then - runFunctionalTests "${@:2}" + set -e + pushd .. + make test_functional + popd else - python setup.py $* + echo "Command doesn't exist" fi |