~popey/+junk/phablet-flash-wrapper

« back to all changes in this revision

Viewing changes to phablet-testing.sh

  • Committer: Alan Pope
  • Date: 2013-07-30 09:34:06 UTC
  • Revision ID: alan.pope@canonical.com-20130730093406-t7ah2cxedokwnsi8
add script to automate testing

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/bin/bash
 
2
# Script to wrap phablet-flash and phablet-test-run
 
3
#
 
4
# Script does the following:-
 
5
# * Flash device (via phablet-flash)
 
6
# * Test apps via autopilot
 
7
#
 
8
# Assumptions:-
 
9
# * Device already running some build of Ubuntu Touch and is connected via USB
 
10
# * You're on Wifi and want the device to be on the same Wifi network
 
11
#
 
12
# (c) 2013 Canonical - Alan Pope alan.pope@canonical.com
 
13
 
 
14
UBUNTU_ROOT="/"
 
15
DATESTAMP=`date +%Y%m%d`-`date +%H%M%S`
 
16
TMP_DIR="$HOME/phablet-testing/$DATESTAMP"
 
17
mkdir -p $TMP_DIR
 
18
 
 
19
function adb_root {
 
20
  echo ":: Run adb root"
 
21
  adb root
 
22
  if [ $? -ne "0" ]; then
 
23
    echo ":: adb root failed"
 
24
    exit 1
 
25
  fi
 
26
}
 
27
 
 
28
function pause {
 
29
    echo ":: Wait $1"
 
30
    sleep $1
 
31
}
 
32
 
 
33
function wait_for_device {
 
34
  echo -n ":: Waiting for device to come back ."
 
35
  STATE="unknown"
 
36
  while [ "$STATE" ==  "unknown" ];
 
37
  do
 
38
    echo -n "."
 
39
    STATE=`adb get-state`
 
40
    sleep 15
 
41
  done
 
42
  echo " "
 
43
}
 
44
 
 
45
date
 
46
 
 
47
adb_root
 
48
 
 
49
pause 5
 
50
 
 
51
echo ":: Delete old zip files to possibly regain space from /sdcard"
 
52
adb shell rm -r /sdcard/*.zip
 
53
 
 
54
echo ":: Flash device from scratch"
 
55
phablet-flash -b --pending
 
56
FLASH_RESULT=$?
 
57
if [ $FLASH_RESULT == "0" ]; then
 
58
  echo ":: Flash success"
 
59
else
 
60
  echo ":: Flash failed"
 
61
  exit 1
 
62
fi
 
63
 
 
64
wait_for_device
 
65
pause 10
 
66
adb_root
 
67
pause 5
 
68
 
 
69
echo ":: Delete old zip files to possibly regain space from /sdcard"
 
70
adb shell rm -r /sdcard/*.zip
 
71
 
 
72
echo ":: Verify flashed version"
 
73
 
 
74
adb shell cat /var/log/installer/media-info
 
75
 
 
76
echo ":: Setup networking"
 
77
 
 
78
phablet-network-setup -i
 
79
pause 5
 
80
 
 
81
echo ":: Setup test environment"
 
82
 
 
83
phablet-test-run -i
 
84
pause 5
 
85
 
 
86
echo ":: Get list of autopilot tests!"
 
87
TMP_FILE=$(mktemp)
 
88
adb shell apt-cache search app-autopilot | awk '{ print $1 }' > $TMP_FILE
 
89
 
 
90
echo ":: Start processing each app"
 
91
for F in $(cat $TMP_FILE) ; do
 
92
  # phablet-test-run -n -p 'qml-phone-shell-autopilot' qml_phone_shell
 
93
  AUPACKAGE=$F
 
94
  APPACKAGE=${F%%-autopilot}
 
95
  MODULE=`echo $APPACKAGE | tr \- _`
 
96
  echo ":: Starting test for $AUPACKAGE"
 
97
  mkdir -p $TMP_DIR/$MODULE
 
98
  echo phablet-test-run -o $TMP_DIR/$MODULE -n -p $AUPACKAGE $MODULE
 
99
  phablet-test-run -o $TMP_DIR/$MODULE -n -p $AUPACKAGE $MODULE 
 
100
done;
 
101
 
 
102
echo ":: Reboot to cleanup"
 
103
adb reboot
 
104
 
 
105
wait_for_device
 
106
 
 
107
echo ":: Done"
 
108
 
 
109
date
 
110
 
 
111
 
 
112