void RunTestExToNulBuf(const TextBuf &input, const TextBuf &expected, size_t bufsize, ib_status_t expected_rc) { char buf[bufsize]; size_t len; ib_status_t rc; ib_flags_t result; rc = ExecExToNulBuf(input.GetUBuf(), input.GetLen(), buf, bufsize, len, result); if (rc == IB_ENOTIMPL) { return; } const char *name = TestName(IB_STROP_BUF, TYPE_EX_TO_STR); ASSERT_EQ(expected_rc, rc) << name; TextBuf output(buf); CheckResult(name, input, expected, IB_STRFLAG_NONE, IB_STRFLAG_MODIFIED, rc, result, output); }
void RunTestCopyExToNul(const TextBuf &input, const TextBuf &expected) { ib_status_t rc; size_t len = input.GetLen(); char *out; ib_flags_t result; rc = ExecCopyExToNul(input.GetUBuf(), len, &out, result); if (rc == IB_ENOTIMPL) { return; } const char *name = TestName(IB_STROP_COPY, TYPE_NUL); ASSERT_EQ(IB_OK, rc) << name; TextBuf output(out); CheckResult(name, input, expected, IB_STRFLAG_NEWBUF, (IB_STRFLAG_NEWBUF | IB_STRFLAG_MODIFIED), rc, result, output); }
void RunTestCowEx(const TextBuf &input, const TextBuf &expected) { size_t len = input.GetLen(); uint8_t *out; ib_status_t rc; size_t outlen; ib_flags_t result; rc = ExecCowEx(input.GetUBuf(), len, &out, outlen, result); if (rc == IB_ENOTIMPL) { return; } const char *name = TestName(IB_STROP_COW, TYPE_EX); ASSERT_EQ(IB_OK, rc) << name; TextBuf output(out, outlen); CheckResult(name, input, expected, IB_STRFLAG_ALIAS, (IB_STRFLAG_NEWBUF | IB_STRFLAG_MODIFIED), rc, result, output); }