added GetNetworks test

Signed-off-by: Dmitri Dolguikh <dmitri.external@netbird.io>
This commit is contained in:
Dmitri Dolguikh
2026-08-05 11:53:40 +02:00
parent 88f1930450
commit e9b8175915
3 changed files with 46 additions and 2 deletions

View File

@@ -11,6 +11,8 @@ import (
"time"
"github.com/google/uuid"
"github.com/jackc/pgx/v5"
"github.com/stretchr/testify/assert"
log "github.com/sirupsen/logrus"
"gorm.io/driver/postgres"
@@ -24,7 +26,10 @@ import (
//go:embed base_data.sql
var baseData string
var dsn string
var (
dsn string
pgstore *networkmap_pgsql.PgStore
)
func TestMain(m *testing.M) {
_, tmpdsn, err := testutil.CreatePostgresTestContainer()
@@ -76,6 +81,11 @@ func TestMain(m *testing.M) {
}
}
pgstore, err = networkmap_pgsql.NewPostgresqlStore(ctx, dsn)
if err != nil {
log.Fatalf("error creating pg store %v", err.Error())
}
code := m.Run()
cleanup()
@@ -130,3 +140,10 @@ func replaceDBName(dsn, newDBName string) string {
re := regexp.MustCompile(`(?P<pre>[:/@])(?P<dbname>[^/?]+)(?P<post>\?|$)`)
return re.ReplaceAllString(dsn, `${pre}`+newDBName+`${post}`)
}
func conn(t *testing.T, ctx context.Context) *pgx.Conn {
t.Helper()
c, err := pgstore.Pool.Acquire(ctx)
assert.NoError(t, err)
return c.Conn()
}

View File

@@ -11,7 +11,7 @@ import (
"github.com/stretchr/testify/assert"
)
func TestGetNetworks(t *testing.T) {
func TestGetNetwork(t *testing.T) {
ctx := context.TODO()
s, err := networkmap_pgsql.NewPostgresqlStore(ctx, dsn)

View File

@@ -0,0 +1,27 @@
package networkmap_pgsql
import (
"context"
"testing"
networkmap_pgsql "github.com/netbirdio/netbird/management/internals/network_map_db/pgsql"
"github.com/stretchr/testify/assert"
)
func TestGetNetworks(t *testing.T) {
ctx := context.TODO()
_, err := pgstore.Pool.Query(ctx,
`insert into networks (id, account_id, public_id) VALUES('network-1','account-1','network-1-public')`)
assert.NoError(t, err)
_, err = pgstore.Pool.Query(ctx,
`insert into networks (id, account_id, public_id) VALUES('network-2','account-1','network-2-public')`)
assert.NoError(t, err)
networksIdx, err := networkmap_pgsql.GetNetworkXIDToPublicIdMapViaPgxConnection(ctx, conn(t, ctx), "account-1")
assert.NoError(t, err)
assert.Equal(t, networksIdx, map[string]string{
"network-1": "network-1-public",
"network-2": "network-2-public",
})
}