summaryrefslogtreecommitdiff
path: root/openembedded
diff options
context:
space:
mode:
authorAndrew McDermott <andrew.mcdermott@linaro.org>2013-08-23 23:33:04 +0100
committerAndrew McDermott <andrew.mcdermott@linaro.org>2013-08-23 23:58:10 +0100
commit57bb952efe10c3a8a4578731875335e0f9962745 (patch)
tree1058e4b42dfc63632270c954e8744b96d2bc5b57 /openembedded
parent214c33887e048923d0735c3aece613ed782c95b8 (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.yaml21
-rw-r--r--openembedded/openjdk8-sanity.yaml21
-rwxr-xr-xopenembedded/scripts/openjdk-version.sh63
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