X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_common%2Ftests%2Ftest_fslocal.py;h=7416cfb4f0f50932027f8b23464a5a9499579ae1;hb=refs%2Fchanges%2F03%2F9103%2F1;hp=3a2bbb4744a7d8e650a342bc11907ceb4e7735d7;hpb=b20a902cfc15e04f623b83e8756463540f3e7852;p=osm%2Fcommon.git diff --git a/osm_common/tests/test_fslocal.py b/osm_common/tests/test_fslocal.py index 3a2bbb4..7416cfb 100644 --- a/osm_common/tests/test_fslocal.py +++ b/osm_common/tests/test_fslocal.py @@ -1,3 +1,22 @@ +# Copyright 2018 Whitestack, LLC +# Copyright 2018 Telefonica S.A. +# +# Licensed 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. +# +# For those usages not covered by the Apache License, Version 2.0 please +# contact: esousa@whitestack.com or alfonso.tiernosepulveda@telefonica.com +## + import io import logging import http @@ -22,9 +41,9 @@ def invalid_path(): return '/#tweeter/' -@pytest.fixture -def fs_local(): - fs = FsLocal() +@pytest.fixture(scope="function", params=[True, False]) +def fs_local(request): + fs = FsLocal(lock=request.param) fs.fs_connect({'path': valid_path()}) return fs @@ -112,17 +131,17 @@ def test_mkdir_with_valid_path(fs_local): folder_path = valid_path() + folder_name fs_local.mkdir(folder_name) assert os.path.exists(folder_path) + # test idempotency + fs_local.mkdir(folder_name) + assert os.path.exists(folder_path) os.rmdir(folder_path) def test_mkdir_with_exception(fs_local): folder_name = str(uuid.uuid4()) - folder_path = valid_path() + folder_name - os.mkdir(folder_path) with pytest.raises(FsException) as excinfo: - fs_local.mkdir(folder_name) + fs_local.mkdir(folder_name + "/" + folder_name) assert excinfo.value.http_code == http.HTTPStatus.INTERNAL_SERVER_ERROR - os.rmdir(folder_path) @pytest.mark.parametrize("storage, mode, expected", [