diff options
author | Andrew McDermott <andrew.mcdermott@linaro.org> | 2013-08-23 23:33:04 +0100 |
---|---|---|
committer | Andrew McDermott <andrew.mcdermott@linaro.org> | 2013-08-23 23:58:10 +0100 |
commit | 57bb952efe10c3a8a4578731875335e0f9962745 (patch) | |
tree | 1058e4b42dfc63632270c954e8744b96d2bc5b57 /openembedded | |
parent | 214c33887e048923d0735c3aece613ed782c95b8 (diff) |
openembedded: add openjdk sanity test
The sanity test verifies that the javac and java binaries can execute
by generating a program that prints the version of java on $PATH.
This version is then matched against an expected version string.
Signed-off-by: Andrew McDermott <andrew.mcdermott@linaro.org>
Diffstat (limited to 'openembedded')
-rw-r--r-- | openembedded/openjdk7-sanity.yaml | 21 | ||||
-rw-r--r-- | openembedded/openjdk8-sanity.yaml | 21 | ||||
-rwxr-xr-x | openembedded/scripts/openjdk-version.sh | 63 |
3 files changed, 105 insertions, 0 deletions
diff --git a/openembedded/openjdk7-sanity.yaml b/openembedded/openjdk7-sanity.yaml new file mode 100644 index 0000000..0e75339 --- /dev/null +++ b/openembedded/openjdk7-sanity.yaml @@ -0,0 +1,21 @@ +metadata: + name: openjdk7-sanity + format: "Lava-Test-Shell Test Definition 1.0" + description: "Validates that the OpenJDK 7 java binary can run and matches version 1.7" + version: 1.0 + +install: + git-repos: + - git://spicy/scratch/test-definitions + +run: + steps: + - 'cd test-definitions/openembedded/scripts' + - 'PATH=/usr/lib/jvm/openjdk-7-jdk/bin:/usr/lib/jvm/openjdk-7-jre/bin:$PATH' + - './openjdk-version.sh 1.7' + +parse: + pattern: "^(?P<test_case_id>[^:]+):\\s(?P<result>\\w+)" + fixupdict: + PASS: pass + FAIL: fail diff --git a/openembedded/openjdk8-sanity.yaml b/openembedded/openjdk8-sanity.yaml new file mode 100644 index 0000000..6ce1bbb --- /dev/null +++ b/openembedded/openjdk8-sanity.yaml @@ -0,0 +1,21 @@ +metadata: + name: openjdk8-sanity + format: "Lava-Test-Shell Test Definition 1.0" + description: "Validates that the OpenJDK 8 java binary can run and matches version 1.8" + version: 1.0 + +install: + git-repos: + - git://git.linaro.org/qa/test-definitions.git + +run: + steps: + - 'cd test-definitions/openembedded/scripts' + - 'PATH=/usr/lib/jvm/openjdk-8-jdk/bin:/usr/lib/jvm/openjdk-8-jre/bin:$PATH' + - './openjdk-version.sh 1.8' + +parse: + pattern: "^(?P<test_case_id>[^:]+):\\s(?P<result>\\w+)" + fixupdict: + PASS: pass + FAIL: fail diff --git a/openembedded/scripts/openjdk-version.sh b/openembedded/scripts/openjdk-version.sh new file mode 100755 index 0000000..9b19f06 --- /dev/null +++ b/openembedded/scripts/openjdk-version.sh @@ -0,0 +1,63 @@ +#!/bin/bash +# +# OpenJDK execution and version test. +# +# Copyright (C) 2013, Linaro Limited. +# +# 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, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# Author: Andrew McDermott <andrew.mcdermott@linaro.org> +# + +if [ $# -eq 0 ]; then + echo "usage: $0 <version>" + exit 1 +fi + +version=$1 + +rm -f JavaVersion.java JavaVersion.class + +echo ' +class JavaVersion { + public static void main(String[] args) { + System.out.println(System.getProperty("java.version")); + } +}' > JavaVersion.java + +javac JavaVersion.java + +if [ $? -ne 0 ]; then + echo "openjdk-version: fail" + exit 1 +fi + +actual_version=`java JavaVersion` + +echo "actual version: $actual_version" +echo "expected version: $version" + +if [ $? -eq 0 ]; then + if [[ "$actual_version" =~ "$version" ]]; then + echo "openjdk-version: pass" + exit 0 + else + echo "openjdk-version: fail" + exit 1 + fi +else + echo "openjdk-version: fail" + exit 1 +fi |