fusefs: minor refactor in the tests

Do more work in MockFS's constructor's member initializer list, instead
of the body of the constructor.  It's easier to read this way.

Sponsored by:	ConnectWise

(cherry picked from commit 3f83f32d7d)
This commit is contained in:
Alan Somers 2024-12-24 14:54:42 -07:00
parent df4b8eff7b
commit d03aa29b82

View file

@ -421,7 +421,18 @@ MockFS::MockFS(int max_readahead, bool allow_other, bool default_permissions,
uint32_t kernel_minor_version, uint32_t max_write, bool async,
bool noclusterr, unsigned time_gran, bool nointr, bool noatime,
const char *fsname, const char *subtype)
: m_uniques(new std::unordered_set<uint64_t>)
: m_daemon_id(NULL),
m_kernel_minor_version(kernel_minor_version),
m_kq(pm == KQ ? kqueue() : -1),
m_maxreadahead(max_readahead),
m_pid(getpid()),
m_uniques(new std::unordered_set<uint64_t>),
m_pm(pm),
m_time_gran(time_gran),
m_child_pid(-1),
m_maxwrite(MIN(max_write, max_max_write)),
m_nready(-1),
m_quit(false)
{
struct sigaction sa;
struct iovec *iov = NULL;
@ -429,20 +440,6 @@ MockFS::MockFS(int max_readahead, bool allow_other, bool default_permissions,
char fdstr[15];
const bool trueval = true;
m_daemon_id = NULL;
m_kernel_minor_version = kernel_minor_version;
m_maxreadahead = max_readahead;
m_maxwrite = MIN(max_write, max_max_write);
m_nready = -1;
m_pm = pm;
m_time_gran = time_gran;
m_quit = false;
if (m_pm == KQ)
m_kq = kqueue();
else
m_kq = -1;
/*
* Kyua sets pwd to a testcase-unique tempdir; no need to use
* mkdtemp
@ -467,9 +464,6 @@ MockFS::MockFS(int max_readahead, bool allow_other, bool default_permissions,
throw(std::system_error(errno, std::system_category(),
"Couldn't open /dev/fuse"));
m_pid = getpid();
m_child_pid = -1;
build_iovec(&iov, &iovlen, "fstype", __DECONST(void *, "fusefs"), -1);
build_iovec(&iov, &iovlen, "fspath",
__DECONST(void *, "mountpoint"), -1);