dexter has uploaded this change for review. ( 
https://gerrit.osmocom.org/c/pysim/+/33964 )


Change subject: pysim-test: rename pysim-test.sh to pySim-prog_test.sh
......................................................................

pysim-test: rename pysim-test.sh to pySim-prog_test.sh

We now have pySim-shell and pySim-trace. Let's give pysim-test.sh a more
distinctive name so that it is clear to which program it refers.

Related: OS#6094
Change-Id: I438f63f9580ebd3c7cc78cc5dab13c9937ac6e3a
---
M contrib/jenkins.sh
D tests/pysim-test.sh
2 files changed, 14 insertions(+), 231 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/64/33964/1

diff --git a/contrib/jenkins.sh b/contrib/jenkins.sh
index 583400b..93dc4bc 100755
--- a/contrib/jenkins.sh
+++ b/contrib/jenkins.sh
@@ -28,7 +28,7 @@

        # Run the test with physical cards
        cd pysim-testdata
-       ../tests/pysim-test.sh
+       ../tests/pySim-prog_test.sh
        ../tests/pySim-trace_test.sh
        ;;
 "pylint")
diff --git a/tests/pysim-test.sh b/tests/pysim-test.sh
deleted file mode 100755
index 4004c18..0000000
--- a/tests/pysim-test.sh
+++ /dev/null
@@ -1,230 +0,0 @@
-#!/bin/bash
-
-# Utility to verify the functionality of pysim-prog.py
-#
-# (C) 2018 by Sysmocom s.f.m.c. GmbH
-# All Rights Reserved
-#
-# Author: Philipp Maier
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-PYSIM_PROG=../pySim-prog.py
-PYSIM_READ=../pySim-read.py
-TEMPFILE=temp.tmp
-PYTHON=python3
-
-set -e
-
-echo "pysim-test - a test program to test pysim-prog.py"
-echo "================================================="
-
-# Generate a list of the cards we expect to see by checking which .ok files
-# are present
-function gen_card_list {
-    N_CARDS=0
-
-    echo "Expecting to see the following cards:"
-
-    for I in *.data ; do
-       CARD_NAMES[$N_CARDS]=${I%.*}
-       CARD_SEEN[$N_CARDS]=0
-       N_CARDS=$((N_CARDS+1))
-    done
-
-    for I in $(seq 0 $((N_CARDS-1))); do
-       echo ${CARD_NAMES[$I]}
-    done
-}
-
-# Increment counter in card list for a specified card name (type)
-function inc_card_list {
-    CARD_NAME=$1
-    for I in $(seq 0 $((N_CARDS-1))); do
-       if [ $CARD_NAME = ${CARD_NAMES[$I]} ]; then
-           CARD_SEEN[$I]=$((${CARD_NAMES[$I]}+1))
-       fi
-    done
-}
-
-# Check the card list, each card must be seen exactly one times
-function check_card_list {
-    for I in $(seq 0 $((N_CARDS-1))); do
-       if [ ${CARD_SEEN[$I]} -ne 1 ]; then
-           echo "Error: Card ${CARD_NAMES[$I]} seen ${CARD_SEEN[$I]} times!"
-           exit 1
-       fi
-    done
-
-    echo "All cards seen -- everything ok!"
-}
-
-# Verify the contents of a card by reading them and then diffing against the
-# previously created .ok file
-function check_card {
-    TERMINAL=$1
-    CARD_NAME=$2
-    echo "Verifying card ..."
-    stat ./$CARD_NAME.ok > /dev/null
-    $PYTHON $PYSIM_READ -p $TERMINAL > $TEMPFILE
-    set +e
-    CARD_DIFF=$(diff $TEMPFILE ./$CARD_NAME.ok)
-    set -e
-
-    if [ "$CARD_DIFF" != "" ]; then
-       echo "Card contents do not match the test data:"
-       echo "Expected: $CARD_NAME.ok"
-       echo "------------8<------------"
-       cat "$CARD_NAME.ok"
-       echo "------------8<------------"
-       echo "Got:"
-       echo "------------8<------------"
-       cat $TEMPFILE
-       echo "------------8<------------"
-       rm *.tmp
-       exit 1
-    fi
-
-    inc_card_list $CARD_NAME
-
-    echo "Card contents match the test data -- success!"
-    rm $TEMPFILE
-}
-
-# Read out the card using pysim-read and store the result as .ok file. This
-# data will be used later in order to verify the results of our write tests.
-function gen_ok_file {
-    TERMINAL=$1
-    CARD_NAME=$2
-    $PYTHON $PYSIM_READ -p $TERMINAL > "$CARD_NAME.ok"
-    echo "Generated file: $CARD_NAME.ok"
-    echo "------------8<------------"
-    cat "$CARD_NAME.ok"
-    echo "------------8<------------"
-}
-
-# Find out the type (card name) of the card that is installed in the specified
-# reader
-function probe_card {
-    TERMINAL=$1
-    RESULT=$(timeout 5 $PYSIM_PROG -p $TERMINAL -T | cut -d ":" -f 2 | tail -n 
1 | xargs)
-    echo $RESULT
-}
-
-# Read out all cards and store the results as .ok files
-function gen_ok_files {
-    echo "== OK FILE GENERATION =="
-    for I in $(seq 0 $((N_TERMINALS-1))); do
-       echo "Probing card in terminal #$I"
-       CARD_NAME=$(probe_card $I)
-       if [ -z "$CARD_NAME" ]; then
-           echo "Error: Unresponsive card!"
-           exit 1
-       fi
-       echo "Card is of type: $CARD_NAME"
-       gen_ok_file $I $CARD_NAME
-    done
-}
-
-# Execute tests. Each card is programmed and the contents are checked
-# afterwards.
-function run_test {
-    for I in $(seq 0 $((N_TERMINALS-1))); do
-       echo "== EXECUTING TEST =="
-       echo "Probing card in terminal #$I"
-       CARD_NAME=$(probe_card $I)
-       if [ -z "$CARD_NAME" ]; then
-           echo "Error: Unresponsive card!"
-           exit 1
-       fi
-       echo "Card is of type: $CARD_NAME"
-
-       # Make sure some default data is set
-       MCC=001
-       MNC=01
-       ICCID=1122334455667788990
-       KI=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-       OPC=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-       IMSI=001010000000001
-       MSISDN=6766266
-       ADM=00000000
-       ADM_HEX=""
-       ADM_OPT="-a"
-
-       source "$CARD_NAME.data"
-       if [ -n "$ADM_HEX" ]; then
-               ADM_OPT="-A"
-               ADM=$ADM_HEX
-       fi
-       $PYTHON $PYSIM_PROG -p $I -t $CARD_NAME -o $OPC -k $KI -x $MCC -y $MNC 
-i $IMSI -s $ICCID --msisdn $MSISDN $ADM_OPT $ADM
-       check_card $I $CARD_NAME
-       echo ""
-    done
-}
-
-function usage {
-    echo "Options:"
-    echo "-n: number of card terminals"
-    echo "-o: generate .ok files"
-}
-
-# Make sure that the pathes to the python scripts always work, regardless from
-# where the script is called.
-CURDIR=$PWD
-SCRIPTDIR=$(dirname $0)
-cd $SCRIPTDIR
-PYSIM_PROG=$(realpath $PYSIM_PROG)
-PYSIM_READ=$(realpath $PYSIM_READ)
-cd $CURDIR
-
-OPT_N_TERMINALS=0
-OPT_GEN_OK_FILES=0
-while getopts ":hon:" OPT; do
-  case $OPT in
-      h)
-         usage
-         exit 0
-         ;;
-      o)
-         OPT_GEN_OK_FILES=1
-         ;;
-      n)
-         OPT_N_TERMINALS=$OPTARG
-         ;;
-      \?)
-         echo "Invalid option: -$OPTARG" >&2
-         exit 1
-      ;;
-  esac
-done
-
-N_TERMINALS=$OPT_N_TERMINALS
-
-# Generate a list of available cards, if no explicit reader number is given
-# then the number of cards will be used as reader number.
-gen_card_list
-if [ $N_TERMINALS -eq 0 ]; then
-    N_TERMINALS=$N_CARDS
-fi
-echo "Number of card terminals installed: $N_TERMINALS"
-echo ""
-
-if [ $OPT_GEN_OK_FILES -eq 1 ]; then
-    gen_ok_files
-    exit 0
-else
-    run_test
-    check_card_list
-    exit 0
-fi

--
To view, visit https://gerrit.osmocom.org/c/pysim/+/33964
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: pysim
Gerrit-Branch: master
Gerrit-Change-Id: I438f63f9580ebd3c7cc78cc5dab13c9937ac6e3a
Gerrit-Change-Number: 33964
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pma...@sysmocom.de>
Gerrit-MessageType: newchange

Reply via email to