package protocol

import (
	"errors"
	"testing"

	"github.com/stretchr/testify/require"
)

func TestNormalizeSelectionAcceptsHostedReasonLevels(t *testing.T) {
	model, reasonLevel, err := NormalizeSelection(" agentteam/model-a ", " medium ")
	require.NoError(t, err)
	require.Equal(t, "agentteam/model-a", model)
	require.Equal(t, ReasonLevelMedium, reasonLevel)
}

func TestNormalizeSelectionRejectsMissingModelAndUnknownReasonLevel(t *testing.T) {
	_, _, err := NormalizeSelection("", ReasonLevelLow)
	require.ErrorIs(t, err, ErrPolicyInvalid)

	_, _, err = NormalizeSelection("agentteam/model-a", "max")
	require.True(t, errors.Is(err, ErrPolicyInvalid))
}
