package packs

import (
	"strings"
	"testing"

	"github.com/nexuscrm/files"
)

func TestValidateHrefRewriteFieldsForObjectSpecsRejectsUndeclaredField(t *testing.T) {
	err := validateHrefRewriteFieldsForObjectSpecs(
		[]files.HrefRewriteField{{ParentApiName: "Issue", FieldApiName: "FileLinks__c"}},
		[]ObjectSpec{{
			APIName: "Issue",
			Fields:  []FieldSpec{{APIName: "Subject"}},
		}},
	)
	if err == nil {
		t.Fatal("validateHrefRewriteFieldsForObjectSpecs accepted undeclared field, want rejection")
	}
	if got := err.Error(); !strings.Contains(got, "href_rewrite_fields field Issue/FileLinks__c is not declared by object_spec") {
		t.Fatalf("error = %v, want undeclared field rejection for Issue/FileLinks__c", got)
	}
}
