diff options
| author | Seyi Kuforiji <kuforiji98@gmail.com> | 2025-07-24 15:28:37 +0100 |
|---|---|---|
| committer | Junio C Hamano <gitster@pobox.com> | 2025-07-24 11:46:04 -0700 |
| commit | 9bbc981c6f27e00d050d4f70b0293f56e39b019a (patch) | |
| tree | ab4b3c751450fa4c1480accae45f015faf264c81 /t/unit-tests/lib-reftable-clar.c | |
| parent | t/unit-tests: convert reftable stack test to use clar (diff) | |
| download | git-9bbc981c6f27e00d050d4f70b0293f56e39b019a.tar.gz git-9bbc981c6f27e00d050d4f70b0293f56e39b019a.zip | |
t/unit-tests: finalize migration of reftable-related tests
The old `lib-reftable.{c,h}` implemented helper functions for our
homegrown unit-testing framework. As part of migrating reftable-related
tests to the Clar framework, Clar-specific versions of these functions
in `lib-reftable-clar.{c,h}` were introduced.
Now that all test files using these helpers have been converted to Clar,
we can safely remove the original `lib-reftable.{c,h}` and rename the
Clar- specific versions back to `lib-reftable.{c,h}`. This restores a
clean and consistent naming scheme for shared test utilities.
Finally, update our build system to reflect the changes made and remove
redundant code related to the reftable tests and our old homegrown
unit-testing setup. `test-lib.{c,h}` remains unchanged in our build
system as some files particularly `t/helper/test-example-tap.c` depends
on it in order to run, and removing that would be beyond the scope of
this patch.
Signed-off-by: Seyi Kuforiji <kuforiji98@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/unit-tests/lib-reftable-clar.c')
| -rw-r--r-- | t/unit-tests/lib-reftable-clar.c | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/t/unit-tests/lib-reftable-clar.c b/t/unit-tests/lib-reftable-clar.c deleted file mode 100644 index 64e40a106e..0000000000 --- a/t/unit-tests/lib-reftable-clar.c +++ /dev/null @@ -1,101 +0,0 @@ -#include "unit-test.h" -#include "lib-reftable-clar.h" -#include "hex.h" -#include "parse-options.h" -#include "reftable/constants.h" -#include "reftable/writer.h" -#include "strbuf.h" -#include "string-list.h" -#include "strvec.h" - -void cl_reftable_set_hash(uint8_t *p, int i, enum reftable_hash id) -{ - memset(p, (uint8_t)i, hash_size(id)); -} - -static ssize_t strbuf_writer_write(void *b, const void *data, size_t sz) -{ - strbuf_add(b, data, sz); - return sz; -} - -static int strbuf_writer_flush(void *arg UNUSED) -{ - return 0; -} - -struct reftable_writer *cl_reftable_strbuf_writer(struct reftable_buf *buf, - struct reftable_write_options *opts) -{ - struct reftable_writer *writer; - int ret = reftable_writer_new(&writer, &strbuf_writer_write, &strbuf_writer_flush, - buf, opts); - cl_assert(!ret); - return writer; -} - -void cl_reftable_write_to_buf(struct reftable_buf *buf, - struct reftable_ref_record *refs, - size_t nrefs, - struct reftable_log_record *logs, - size_t nlogs, - struct reftable_write_options *_opts) -{ - struct reftable_write_options opts = { 0 }; - const struct reftable_stats *stats; - struct reftable_writer *writer; - uint64_t min = 0xffffffff; - uint64_t max = 0; - int ret; - - if (_opts) - opts = *_opts; - - for (size_t i = 0; i < nrefs; i++) { - uint64_t ui = refs[i].update_index; - if (ui > max) - max = ui; - if (ui < min) - min = ui; - } - for (size_t i = 0; i < nlogs; i++) { - uint64_t ui = logs[i].update_index; - if (ui > max) - max = ui; - if (ui < min) - min = ui; - } - - writer = cl_reftable_strbuf_writer(buf, &opts); - ret = reftable_writer_set_limits(writer, min, max); - cl_assert_equal_i(ret, 0); - - if (nrefs) { - ret = reftable_writer_add_refs(writer, refs, nrefs); - cl_assert_equal_i(ret, 0); - } - - if (nlogs) { - ret = reftable_writer_add_logs(writer, logs, nlogs); - cl_assert_equal_i(ret, 0); - } - - ret = reftable_writer_close(writer); - cl_assert_equal_i(ret, 0); - - stats = reftable_writer_stats(writer); - for (size_t i = 0; i < (size_t)stats->ref_stats.blocks; i++) { - size_t off = i * (opts.block_size ? opts.block_size - : DEFAULT_BLOCK_SIZE); - if (!off) - off = header_size(opts.hash_id == REFTABLE_HASH_SHA256 ? 2 : 1); - cl_assert(buf->buf[off] == 'r'); - } - - if (nrefs) - cl_assert(stats->ref_stats.blocks > 0); - if (nlogs) - cl_assert(stats->log_stats.blocks > 0); - - reftable_writer_free(writer); -} |
