blob: 25b620427015a2a73883b363c14caa81e526892f [file] [log] [blame]
Naresh Kamboju9407a032016-10-13 17:18:41 +05301#!/bin/sh
2
Naresh Kambojufce2e1d2016-11-04 15:41:11 +05303# shellcheck disable=SC1091
Naresh Kamboju9407a032016-10-13 17:18:41 +05304. ../../lib/sh-test-lib
5OUTPUT="$(pwd)/output"
6RESULT_FILE="${OUTPUT}/result.txt"
Naresh Kambojufce2e1d2016-11-04 15:41:11 +05307export RESULT_FILE
Naresh Kamboju9407a032016-10-13 17:18:41 +05308INTERFACE="eth0"
Naresh Kamboju9407a032016-10-13 17:18:41 +05309
10usage() {
Naresh Kamboju155830d2016-11-18 15:23:45 +053011 echo "Usage: $0 [-s <true|false>] [-i <interface>]" 1>&2
Naresh Kamboju9407a032016-10-13 17:18:41 +053012 exit 1
13}
14
Naresh Kamboju155830d2016-11-18 15:23:45 +053015while getopts "s:i:" o; do
Naresh Kamboju9407a032016-10-13 17:18:41 +053016 case "$o" in
17 s) SKIP_INSTALL="${OPTARG}" ;;
18 i) INTERFACE="${OPTARG}" ;;
Naresh Kamboju9407a032016-10-13 17:18:41 +053019 *) usage ;;
20 esac
21done
22
23install() {
Naresh Kamboju155830d2016-11-18 15:23:45 +053024 pkgs="curl net-tools"
Naresh Kamboju9407a032016-10-13 17:18:41 +053025 install_deps "${pkgs}" "${SKIP_INSTALL}"
26}
27
28run() {
Naresh Kamboju155830d2016-11-18 15:23:45 +053029 test_case="$1"
Naresh Kamboju9407a032016-10-13 17:18:41 +053030 test_case_id="$2"
31 echo
32 info_msg "Running ${test_case_id} test..."
Naresh Kamboju155830d2016-11-18 15:23:45 +053033 info_msg "Running ${test_case} test..."
34 eval "${test_case}"
Naresh Kamboju9407a032016-10-13 17:18:41 +053035 check_return "${test_case_id}"
36}
37
38# Test run.
39[ -d "${OUTPUT}" ] && mv "${OUTPUT}" "${OUTPUT}_$(date +%Y%m%d%H%M%S)"
40mkdir -p "${OUTPUT}"
41
42install
Naresh Kamboju155830d2016-11-18 15:23:45 +053043
44# Get default Route Gateway IP address of a given interface
45GATEWAY=$(ip route list | grep default | awk '{print $3}')
46
Naresh Kamboju9407a032016-10-13 17:18:41 +053047run "netstat -an" "print-network-statistics"
48run "ip addr" "list-all-network-interfaces"
49run "route" "print-routing-tables"
50run "ip link set lo up" "ip-link-loopback-up"
51run "route" "route-dump-after-ip-link-loopback-up"
Naresh Kamboju155830d2016-11-18 15:23:45 +053052run "ip link set ${INTERFACE} up" "ip-link-interface-up"
53run "ip link set ${INTERFACE} down" "ip-link-interface-down"
54run "dhclient -v ${INTERFACE}" "Dynamic-Host-Configuration-Protocol-Client-dhclient-v"
Naresh Kamboju9407a032016-10-13 17:18:41 +053055run "route" "print-routing-tables-after-dhclient-request"
Naresh Kamboju155830d2016-11-18 15:23:45 +053056run "ping -c 5 ${GATEWAY}" "ping-gateway"
Naresh Kamboju9407a032016-10-13 17:18:41 +053057run "curl http://samplemedia.linaro.org/MPEG4/big_buck_bunny_720p_MPEG4_MP3_25fps_3300K.AVI -o curl_big_video.avi" "download-a-file"