diff options
author | Ben Morrison <ben@gbmor.dev> | 2019-06-05 15:36:23 -0400 |
---|---|---|
committer | Ben Morrison <ben@gbmor.dev> | 2019-06-05 15:36:23 -0400 |
commit | fd43c61bd128ad77b22db0537a9a4eb58490b0b5 (patch) | |
tree | 4c5fa7b33fadbf7c3e14e69b7d68ce280bc3810a /svc/db_test.go | |
parent | 4658fe82be3e9d95e93fa5c7c7ca64a15cf2f1a1 (diff) | |
download | getwtxt-fd43c61bd128ad77b22db0537a9a4eb58490b0b5.tar.gz |
moved bulk of code to its own package to clean up source tree
Diffstat (limited to 'svc/db_test.go')
-rw-r--r-- | svc/db_test.go | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/svc/db_test.go b/svc/db_test.go new file mode 100644 index 0000000..830c7a6 --- /dev/null +++ b/svc/db_test.go @@ -0,0 +1,92 @@ +package svc // import github.com/getwtxt/getwtxt/svc + +import ( + "net" + "testing" + + "github.com/getwtxt/registry" +) + +/* +func Test_pushpullDatabase(t *testing.T) { + initTestConf() + initDatabase() + out, _, err := registry.GetTwtxt("https://gbmor.dev/twtxt.txt") + if err != nil { + t.Errorf("Couldn't set up test: %v\n", err) + } + statusmap, err := registry.ParseUserTwtxt(out, "gbmor", "https://gbmor.dev/twtxt.txt") + if err != nil { + t.Errorf("Couldn't set up test: %v\n", err) + } + twtxtCache.AddUser("gbmor", "https://gbmor.dev/twtxt.txt", "", net.ParseIP("127.0.0.1"), statusmap) + remoteRegistries.Mu.Lock() + remoteRegistries.List = append(remoteRegistries.List, "https://twtxt.tilde.institute/api/plain/users") + remoteRegistries.Mu.Unlock() + + t.Run("Push to Database", func(t *testing.T) { + err := pushDatabase() + if err != nil { + t.Errorf("%v\n", err) + } + }) + + t.Run("Clearing Registry", func(t *testing.T) { + err := twtxtCache.DelUser("https://gbmor.dev/twtxt.txt") + if err != nil { + t.Errorf("%v", err) + } + }) + + t.Run("Pulling from Database", func(t *testing.T) { + pullDatabase() + twtxtCache.Mu.RLock() + if _, ok := twtxtCache.Users["https://gbmor.dev/twtxt.txt"]; !ok { + t.Errorf("Missing user previously pushed to database\n") + } + twtxtCache.Mu.RUnlock() + + }) +} +*/ +func Benchmark_pushDatabase(b *testing.B) { + initTestConf() + + if len(dbChan) < 1 { + initDatabase() + } + + if _, ok := twtxtCache.Users["https://gbmor.dev/twtxt.txt"]; !ok { + out, _, err := registry.GetTwtxt("https://gbmor.dev/twtxt.txt") + if err != nil { + b.Errorf("Couldn't set up benchmark: %v\n", err) + } + + statusmap, err := registry.ParseUserTwtxt(out, "gbmor", "https://gbmor.dev/twtxt.txt") + if err != nil { + b.Errorf("Couldn't set up benchmark: %v\n", err) + } + + twtxtCache.AddUser("gbmor", "https://gbmor.dev/twtxt.txt", "", net.ParseIP("127.0.0.1"), statusmap) + } + + b.ResetTimer() + + for i := 0; i < b.N; i++ { + err := pushDatabase() + if err != nil { + b.Errorf("%v\n", err) + } + } +} +func Benchmark_pullDatabase(b *testing.B) { + initTestConf() + + if len(dbChan) < 1 { + initDatabase() + } + + for i := 0; i < b.N; i++ { + pullDatabase() + } +} |