about summary refs log tree commit diff stats
path: root/cpp/.traces/copy_multiple_locations
blob: c4b8edb6e664b428a85bf5dadcbd54afc03b85b0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
parse/0: instruction: 1
parse/0:   ingredient: {name: "34", value: 34, type: 0, properties: [34: literal]}
parse/0:   product: {name: "1", value: 1, type: 1, properties: [1: integer]}
parse/0: instruction: 1
parse/0:   ingredient: {name: "35", value: 35, type: 0, properties: [35: literal]}
parse/0:   product: {name: "2", value: 2, type: 1, properties: [2: integer]}
parse/0: instruction: 1
parse/0:   ingredient: {name: "1", value: 1, type: 4, properties: [1: point]}
parse/0:   product: {name: "3", value: 3, type: 4, properties: [3: point]}
after-brace/0: recipe main
after-brace/0: copy ...
after-brace/0: copy ...
after-brace/0: copy ...
run/0: instruction main/0
run/0: ingredient 0 is 34
mem/0: storing in location 1
run/0: instruction main/1
run/0: ingredient 0 is 35
mem/0: storing in location 2
run/0: instruction main/2
run/0: ingredient 0 is 1
mem/0: location 1 is 34
mem/0: location 2 is 35
mem/0: storing in location 3
mem/0: storing in location 4
color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
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 := pushDB()
		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++ {
		pullDB()
	}
}