MCPcopy Create free account
hub / github.com/ElementsProject/elements / TestOtherProcess

Function TestOtherProcess

src/test/util_tests.cpp:2028–2053  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2026static constexpr char ExitCommand = 'X';
2027
2028[[noreturn]] static void TestOtherProcess(fs::path dirname, std::string lockname, int fd)
2029{
2030 char ch;
2031 while (true) {
2032 int rv = read(fd, &ch, 1); // Wait for command
2033 assert(rv == 1);
2034 switch(ch) {
2035 case LockCommand:
2036 ch = LockDirectory(dirname, lockname);
2037 rv = write(fd, &ch, 1);
2038 assert(rv == 1);
2039 break;
2040 case UnlockCommand:
2041 ReleaseDirectoryLocks();
2042 ch = true; // Always succeeds
2043 rv = write(fd, &ch, 1);
2044 assert(rv == 1);
2045 break;
2046 case ExitCommand:
2047 close(fd);
2048 exit(0);
2049 default:
2050 assert(0);
2051 }
2052 }
2053}
2054#endif
2055
2056BOOST_AUTO_TEST_CASE(test_LockDirectory)

Callers 1

BOOST_AUTO_TEST_CASEFunction · 0.85

Calls 2

LockDirectoryFunction · 0.85
ReleaseDirectoryLocksFunction · 0.85

Tested by

no test coverage detected