//go:build integration

package metadata

import (
	"log"
	"os"
	"path/filepath"
	"testing"

	"github.com/joho/godotenv"
)

func TestMain(m *testing.M) {
	// Try loading .env from various levels up
	paths := []string{
		".env",
		"../.env",
		"../../.env",
		"../../../.env",
		"../../../../.env",
	}

	loaded := false
	for _, p := range paths {
		if err := godotenv.Load(p); err == nil {
			abs, _ := filepath.Abs(p)
			log.Printf("✅ [TestMain] Loaded .env from: %s", abs)
			loaded = true
			break
		}
	}

	if !loaded {
		log.Println("⚠️  [TestMain] Warning: No .env file found. Relying on system environment variables.")
	}

	code := m.Run()
	os.Exit(code)
}
