Repository: incubator-ariatosca Updated Branches: refs/heads/ARIA-48-aria-cli 94c8d7221 -> e2dd671d1
created fixtures.py for tests Project: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/commit/e2dd671d Tree: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/tree/e2dd671d Diff: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/diff/e2dd671d Branch: refs/heads/ARIA-48-aria-cli Commit: e2dd671d1d74a4fa570a251aa265d4902204d40f Parents: 94c8d72 Author: Ran Ziv <[email protected]> Authored: Thu Apr 6 13:09:28 2017 +0300 Committer: Ran Ziv <[email protected]> Committed: Thu Apr 6 13:09:28 2017 +0300 ---------------------------------------------------------------------- tests/fixtures.py | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/e2dd671d/tests/fixtures.py ---------------------------------------------------------------------- diff --git a/tests/fixtures.py b/tests/fixtures.py new file mode 100644 index 0000000..3b1b9b5 --- /dev/null +++ b/tests/fixtures.py @@ -0,0 +1,70 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import shutil + +import pytest + +from aria import ( + application_model_storage, + application_resource_storage +) +from aria.orchestrator import plugin +from aria.storage import ( + sql_mapi, + filesystem_rapi +) + +from . import storage + + [email protected] +def inmemory_model(): + model = application_model_storage(sql_mapi.SQLAlchemyModelAPI, + initiator=storage.init_inmemory_model_storage) + yield model + storage.release_sqlite_storage(model) + + [email protected] +def fs_model(tmpdir): + result = application_model_storage(sql_mapi.SQLAlchemyModelAPI, + initiator_kwargs=dict(base_dir=str(tmpdir)), + initiator=sql_mapi.init_storage) + yield result + storage.release_sqlite_storage(result) + + [email protected] +def resource_storage(tmpdir): + result = tmpdir.join('resources') + result.mkdir() + resource_storage = application_resource_storage( + filesystem_rapi.FileSystemResourceAPI, + api_kwargs=dict(directory=str(result))) + yield resource_storage + shutil.rmtree(str(result)) + + [email protected] +def plugins_dir(tmpdir): + result = tmpdir.join('plugins') + result.mkdir() + return str(result) + + [email protected] +def plugin_manager(model, plugins_dir): + return plugin.PluginManager(model=model, plugins_dir=plugins_dir)
