This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
roh gerrit-no-reply at lists.osmocom.orgroh has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/17099 )
Change subject: Implement CI scripts for testing the resulting binary on hardware for jenkins
......................................................................
Implement CI scripts for testing the resulting binary on hardware for jenkins
Change-Id: I3ddd2b9afda0e15883603566259c6e58571d2bc8
---
A tests/run-tests
A tests/sysmo-octsim/01_check_rig.out
A tests/sysmo-octsim/01_check_rig.sh
A tests/sysmo-octsim/02_flash_dfu.out
A tests/sysmo-octsim/02_flash_dfu.sh
A tests/sysmo-octsim/03_check_lsusb.out
A tests/sysmo-octsim/03_check_lsusb.sh
A tests/sysmo-octsim/04_check_dfu_lsusb.out
A tests/sysmo-octsim/04_check_dfu_lsusb.sh
A tests/sysmo-octsim/README
A tests/sysmo-octsim/ctl_reset_target.sh
A tests/sysmo-octsim/ctl_reset_to_dfu.sh
A tests/sysmo-octsim/fetch_image.sh
A tests/sysmo-octsim/flash_octsim_dfu.sh
A tests/sysmo-octsim/prepare
A tests/sysmo-octsim/regen
A tests/sysmo-octsim/run-tests
A tests/sysmo-octsim/test-data
18 files changed, 312 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ccid-firmware refs/changes/99/17099/1
diff --git a/tests/run-tests b/tests/run-tests
new file mode 100755
index 0000000..bfc942d
--- /dev/null
+++ b/tests/run-tests
@@ -0,0 +1,14 @@
+#!/bin/sh
+echo "=========================================================="
+echo " EXECUTING TESTS FOR SYSMO-OCTSIM"
+echo "=========================================================="
+echo ""
+cd ./sysmo-octsim
+echo "Location $PWD"
+echo ""
+sh ./run-tests
+cd ..
+echo ""
+echo ""
+echo ""
+echo ""
diff --git a/tests/sysmo-octsim/01_check_rig.out b/tests/sysmo-octsim/01_check_rig.out
new file mode 100644
index 0000000..1bd7d66
--- /dev/null
+++ b/tests/sysmo-octsim/01_check_rig.out
@@ -0,0 +1,90 @@
+
+ID 04d8:ffee Microchip Technology, Inc. Devantech USB-ISS
+Device Descriptor:
+ bLength 18
+ bDescriptorType 1
+ bcdUSB 2.00
+ bDeviceClass 2 Communications
+ bDeviceSubClass 0
+ bDeviceProtocol 0
+ bMaxPacketSize0 8
+ idVendor 0x04d8 Microchip Technology, Inc.
+ idProduct 0xffee Devantech USB-ISS
+ bcdDevice 1.00
+ iManufacturer 1 Devantech Ltd.
+ iProduct 2 USB-RLY08
+ iSerial 3 00021197
+ bNumConfigurations 1
+ Configuration Descriptor:
+ bLength 9
+ bDescriptorType 2
+ wTotalLength 0x0043
+ bNumInterfaces 2
+ bConfigurationValue 1
+ iConfiguration 0
+ bmAttributes 0xc0
+ Self Powered
+ MaxPower 100mA
+ Interface Descriptor:
+ bLength 9
+ bDescriptorType 4
+ bInterfaceNumber 0
+ bAlternateSetting 0
+ bNumEndpoints 1
+ bInterfaceClass 2 Communications
+ bInterfaceSubClass 2 Abstract (modem)
+ bInterfaceProtocol 1 AT-commands (v.25ter)
+ iInterface 0
+ CDC Header:
+ bcdCDC 1.10
+ CDC ACM:
+ bmCapabilities 0x02
+ line coding and serial state
+ CDC Union:
+ bMasterInterface 0
+ bSlaveInterface 1
+ CDC Call Management:
+ bmCapabilities 0x00
+ bDataInterface 1
+ Endpoint Descriptor:
+ bLength 7
+ bDescriptorType 5
+ bEndpointAddress 0x81 EP 1 IN
+ bmAttributes 3
+ Transfer Type Interrupt
+ Synch Type None
+ Usage Type Data
+ wMaxPacketSize 0x0008 1x 8 bytes
+ bInterval 2
+ Interface Descriptor:
+ bLength 9
+ bDescriptorType 4
+ bInterfaceNumber 1
+ bAlternateSetting 0
+ bNumEndpoints 2
+ bInterfaceClass 10 CDC Data
+ bInterfaceSubClass 0
+ bInterfaceProtocol 0
+ iInterface 0
+ Endpoint Descriptor:
+ bLength 7
+ bDescriptorType 5
+ bEndpointAddress 0x02 EP 2 OUT
+ bmAttributes 2
+ Transfer Type Bulk
+ Synch Type None
+ Usage Type Data
+ wMaxPacketSize 0x0040 1x 64 bytes
+ bInterval 0
+ Endpoint Descriptor:
+ bLength 7
+ bDescriptorType 5
+ bEndpointAddress 0x82 EP 2 IN
+ bmAttributes 2
+ Transfer Type Bulk
+ Synch Type None
+ Usage Type Data
+ wMaxPacketSize 0x0040 1x 64 bytes
+ bInterval 0
+Device Status: 0x0001
+ Self Powered
diff --git a/tests/sysmo-octsim/01_check_rig.sh b/tests/sysmo-octsim/01_check_rig.sh
new file mode 100755
index 0000000..3831fb6
--- /dev/null
+++ b/tests/sysmo-octsim/01_check_rig.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+. ./test-data
+
+lsusb -d 04d8:ffee -v 2>/dev/null | sed -e "s/$Bus.*Device.*:\ ID/ID/g"
diff --git a/tests/sysmo-octsim/02_flash_dfu.out b/tests/sysmo-octsim/02_flash_dfu.out
new file mode 100644
index 0000000..eacc4d1
--- /dev/null
+++ b/tests/sysmo-octsim/02_flash_dfu.out
@@ -0,0 +1,23 @@
+fetch image
+done
+resetting target to dfu
+done
+dfu-util 0.9
+
+Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
+Copyright 2010-2016 Tormod Volden and Stefan Schmidt
+This program is Free Software and has ABSOLUTELY NO WARRANTY
+Please report bugs to http://sourceforge.net/p/dfu-util/tickets/
+
+Opening DFU capable USB device...
+ID 1d50:6141
+Run-time device DFU version 0110
+Claiming USB DFU Interface...
+Setting Alternate Setting #0 ...
+Determining device status: state = dfuIDLE, status = 0
+dfuIDLE, continuing
+DFU mode device DFU version 0110
+Device returned transfer size 512
+Copying data from PC to DFU device
+Download done.
+Resetting USB to switch back to runtime mode
diff --git a/tests/sysmo-octsim/02_flash_dfu.sh b/tests/sysmo-octsim/02_flash_dfu.sh
new file mode 100755
index 0000000..bee32f3
--- /dev/null
+++ b/tests/sysmo-octsim/02_flash_dfu.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+. ./test-data
+
+./fetch_image.sh
+./ctl_reset_to_dfu.sh
+./flash_octsim_dfu.sh
diff --git a/tests/sysmo-octsim/03_check_lsusb.out b/tests/sysmo-octsim/03_check_lsusb.out
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tests/sysmo-octsim/03_check_lsusb.out
diff --git a/tests/sysmo-octsim/03_check_lsusb.sh b/tests/sysmo-octsim/03_check_lsusb.sh
new file mode 100755
index 0000000..42ff134
--- /dev/null
+++ b/tests/sysmo-octsim/03_check_lsusb.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+. ./test-data
+
+lsusb -d 1d50:6141 -v 2>/dev/null | sed -e "s/$Bus.*Device.*:\ ID/ID/g"
diff --git a/tests/sysmo-octsim/04_check_dfu_lsusb.out b/tests/sysmo-octsim/04_check_dfu_lsusb.out
new file mode 100644
index 0000000..4e8e136
--- /dev/null
+++ b/tests/sysmo-octsim/04_check_dfu_lsusb.out
@@ -0,0 +1,54 @@
+resetting target to dfu
+done
+
+ID 1d50:6141 OpenMoko, Inc.
+Device Descriptor:
+ bLength 18
+ bDescriptorType 1
+ bcdUSB 2.00
+ bDeviceClass 0
+ bDeviceSubClass 0
+ bDeviceProtocol 0
+ bMaxPacketSize0 64
+ idVendor 0x1d50 OpenMoko, Inc.
+ idProduct 0x6141
+ bcdDevice 0.00
+ iManufacturer 1 sysmocom
+ iProduct 2 sysmoOCTSIM (osmo-ASF4-DFU)
+ iSerial 0
+ bNumConfigurations 1
+ Configuration Descriptor:
+ bLength 9
+ bDescriptorType 2
+ wTotalLength 0x001b
+ bNumInterfaces 1
+ bConfigurationValue 1
+ iConfiguration 0
+ bmAttributes 0x80
+ (Bus Powered)
+ MaxPower 100mA
+ Interface Descriptor:
+ bLength 9
+ bDescriptorType 4
+ bInterfaceNumber 0
+ bAlternateSetting 0
+ bNumEndpoints 0
+ bInterfaceClass 254 Application Specific Interface
+ bInterfaceSubClass 1 Device Firmware Update
+ bInterfaceProtocol 2
+ iInterface 3 SAM D5x/E5x DFU bootloader (DFU mode)
+ Device Firmware Upgrade Interface Descriptor:
+ bLength 9
+ bDescriptorType 33
+ bmAttributes 9
+ Will Detach
+ Manifestation Intolerant
+ Upload Unsupported
+ Download Supported
+ wDetachTimeout 0 milliseconds
+ wTransferSize 512 bytes
+ bcdDFUVersion 1.10
+Device Status: 0x0000
+ (Bus Powered)
+resetting target
+done
diff --git a/tests/sysmo-octsim/04_check_dfu_lsusb.sh b/tests/sysmo-octsim/04_check_dfu_lsusb.sh
new file mode 100755
index 0000000..eef2246
--- /dev/null
+++ b/tests/sysmo-octsim/04_check_dfu_lsusb.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+. ./test-data
+
+./ctl_reset_to_dfu.sh
+lsusb -d 1d50:6141 -v 2>/dev/null | sed -e "s/$Bus.*Device.*:\ ID/ID/g"
+./ctl_reset_target.sh
diff --git a/tests/sysmo-octsim/README b/tests/sysmo-octsim/README
new file mode 100644
index 0000000..b3ac561
--- /dev/null
+++ b/tests/sysmo-octsim/README
@@ -0,0 +1,4 @@
+This testsuite assumes you have installed the following utilities:
+- lsusb
+- dfu-util
+- wget
diff --git a/tests/sysmo-octsim/ctl_reset_target.sh b/tests/sysmo-octsim/ctl_reset_target.sh
new file mode 100755
index 0000000..6eed990
--- /dev/null
+++ b/tests/sysmo-octsim/ctl_reset_target.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+#usb_rly08 serial
+USB_RELAY="/dev/serial/by-id/usb-Devantech_Ltd._USB-RLY08_00021197-if00"
+
+#usb_rly08
+# relay1 = usbpower
+# relay2 = dfu-btn
+
+#12 off
+echo "resetting target"
+echo -n "op" > $USB_RELAY
+sleep 1
+# 1 on
+echo -n "e" > $USB_RELAY
+sleep 1
+echo "done"
diff --git a/tests/sysmo-octsim/ctl_reset_to_dfu.sh b/tests/sysmo-octsim/ctl_reset_to_dfu.sh
new file mode 100755
index 0000000..969ca0c
--- /dev/null
+++ b/tests/sysmo-octsim/ctl_reset_to_dfu.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+#usb_rly08 serial
+USB_RELAY="/dev/serial/by-id/usb-Devantech_Ltd._USB-RLY08_00021197-if00"
+
+#usb_rly08
+# relay1 = usbpower
+# relay2 = dfu-btn
+
+echo "resetting target to dfu"
+#12 off
+echo -n "op" > $USB_RELAY
+sleep 1
+# 2 on
+echo -n "f" > $USB_RELAY
+sleep 1
+# 1 on
+echo -n "e" > $USB_RELAY
+sleep 1
+# 2 off
+echo -n "p" > $USB_RELAY
+sleep 1
+echo "done"
diff --git a/tests/sysmo-octsim/fetch_image.sh b/tests/sysmo-octsim/fetch_image.sh
new file mode 100755
index 0000000..c0a4f8f
--- /dev/null
+++ b/tests/sysmo-octsim/fetch_image.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+. ./test-data
+
+echo "fetch image"
+wget -O dl/sysmoOCTSIM-latest.bin http://ftp.osmocom.org/binaries/osmo-ccid-firmware/latest/sysmoOCTSIM.bin -nv
+echo "done"
diff --git a/tests/sysmo-octsim/flash_octsim_dfu.sh b/tests/sysmo-octsim/flash_octsim_dfu.sh
new file mode 100755
index 0000000..5b9c19a
--- /dev/null
+++ b/tests/sysmo-octsim/flash_octsim_dfu.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+dfu-util --device 1d50:6141 --alt 0 --reset --download dl/sysmoOCTSIM-latest.bin 2>/dev/null |grep -v "Download\t"|grep -v "\["
diff --git a/tests/sysmo-octsim/prepare b/tests/sysmo-octsim/prepare
new file mode 100755
index 0000000..bb95e40
--- /dev/null
+++ b/tests/sysmo-octsim/prepare
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+. ./test-data
+
+echo "================ PREPARING TEST RIG ================"
+./ctl_reset_target.sh
+echo "================ TEST RIG PREPARED ================="
+echo ""
diff --git a/tests/sysmo-octsim/regen b/tests/sysmo-octsim/regen
new file mode 100755
index 0000000..7ed1fab
--- /dev/null
+++ b/tests/sysmo-octsim/regen
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+echo "Regenerating test output..."
+./prepare
+./01_check_rig.sh > ./01_check_rig.out
+./02_flash_dfu.sh > ./02_flash_dfu.out
+./03_check_lsusb.sh > ./03_check_lsusb.out
+./04_check_dfu_lsusb.sh > ./04_check_dfu_lsusb.out
+echo "Reference output regenerated!"
+echo ""
+
diff --git a/tests/sysmo-octsim/run-tests b/tests/sysmo-octsim/run-tests
new file mode 100755
index 0000000..b67c425
--- /dev/null
+++ b/tests/sysmo-octsim/run-tests
@@ -0,0 +1,39 @@
+#!/bin/sh
+
+# default: execute all tests
+TESTS="01_check_rig.sh 02_flash_dfu.sh 03_check_lsusb.sh 04_check_dfu_lsusb.sh"
+
+# if command line specifies some specific tests, execute only those
+if [ $# -ge 1 ]; then
+ TESTS=$*
+fi
+
+TMP=`tempfile`
+NUM_FAIL=0
+
+# prepare test card
+./prepare
+
+for T in $TESTS; do
+ echo "==> Executing Testcase $T"
+ EXPOUT=${T%%.sh}.out
+ rm $TMP
+ ./$T > $TMP
+ diff -u $EXPOUT $TMP
+ if [ $? -eq 0 ]; then
+ echo "Test $T passed"
+ else
+ echo "Test $T FAILED!"
+ NUM_FAIL=$((NUM_FAIL+1))
+ fi
+done
+
+echo
+echo
+echo "Summary: $NUM_FAIL Tests failed"
+
+if [ $NUM_FAIL -gt 0 ]; then
+ exit 1
+else
+ exit 0
+fi
diff --git a/tests/sysmo-octsim/test-data b/tests/sysmo-octsim/test-data
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tests/sysmo-octsim/test-data
--
To view, visit https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/17099
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ccid-firmware
Gerrit-Branch: master
Gerrit-Change-Id: I3ddd2b9afda0e15883603566259c6e58571d2bc8
Gerrit-Change-Number: 17099
Gerrit-PatchSet: 1
Gerrit-Owner: roh <jsteiger at sysmocom.de>
Gerrit-MessageType: newchange
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200207/ad427d93/attachment.htm>