Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
hpc
gekkofs
Commits
7d5d957a
Commit
7d5d957a
authored
May 16, 2022
by
Ramon Nou
Committed by
Ramon Nou
Jun 21, 2022
Browse files
Open Flags Error
Open errors add subtest
parent
fcf7fb60
Changes
3
Hide whitespace changes
Inline
Side-by-side
.gitlab-ci.yml
View file @
7d5d957a
...
...
@@ -131,7 +131,7 @@ gkfs:integration:
needs
:
[
'
gkfs'
]
parallel
:
matrix
:
-
SUBTEST
:
[
data
,
directories
,
operations
,
position
,
shell
,
status
]
-
SUBTEST
:
[
data
,
directories
,
operations
,
position
,
shell
,
status
,
coverage
]
script
:
## run tests
...
...
tests/integration/CMakeLists.txt
View file @
7d5d957a
...
...
@@ -120,6 +120,13 @@ gkfs_add_python_test(
SOURCE data/
)
gkfs_add_python_test
(
NAME test_coverage
PYTHON_VERSION 3.6
WORKING_DIRECTORY
${
PROJECT_SOURCE_DIR
}
/tests/integration
SOURCE coverage/
)
if
(
GKFS_INSTALL_TESTS
)
install
(
DIRECTORY harness
DESTINATION
${
CMAKE_INSTALL_DATAROOTDIR
}
/gkfs/tests/integration
...
...
@@ -182,6 +189,14 @@ if(GKFS_INSTALL_TESTS)
PATTERN
".pytest_cache"
EXCLUDE
)
install
(
DIRECTORY coverage
DESTINATION
${
CMAKE_INSTALL_DATAROOTDIR
}
/gkfs/tests/integration
FILES_MATCHING
REGEX
".*
\\
.py"
PATTERN
"__pycache__"
EXCLUDE
PATTERN
".pytest_cache"
EXCLUDE
)
install
(
DIRECTORY shell
DESTINATION
${
CMAKE_INSTALL_DATAROOTDIR
}
/gkfs/tests/integration
FILES_MATCHING
...
...
tests/integration/coverage/test_error_operations.py
0 → 100644
View file @
7d5d957a
################################################################################
# Copyright 2018-2022, Barcelona Supercomputing Center (BSC), Spain #
# Copyright 2015-2022, Johannes Gutenberg Universitaet Mainz, Germany #
# #
# This software was partially supported by the #
# EC H2020 funded project NEXTGenIO (Project ID: 671951, www.nextgenio.eu). #
# #
# This software was partially supported by the #
# ADA-FS project under the SPPEXA project funded by the DFG. #
# #
# This file is part of GekkoFS. #
# #
# GekkoFS is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
# the Free Software Foundation, either version 3 of the License, or #
# (at your option) any later version. #
# #
# GekkoFS is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# GNU General Public License for more details. #
# #
# You should have received a copy of the GNU General Public License #
# along with GekkoFS. If not, see <https://www.gnu.org/licenses/>. #
# #
# SPDX-License-Identifier: GPL-3.0-or-later #
################################################################################
import
harness
from
pathlib
import
Path
import
errno
import
stat
import
os
import
ctypes
import
sh
import
sys
import
pytest
from
harness.logger
import
logger
nonexisting
=
"nonexisting"
def
test_open_error
(
gkfs_daemon
,
gkfs_client
):
file
=
gkfs_daemon
.
mountdir
/
"file"
file2
=
gkfs_daemon
.
mountdir
/
"file2"
file3
=
gkfs_daemon
.
mountdir
/
"file3"
flags
=
[
os
.
O_PATH
,
os
.
O_APPEND
,
os
.
O_CREAT
|
os
.
O_DIRECTORY
]
# create a file in gekkofs
for
flag
in
flags
:
ret
=
gkfs_client
.
open
(
file
,
flag
,
stat
.
S_IRWXU
|
stat
.
S_IRWXG
|
stat
.
S_IRWXO
)
assert
ret
.
retval
==
-
1
assert
ret
.
errno
==
errno
.
ENOTSUP
# Create file and recreate
ret
=
gkfs_client
.
open
(
file
,
os
.
O_CREAT
|
os
.
O_EXCL
|
os
.
O_WRONLY
)
assert
ret
.
retval
==
10000
ret
=
gkfs_client
.
open
(
file
,
os
.
O_CREAT
|
os
.
O_EXCL
|
os
.
O_WRONLY
)
assert
ret
.
retval
==
-
1
assert
ret
.
errno
==
errno
.
EEXIST
# Create file and recreate
ret
=
gkfs_client
.
open
(
file2
,
os
.
O_CREAT
|
os
.
O_WRONLY
)
assert
ret
.
retval
==
10000
# Undefined in man
ret
=
gkfs_client
.
open
(
file2
,
os
.
O_CREAT
|
os
.
O_WRONLY
)
assert
ret
.
retval
==
10000
# Open unexistent file
ret
=
ret
=
gkfs_client
.
open
(
file3
,
os
.
O_WRONLY
)
assert
ret
.
retval
==
-
1
assert
ret
.
errno
==
errno
.
ENOENT
\ No newline at end of file
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment