Skip to content

Commit

Permalink
Add cpp-tests (within single process (worker))
Browse files Browse the repository at this point in the history
- session_id(),
- session_start(),
- session_status()
  • Loading branch information
mt-omarov committed Jul 10, 2024
1 parent 08c5a04 commit b2ecb61
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 1 deletion.
3 changes: 2 additions & 1 deletion tests/cpp/runtime/runtime-tests.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,8 @@ prepend(RUNTIME_TESTS_SOURCES ${BASE_DIR}/tests/cpp/runtime/
memory_resource/unsynchronized_pool_resource-test.cpp
string-list-test.cpp
string-test.cpp
zstd-test.cpp)
zstd-test.cpp
sessions-test.cpp)

allow_deprecated_declarations_for_apple(${BASE_DIR}/tests/cpp/runtime/inter-process-mutex-test.cpp)
vk_add_unittest(runtime "${RUNTIME_LIBS};${RUNTIME_LINK_TEST_LIBS}" ${RUNTIME_TESTS_SOURCES})
54 changes: 54 additions & 0 deletions tests/cpp/runtime/sessions-test.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
#include <gtest/gtest.h>

#include "runtime/files.h"
#include "runtime/sessions.h"

TEST(sessions_test, test_session_id_with_invalid_id) {
const string dir_path = string(getenv("TMPDIR")).append("sessions/");
const string id = string("\t12345678\\\r");
ASSERT_FALSE(f$session_id(id).has_value());
ASSERT_TRUE(f$session_start());
ASSERT_NE(f$session_id().val(), id);

const string full_path = string(dir_path).append(f$session_id().val());
ASSERT_TRUE(f$file_exists(full_path));
ASSERT_TRUE(f$session_abort());
}

TEST(sessions_test, test_session_id_with_valid_id) {
const string dir_path = string(getenv("TMPDIR")).append("sessions/");
const string id = string("sess_668d4f818ca3b");
ASSERT_FALSE(f$session_id(id).has_value());
ASSERT_TRUE(f$session_start());
ASSERT_EQ(f$session_id().val(), id);

const string full_path = string(dir_path).append(id);
ASSERT_TRUE(f$file_exists(full_path));
ASSERT_TRUE(f$session_abort());
}

TEST(sessions_test, test_session_start) {
ASSERT_TRUE(f$session_start());
ASSERT_FALSE(f$session_start());
ASSERT_TRUE(f$session_abort());
}

TEST(sessions_test, test_session_start_with_params) {
array<string> predefined_consts = array<string>();
const string dir_path = string(getenv("TMPDIR")).append("example/");
predefined_consts.emplace_value(string("save_path"), dir_path);
ASSERT_TRUE(f$session_start(predefined_consts));
ASSERT_TRUE(f$file_exists(string(dir_path).append(f$session_id().val())));
ASSERT_TRUE(f$session_abort());
}

TEST(sessions_test, test_session_status) {
const int SESSION_NONE = 1;
const int SESSION_ACTIVE = 2;

ASSERT_EQ(f$session_status(), SESSION_NONE);
ASSERT_TRUE(f$session_start());
ASSERT_EQ(f$session_status(), SESSION_ACTIVE);
ASSERT_TRUE(f$session_abort());
ASSERT_EQ(f$session_status(), SESSION_NONE);
}

0 comments on commit b2ecb61

Please sign in to comment.