1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-05-20 00:36:07 +02:00

test-tool: don't force full index

We will use 'test-tool read-cache --table' to check that a sparse
index is written as part of init_repos. Since we will no longer always
expand a sparse index into a full index, add an '--expand' parameter
that adds a call to ensure_full_index() so we can compare a sparse index
directly against a full index, or at least what the in-memory index
looks like when expanded in this way.

Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Derrick Stolee 2021-03-30 13:10:51 +00:00 committed by Junio C Hamano
parent e2df6c3972
commit 2782db3eed
2 changed files with 17 additions and 1 deletions

View File

@ -4,6 +4,7 @@
#include "blob.h"
#include "commit.h"
#include "tree.h"
#include "sparse-index.h"
static void print_cache_entry(struct cache_entry *ce)
{
@ -35,13 +36,19 @@ int cmd__read_cache(int argc, const char **argv)
struct repository *r = the_repository;
int i, cnt = 1;
const char *name = NULL;
int table = 0;
int table = 0, expand = 0;
initialize_the_repository();
prepare_repo_settings(r);
r->settings.command_requires_full_index = 0;
for (++argv, --argc; *argv && starts_with(*argv, "--"); ++argv, --argc) {
if (skip_prefix(*argv, "--print-and-refresh=", &name))
continue;
if (!strcmp(*argv, "--table"))
table = 1;
else if (!strcmp(*argv, "--expand"))
expand = 1;
}
if (argc == 1)
@ -51,6 +58,10 @@ int cmd__read_cache(int argc, const char **argv)
for (i = 0; i < cnt; i++) {
repo_read_index(r);
if (expand)
ensure_full_index(r->index);
if (name) {
int pos;

View File

@ -130,6 +130,11 @@ test_sparse_match () {
test_cmp sparse-checkout-err sparse-index-err
}
test_expect_success 'expanded in-memory index matches full index' '
init_repos &&
test_sparse_match test-tool read-cache --expand --table
'
test_expect_success 'status with options' '
init_repos &&
test_all_match git status --porcelain=v2 &&