aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorPaul Sokolovsky <paul.sokolovsky@linaro.org>2012-04-23 17:45:03 +0300
committerPaul Sokolovsky <paul.sokolovsky@linaro.org>2012-04-23 17:45:03 +0300
commit9b14838b95943454611884a55219bf538239bba9 (patch)
treee58467058e86711eb0efad372c7594d89c34bbb4 /tests
parent5d54f9d2f5bc4053e58dc58941ccd2e3d580318d (diff)
prepare_build_config.py: Fix mistakes and add more tests.
Diffstat (limited to 'tests')
-rw-r--r--tests/test_prepare_build_config.py58
1 files changed, 58 insertions, 0 deletions
diff --git a/tests/test_prepare_build_config.py b/tests/test_prepare_build_config.py
index e8692c4..ff504f7 100644
--- a/tests/test_prepare_build_config.py
+++ b/tests/test_prepare_build_config.py
@@ -1,5 +1,7 @@
import sys
import os
+import base64
+import tempfile
sys.path.append(os.path.dirname(__file__) + "/../node")
import prepare_build_config
@@ -36,3 +38,59 @@ def test_validate_config():
assert False, "Mismatch wasn't caught"
except prepare_build_config.BuildConfigMismatchException:
pass
+
+ del os.environ["JOB_NAME"]
+
+def test_convert_config_to_shell():
+ config_base64 = """\
+TUFOSUZFU1RfUkVQTz1naXQ6Ly9hbmRyb2lkLmdpdC5saW5hcm8ub3JnL3BsYXRmb3JtL21hbmlm
+ZXN0LmdpdApNQU5JRkVTVF9CUkFOQ0g9bGluYXJvX2FuZHJvaWRfMi4zLjUKTUFOSUZFU1RfRklM
+RU5BTUU9c3RhZ2luZy1vbWFwNDQ2MC54bWwKVEFSR0VUX1BST0RVQ1Q9cGFuZGFib2FyZApUQVJH
+RVRfU0lNVUxBVE9SPWZhbHNlClRPT0xDSEFJTl9VUkw9aHR0cHM6Ly9hbmRyb2lkLWJ1aWxkLmxp
+bmFyby5vcmcvamVua2lucy9qb2IvbGluYXJvLWFuZHJvaWRfdG9vbGNoYWluLTQuNi1ienIvbGFz
+dFN1Y2Nlc3NmdWxCdWlsZC9hcnRpZmFjdC9idWlsZC9vdXQvYW5kcm9pZC10b29sY2hhaW4tZWFi
+aS00LjYtZGFpbHktbGludXgteDg2LnRhci5iejIKTEFWQV9TVUJNSVQ9MQ==
+"""
+ config_dict = {
+ 'TARGET_SIMULATOR': 'false',
+ 'TARGET_PRODUCT': 'pandaboard',
+ 'TOOLCHAIN_URL': 'https://android-build.linaro.org/jenkins/job/linaro-android_toolchain-4.6-bzr/lastSuccessfulBuild/artifact/build/out/android-toolchain-eabi-4.6-daily-linux-x86.tar.bz2',
+ 'MANIFEST_BRANCH': 'linaro_android_2.3.5',
+ 'MANIFEST_FILENAME': 'staging-omap4460.xml', 'LAVA_SUBMIT': '1',
+ 'MANIFEST_REPO': 'git://android.git.linaro.org/platform/manifest.git'
+ }
+
+ config_text = base64.b64decode(config_base64)
+ out_fd, out_filename = tempfile.mkstemp()
+ os.close(out_fd)
+ dict = prepare_build_config.convert_config_to_shell(config_text, out_filename)
+ assert dict == config_dict
+
+def test_main():
+ config_base64 = """\
+TUFOSUZFU1RfUkVQTz1naXQ6Ly9hbmRyb2lkLmdpdC5saW5hcm8ub3JnL3BsYXRmb3JtL21hbmlm
+ZXN0LmdpdApNQU5JRkVTVF9CUkFOQ0g9bGluYXJvX2FuZHJvaWRfMi4zLjUKTUFOSUZFU1RfRklM
+RU5BTUU9c3RhZ2luZy1vbWFwNDQ2MC54bWwKVEFSR0VUX1BST0RVQ1Q9cGFuZGFib2FyZApUQVJH
+RVRfU0lNVUxBVE9SPWZhbHNlClRPT0xDSEFJTl9VUkw9aHR0cHM6Ly9hbmRyb2lkLWJ1aWxkLmxp
+bmFyby5vcmcvamVua2lucy9qb2IvbGluYXJvLWFuZHJvaWRfdG9vbGNoYWluLTQuNi1ienIvbGFz
+dFN1Y2Nlc3NmdWxCdWlsZC9hcnRpZmFjdC9idWlsZC9vdXQvYW5kcm9pZC10b29sY2hhaW4tZWFi
+aS00LjYtZGFpbHktbGludXgteDg2LnRhci5iejIKTEFWQV9TVUJNSVQ9MQ==
+"""
+ config_dict = {
+ 'TARGET_SIMULATOR': 'false',
+ 'TARGET_PRODUCT': 'pandaboard',
+ 'TOOLCHAIN_URL': 'https://android-build.linaro.org/jenkins/job/linaro-android_toolchain-4.6-bzr/lastSuccessfulBuild/artifact/build/out/android-toolchain-eabi-4.6-daily-linux-x86.tar.bz2',
+ 'MANIFEST_BRANCH': 'linaro_android_2.3.5',
+ 'MANIFEST_FILENAME': 'staging-omap4460.xml', 'LAVA_SUBMIT': '1',
+ 'MANIFEST_REPO': 'git://android.git.linaro.org/platform/manifest.git'
+ }
+
+ out_fd, out_filename = tempfile.mkstemp()
+ prepare_build_config.BUILD_CONFIG_FILE = out_filename
+ os.environ["JOB_NAME"] = "foo_bar"
+ prepare_build_config.main(config_base64, True)
+ dict = {}
+ for l in open(out_filename):
+ var, val = l.rstrip().split("=", 1)
+ dict[var] = val
+ assert dict == config_dict