summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2024-08-13 10:59:09 +0300
committerPaul Buetow <paul@buetow.org>2024-08-13 10:59:09 +0300
commita43042d48cfbf46f42b1df08e94903ee69d48aed (patch)
treef3b083d9053dfc83610bf91c97368f1e5e0555a3
parentcf45404eea125690661d3c0d99ace948d993caa9 (diff)
can get pair in test
-rw-r--r--internal/server/repository/repository_test.go50
1 files changed, 50 insertions, 0 deletions
diff --git a/internal/server/repository/repository_test.go b/internal/server/repository/repository_test.go
index 9b7484b..e7a24bb 100644
--- a/internal/server/repository/repository_test.go
+++ b/internal/server/repository/repository_test.go
@@ -1,6 +1,7 @@
package repository
import (
+ "context"
"testing"
"codeberg.org/snonux/gos/internal/config/server"
@@ -140,6 +141,55 @@ func TestRepositoryMerge(t *testing.T) {
}
}
+// TODO: Finish implementing this test
+func TestRepositoryMergeFromPartner(t *testing.T) {
+ fs1 := make(vfs.MemoryFS)
+ repo1 := newRepository(server.ServerConfig{DataDir: "./data1"}, fs1)
+ fs2 := make(vfs.MemoryFS)
+ repo2 := newRepository(server.ServerConfig{DataDir: "./data2"}, fs2)
+
+ ent1, _ := makeAnEntry()
+ _ = repo1.put(ent1)
+ ent2, _ := makeAnotherEntry()
+ _ = repo2.put(ent2)
+
+ getPair := func(ctx context.Context, partner string, pairs *[]entryPair) error {
+ var partnerRepo Repository
+
+ switch partner {
+ case "repo1":
+ partnerRepo = repo2
+ case "repo2":
+ partnerRepo = repo1
+ }
+
+ pairs_, err := partnerRepo.List()
+ if err != nil {
+ return err
+ }
+ *pairs = pairs_
+ t.Log("got pairs", *pairs, "from repo", partner)
+
+ return nil
+ }
+
+ getEntry := func(ctx context.Context, partner, id string, ent *types.Entry) error {
+ return nil
+ /*
+ uri := fmt.Sprintf("%s/get?id=%s", partner, id)
+ return easyhttp.GetData(ctx, uri, r.conf.APIKey, ent)
+ */
+ }
+
+ if err := repo1.mergeFromPartner(context.Background(), "repo2", getPair, getEntry); err != nil {
+ t.Error(err)
+ }
+ if err := repo2.mergeFromPartner(context.Background(), "repo1", getPair, getEntry); err != nil {
+ t.Error(err)
+ }
+
+}
+
func makeEntries(t *testing.T) []types.Entry {
ent1, err := makeAnEntry()
if err != nil {