package helper import ( "testing" "github.com/stretchr/testify/require" ) func TestDerivedInputMode(t *testing.T) { mode, err := derivedInputMode(map[string]any{}, nil) require.NoError(t, err) require.Equal(t, "t2v", mode) mode, err = derivedInputMode(map[string]any{"image": "frame.png"}, nil) require.NoError(t, err) require.Equal(t, "i2v", mode) mode, err = derivedInputMode(map[string]any{"image": "frame.png", "video": "clip.mp4"}, nil) require.NoError(t, err) require.Equal(t, "v2v", mode) } func TestDerivedResolutionHelpers(t *testing.T) { mp, err := derivedMegapixels(map[string]any{"resolution": "1280x720"}, nil) require.NoError(t, err) require.InDelta(t, 0.9216, mp, 0.0001) ratio, err := derivedAspectRatio(map[string]any{"options": map[string]any{"size": "1280x720"}}, nil) require.NoError(t, err) require.Equal(t, "16:9", ratio) } func TestHasNonEmptyValue(t *testing.T) { require.False(t, hasNonEmptyValue("")) require.False(t, hasNonEmptyValue(" ")) require.False(t, hasNonEmptyValue(nil)) require.False(t, hasNonEmptyValue([]any{})) require.True(t, hasNonEmptyValue([]any{"x"})) require.True(t, hasNonEmptyValue("x")) require.True(t, hasNonEmptyValue(0)) }