From 7717ea5ccaa35120f5c2a5494e8e6d8afbceacb8 Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Mon, 26 Oct 2015 20:47:48 +0100 Subject: [PATCH] Add benchmark for LoadJSONPack --- repository/repository_test.go | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/repository/repository_test.go b/repository/repository_test.go index 3028bd838..81378742b 100644 --- a/repository/repository_test.go +++ b/repository/repository_test.go @@ -175,6 +175,28 @@ func TestLoadJSONPack(t *testing.T) { OK(t, err) } +func BenchmarkLoadJSONPack(t *testing.B) { + repo := SetupRepo() + defer TeardownRepo(repo) + + if BenchArchiveDirectory == "" { + t.Skip("benchdir not set, skipping") + } + + // archive a few files + sn := SnapshotDir(t, repo, BenchArchiveDirectory, nil) + OK(t, repo.Flush()) + + tree := restic.NewTree() + + t.ResetTimer() + + for i := 0; i < t.N; i++ { + err := repo.LoadJSONPack(pack.Tree, *sn.Tree, &tree) + OK(t, err) + } +} + func TestLoadJSONUnpacked(t *testing.T) { repo := SetupRepo() defer TeardownRepo(repo)