package testutils import ( "encoding/json" "time" "bugulma/backend/internal/domain" "gorm.io/datatypes" ) // NewSampleMatch creates a sample match for testing func NewSampleMatch() *domain.Match { // Marshal JSONB fields transportJSON, _ := json.Marshal(domain.TransportationEstimate{ CostPerYear: 50, Method: "truck", FeasibilityScore: 0.9, }) riskJSON, _ := json.Marshal(domain.RiskAssessment{ TechnicalRisk: 0.1, RegulatoryRisk: 0.2, MarketRisk: 0.3, CounterpartyRisk: 0.1, }) impactJSON, _ := json.Marshal(domain.EconomicImpact{ AnnualSavings: 10000, NPV: 50000, IRR: 0.15, PaybackYears: 2, CO2AvoidedTonnes: 1000, CapexRequired: 20000, OpexPerYear: 5000, }) return &domain.Match{ ID: "match-1", SourceResourceID: "rf-1", TargetResourceID: "rf-2", CompatibilityScore: 0.8, TemporalOverlapScore: 0.6, QualityScore: 0.85, EconomicValue: 50000, DistanceKm: 10, Status: domain.MatchStatusSuggested, Priority: 1, TransportationEstimate: datatypes.JSON(transportJSON), RiskAssessment: datatypes.JSON(riskJSON), EconomicImpact: datatypes.JSON(impactJSON), CreatedAt: time.Now().Add(-24 * time.Hour), UpdatedAt: time.Now(), } }