import { describe, it, expect } from "vitest"
import { resolveEnterTarget } from "../master-data-combobox"

describe("MasterDataCombobox — resolveEnterTarget", () => {
  it("returns null when nothing is highlighted", () => {
    expect(resolveEnterTarget(-1, 3, false)).toBeNull()
  })

  it("selects an existing value when a list row is highlighted", () => {
    expect(resolveEnterTarget(0, 3, false)).toBe("value")
    expect(resolveEnterTarget(2, 3, true)).toBe("value")
  })

  it("creates a new value when the trailing new-option row is highlighted", () => {
    expect(resolveEnterTarget(3, 3, true)).toBe("new")
  })

  it("returns null for the new-option row when free text is not allowed", () => {
    expect(resolveEnterTarget(3, 3, false)).toBeNull()
  })
})
