+# 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
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
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", [