diff --git a/integration_tests/management/network_map_db/pgsql/main_test.go b/integration_tests/management/network_map_db/pgsql/main_test.go index 3692c8fd2..c14abb72f 100644 --- a/integration_tests/management/network_map_db/pgsql/main_test.go +++ b/integration_tests/management/network_map_db/pgsql/main_test.go @@ -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
[:/@])(?P[^/?]+)(?P\?|$)`)
 	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()
+}
diff --git a/integration_tests/management/network_map_db/pgsql/network_test.go b/integration_tests/management/network_map_db/pgsql/network_test.go
index 2395a2223..00fa8eacd 100644
--- a/integration_tests/management/network_map_db/pgsql/network_test.go
+++ b/integration_tests/management/network_map_db/pgsql/network_test.go
@@ -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)
diff --git a/integration_tests/management/network_map_db/pgsql/networks_test.go b/integration_tests/management/network_map_db/pgsql/networks_test.go
new file mode 100644
index 000000000..3e09e9681
--- /dev/null
+++ b/integration_tests/management/network_map_db/pgsql/networks_test.go
@@ -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",
+	})
+}