diff options
author | Tristan Van Berkom <tristan.vanberkom@codethink.co.uk> | 2017-10-04 17:39:07 +0900 |
---|---|---|
committer | Tristan Van Berkom <tristan.vanberkom@codethink.co.uk> | 2017-10-10 19:29:59 +0900 |
commit | fa512fef4765cc63ceeb4a901a3a517cb83606d6 (patch) | |
tree | 3585e1bf833e962e15e964ef9cec78d6a17c4c49 | |
parent | ce5a47973bb639c1f61cd65cce212bb0308f0134 (diff) | |
download | buildstream-fa512fef4765cc63ceeb4a901a3a517cb83606d6.tar.gz |
Updated test cases for internal API changes stemming from project options
-rw-r--r-- | tests/completions/completions.py | 2 | ||||
-rw-r--r-- | tests/context/context.py | 2 | ||||
-rw-r--r-- | tests/loader/__init__.py | 12 | ||||
-rw-r--r-- | tests/loader/arches.py | 13 | ||||
-rw-r--r-- | tests/loader/basics.py | 13 | ||||
-rw-r--r-- | tests/loader/dependencies.py | 21 | ||||
-rw-r--r-- | tests/pipeline/load.py | 4 | ||||
-rw-r--r-- | tests/plugins/pipeline.py | 4 | ||||
-rw-r--r-- | tests/project/plugins.py | 4 | ||||
-rw-r--r-- | tests/project/project.py | 14 | ||||
-rw-r--r-- | tests/sources/fixture.py | 6 | ||||
-rw-r--r-- | tests/variables/variables.py | 4 |
12 files changed, 58 insertions, 41 deletions
diff --git a/tests/completions/completions.py b/tests/completions/completions.py index e20af4605..428252cb1 100644 --- a/tests/completions/completions.py +++ b/tests/completions/completions.py @@ -39,6 +39,8 @@ MAIN_OPTIONS = [ "--no-interactive ", "--no-strict ", "--no-verbose ", + "-o ", + "--option ", "--on-error ", "--pushers ", "--strict ", diff --git a/tests/context/context.py b/tests/context/context.py index 80853295b..79691350b 100644 --- a/tests/context/context.py +++ b/tests/context/context.py @@ -22,7 +22,7 @@ def context_fixture(): return { 'xdg-cache': cache_home, - 'context': Context('x86_64') + 'context': Context([], 'x86_64') } diff --git a/tests/loader/__init__.py b/tests/loader/__init__.py index e69de29bb..3cd5c3ec9 100644 --- a/tests/loader/__init__.py +++ b/tests/loader/__init__.py @@ -0,0 +1,12 @@ +from buildstream._options import OptionPool + + +# +# This is used by the loader test modules, these should +# be removed in favor of testing the functionality via +# the CLI like in the frontend tests anyway. +# +def make_options(basedir): + options = OptionPool(basedir) + options.resolve() + return options diff --git a/tests/loader/arches.py b/tests/loader/arches.py index 041fbb7e1..4106aec54 100644 --- a/tests/loader/arches.py +++ b/tests/loader/arches.py @@ -4,6 +4,7 @@ import pytest from buildstream import LoadError, LoadErrorReason from buildstream._loader import Loader from buildstream._metaelement import MetaElement +from . import make_options DATA_DIR = os.path.join( os.path.dirname(os.path.realpath(__file__)), @@ -19,7 +20,7 @@ def test_simple_conditional_nomatch(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) loader = Loader( - basedir, 'elements/simple-conditional.bst', 'arm', None) + basedir, 'elements/simple-conditional.bst', make_options(basedir), 'arm', None) element = loader.load() assert(isinstance(element, MetaElement)) @@ -34,7 +35,7 @@ def test_simple_conditional_x86_64(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) loader = Loader( - basedir, 'elements/simple-conditional.bst', 'x86_64', None) + basedir, 'elements/simple-conditional.bst', make_options(basedir), 'x86_64', None) element = loader.load() assert(isinstance(element, MetaElement)) @@ -49,7 +50,7 @@ def test_simple_conditional_x86_32(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) loader = Loader( - basedir, 'elements/simple-conditional.bst', 'x86_32', None) + basedir, 'elements/simple-conditional.bst', make_options(basedir), 'x86_32', None) element = loader.load() assert(isinstance(element, MetaElement)) @@ -69,7 +70,7 @@ def test_host_arch_conditional_armv8(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) loader = Loader( - basedir, 'elements/host-arch-conditional.bst', 'armv8', None) + basedir, 'elements/host-arch-conditional.bst', make_options(basedir), 'armv8', None) element = loader.load() assert(isinstance(element, MetaElement)) @@ -84,7 +85,7 @@ def test_host_arch_conditional_ignores_target_arch(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) loader = Loader( - basedir, 'elements/host-arch-conditional.bst', 'armv8', 'x86_32') + basedir, 'elements/host-arch-conditional.bst', make_options(basedir), 'armv8', 'x86_32') element = loader.load() assert(isinstance(element, MetaElement)) @@ -100,7 +101,7 @@ def test_host_arch_conditional_overridden(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) loader = Loader( - basedir, 'elements/host-arch-conditional.bst', 'armv8', 'x86_64') + basedir, 'elements/host-arch-conditional.bst', make_options(basedir), 'armv8', 'x86_64') element = loader.load() assert(isinstance(element, MetaElement)) diff --git a/tests/loader/basics.py b/tests/loader/basics.py index a395d3768..c85477898 100644 --- a/tests/loader/basics.py +++ b/tests/loader/basics.py @@ -4,6 +4,7 @@ import pytest from buildstream import LoadError, LoadErrorReason from buildstream._loader import Loader from buildstream._metaelement import MetaElement +from . import make_options DATA_DIR = os.path.join( os.path.dirname(os.path.realpath(__file__)), @@ -18,7 +19,7 @@ DATA_DIR = os.path.join( def test_one_file(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/onefile.bst', None, None) + loader = Loader(basedir, 'elements/onefile.bst', make_options(basedir), None, None) element = loader.load() @@ -30,7 +31,7 @@ def test_one_file(datafiles): def test_missing_file(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/missing.bst', None, None) + loader = Loader(basedir, 'elements/missing.bst', make_options(basedir), None, None) with pytest.raises(LoadError) as exc: element = loader.load() @@ -42,7 +43,7 @@ def test_missing_file(datafiles): def test_invalid_reference(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/badreference.bst', None, None) + loader = Loader(basedir, 'elements/badreference.bst', make_options(basedir), None, None) with pytest.raises(LoadError) as exc: element = loader.load() @@ -54,7 +55,7 @@ def test_invalid_reference(datafiles): def test_invalid_yaml(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/badfile.bst', None, None) + loader = Loader(basedir, 'elements/badfile.bst', make_options(basedir), None, None) with pytest.raises(LoadError) as exc: element = loader.load() @@ -69,7 +70,7 @@ def test_fail_fullpath_target(datafiles): fullpath = os.path.join(basedir, 'elements', 'onefile.bst') with pytest.raises(LoadError) as exc: - loader = Loader(basedir, fullpath, None, None) + loader = Loader(basedir, fullpath, make_options(basedir), None, None) assert (exc.value.reason == LoadErrorReason.INVALID_DATA) @@ -78,7 +79,7 @@ def test_fail_fullpath_target(datafiles): def test_invalid_key(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/invalidkey.bst', None, None) + loader = Loader(basedir, 'elements/invalidkey.bst', make_options(basedir), None, None) with pytest.raises(LoadError) as exc: element = loader.load() diff --git a/tests/loader/dependencies.py b/tests/loader/dependencies.py index 3850a0086..3a4fee278 100644 --- a/tests/loader/dependencies.py +++ b/tests/loader/dependencies.py @@ -4,6 +4,7 @@ import pytest from buildstream import LoadError, LoadErrorReason from buildstream._loader import Loader from buildstream._metaelement import MetaElement +from . import make_options DATA_DIR = os.path.join( os.path.dirname(os.path.realpath(__file__)), @@ -18,7 +19,7 @@ DATA_DIR = os.path.join( def test_two_files(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/target.bst', None, None) + loader = Loader(basedir, 'elements/target.bst', make_options(basedir), None, None) element = loader.load() assert(isinstance(element, MetaElement)) @@ -34,7 +35,7 @@ def test_two_files(datafiles): def test_shared_dependency(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/shareddeptarget.bst', None, None) + loader = Loader(basedir, 'elements/shareddeptarget.bst', make_options(basedir), None, None) element = loader.load() # Toplevel is 'pony' with 2 dependencies @@ -77,7 +78,7 @@ def test_shared_dependency(datafiles): def test_dependency_dict(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/target-depdict.bst', None, None) + loader = Loader(basedir, 'elements/target-depdict.bst', make_options(basedir), None, None) element = loader.load() assert(isinstance(element, MetaElement)) @@ -92,7 +93,7 @@ def test_dependency_dict(datafiles): @pytest.mark.datafiles(DATA_DIR) def test_invalid_dependency_declaration(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/invaliddep.bst', None, None) + loader = Loader(basedir, 'elements/invaliddep.bst', make_options(basedir), None, None) with pytest.raises(LoadError) as exc: element = loader.load() @@ -103,7 +104,7 @@ def test_invalid_dependency_declaration(datafiles): @pytest.mark.datafiles(DATA_DIR) def test_circular_dependency(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/circulartarget.bst', None, None) + loader = Loader(basedir, 'elements/circulartarget.bst', make_options(basedir), None, None) with pytest.raises(LoadError) as exc: element = loader.load() @@ -114,7 +115,7 @@ def test_circular_dependency(datafiles): @pytest.mark.datafiles(DATA_DIR) def test_invalid_dependency_type(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/invaliddeptype.bst', None, None) + loader = Loader(basedir, 'elements/invaliddeptype.bst', make_options(basedir), None, None) with pytest.raises(LoadError) as exc: element = loader.load() @@ -125,7 +126,7 @@ def test_invalid_dependency_type(datafiles): @pytest.mark.datafiles(DATA_DIR) def test_build_dependency(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/builddep.bst', None, None) + loader = Loader(basedir, 'elements/builddep.bst', make_options(basedir), None, None) element = loader.load() assert(isinstance(element, MetaElement)) @@ -141,7 +142,7 @@ def test_build_dependency(datafiles): @pytest.mark.datafiles(DATA_DIR) def test_runtime_dependency(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/runtimedep.bst', None, None) + loader = Loader(basedir, 'elements/runtimedep.bst', make_options(basedir), None, None) element = loader.load() assert(isinstance(element, MetaElement)) @@ -157,7 +158,7 @@ def test_runtime_dependency(datafiles): @pytest.mark.datafiles(DATA_DIR) def test_build_runtime_dependency(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/target.bst', None, None) + loader = Loader(basedir, 'elements/target.bst', make_options(basedir), None, None) element = loader.load() assert(isinstance(element, MetaElement)) @@ -174,7 +175,7 @@ def test_build_runtime_dependency(datafiles): @pytest.mark.datafiles(DATA_DIR) def test_all_dependency(datafiles): basedir = os.path.join(datafiles.dirname, datafiles.basename) - loader = Loader(basedir, 'elements/alldep.bst', None, None) + loader = Loader(basedir, 'elements/alldep.bst', make_options(basedir), None, None) element = loader.load() assert(isinstance(element, MetaElement)) diff --git a/tests/pipeline/load.py b/tests/pipeline/load.py index ef7aedc96..d66c70e96 100644 --- a/tests/pipeline/load.py +++ b/tests/pipeline/load.py @@ -14,8 +14,8 @@ DATA_DIR = os.path.join( def create_pipeline(tmpdir, basedir, target): - context = Context('x86_64') - project = Project(basedir, 'x86_64') + context = Context([], 'x86_64') + project = Project(basedir, context) context.deploydir = os.path.join(str(tmpdir), 'deploy') context.artifactdir = os.path.join(str(tmpdir), 'artifact') diff --git a/tests/plugins/pipeline.py b/tests/plugins/pipeline.py index c8dcb32f8..792dd1996 100644 --- a/tests/plugins/pipeline.py +++ b/tests/plugins/pipeline.py @@ -14,8 +14,8 @@ DATA_DIR = os.path.join( def create_pipeline(tmpdir, basedir, target): - context = Context('x86_64') - project = Project(basedir, 'x86_64') + context = Context([], 'x86_64') + project = Project(basedir, context) context.deploydir = os.path.join(str(tmpdir), 'deploy') context.artifactdir = os.path.join(str(tmpdir), 'artifact') diff --git a/tests/project/plugins.py b/tests/project/plugins.py index 3d4b38795..19bbc0353 100644 --- a/tests/project/plugins.py +++ b/tests/project/plugins.py @@ -14,8 +14,8 @@ DATA_DIR = os.path.join( def create_pipeline(tmpdir, basedir, target): - context = Context('x86_64') - project = Project(basedir, 'x86_64') + context = Context([], 'x86_64') + project = Project(basedir, context) context.artifactdir = os.path.join(str(tmpdir), 'artifact') context._platform = Platform.get_platform(context, project) diff --git a/tests/project/project.py b/tests/project/project.py index 5b6c9740d..eff8dd442 100644 --- a/tests/project/project.py +++ b/tests/project/project.py @@ -1,7 +1,7 @@ import os import pytest -from buildstream import Project +from buildstream import Project, Context from buildstream import LoadError, LoadErrorReason DATA_DIR = os.path.join( @@ -15,7 +15,7 @@ def test_missing_project_conf(datafiles): directory = os.path.join(datafiles.dirname, datafiles.basename) with pytest.raises(LoadError) as exc: - project = Project(directory, 'x86_64') + project = Project(directory, Context([], 'x86_64')) assert (exc.value.reason == LoadErrorReason.MISSING_FILE) @@ -25,7 +25,7 @@ def test_missing_project_name(datafiles): directory = os.path.join(datafiles.dirname, datafiles.basename, "missingname") with pytest.raises(LoadError) as exc: - project = Project(directory, 'x86_64') + project = Project(directory, Context([], 'x86_64')) assert (exc.value.reason == LoadErrorReason.INVALID_DATA) @@ -34,7 +34,7 @@ def test_missing_project_name(datafiles): def test_load_basic_project(datafiles): directory = os.path.join(datafiles.dirname, datafiles.basename, "basic") - project = Project(directory, 'x86_64') + project = Project(directory, Context([], 'x86_64')) # User provided assert (project.name == "pony") @@ -49,7 +49,7 @@ def test_load_basic_project(datafiles): def test_override_project_path(datafiles): directory = os.path.join(datafiles.dirname, datafiles.basename, "overridepath") - project = Project(directory, 'x86_64') + project = Project(directory, Context([], 'x86_64')) # Test the override assert (project._environment['PATH'] == "/bin:/sbin") @@ -59,7 +59,7 @@ def test_override_project_path(datafiles): def test_project_alias(datafiles): directory = os.path.join(datafiles.dirname, datafiles.basename, "alias") - project = Project(directory, 'x86_64') + project = Project(directory, Context([], 'x86_64')) # Test the override assert (project.translate_url('baserock:foo') == 'git://git.baserock.org/baserock/foo') @@ -71,6 +71,6 @@ def test_project_unsupported(datafiles): directory = os.path.join(datafiles.dirname, datafiles.basename, "unsupported") with pytest.raises(LoadError) as exc: - project = Project(directory, 'x86_64') + project = Project(directory, Context([], 'x86_64')) assert (exc.value.reason == LoadErrorReason.UNSUPPORTED_PROJECT) diff --git a/tests/sources/fixture.py b/tests/sources/fixture.py index 0f1bdb8f6..89e03cb8e 100644 --- a/tests/sources/fixture.py +++ b/tests/sources/fixture.py @@ -21,8 +21,8 @@ class Setup(): def __init__(self, datafiles, target, tmpdir): directory = os.path.join(datafiles.dirname, datafiles.basename) - self.context = Context('x86_64') - self.project = Project(directory, 'x86_64') + self.context = Context([], 'x86_64') + self.project = Project(directory, self.context) # A message handler is required self.context._set_message_handler(message_handler) @@ -35,7 +35,7 @@ class Setup(): if not os.path.exists(self.context.builddir): os.mkdir(self.context.builddir) - loader = Loader(directory, target, None, None) + loader = Loader(directory, target, self.project._options, None, None) element = loader.load() # Allow repo aliases to access files in the directories using tmpdir and datafiles diff --git a/tests/variables/variables.py b/tests/variables/variables.py index 8cf84b6a4..61cf26c82 100644 --- a/tests/variables/variables.py +++ b/tests/variables/variables.py @@ -13,8 +13,8 @@ DATA_DIR = os.path.join( def create_pipeline(tmpdir, basedir, target): - context = Context('x86_64') - project = Project(basedir, 'x86_64') + context = Context([], 'x86_64') + project = Project(basedir, context) context.artifactdir = os.path.join(str(tmpdir), 'artifact') context._platform = Platform.get_platform(context, project) |