diff --git a/.github/workflows/run_test.yml b/.github/workflows/run_test.yml new file mode 100644 index 0000000..e2e723f --- /dev/null +++ b/.github/workflows/run_test.yml @@ -0,0 +1,29 @@ +name: Sentinel + +on: + push: + branches: + - master + pull_request: + +jobs: + test-suite: + runs-on: ubuntu-latest + strategy: + matrix: + python-version: [3.11] + steps: + - uses: actions/checkout@v2 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + - name: Install Python dependencies + run: | + cd tests/ + pip install --upgrade pip setuptools wheel + pip install -r requirements.txt + cd .. + - name: Run test suites + run: | + ./run_tests.sh --url ${{ secrets.APIURLDEV }} diff --git a/run_tests.sh b/run_tests.sh new file mode 100755 index 0000000..526cf0c --- /dev/null +++ b/run_tests.sh @@ -0,0 +1,50 @@ +#!/bin/bash +# Copyright 2024 AstroLab Software +# Author: Julien Peloton +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +set -e +message_help=""" +Run the test suite of the modules\n\n +Usage:\n + \t./run_tests.sh [--url]\n\n + +--url is the Science Portal URL you would like to test against. +""" +# Grab the command line arguments +while [ "$#" -gt 0 ]; do + case "$1" in + --url) + URL="$2" + shift 2 + ;; + -h) + echo -e $message_help + exit + ;; + esac +done + +if [[ -f $URL ]]; then + echo "You need to specify an URL" $URL + exit +fi + +# Run the test suite on the utilities +cd tests +for filename in ./*.py +do + echo $filename + # Run test suite + python $filename $URL +done