import { describe, expect, it } from 'vitest'
import { renderInvoicePdfPreview } from '../src/invoices/pdf-preview'

describe('renderInvoicePdfPreview', () => {
  it('renders optional project and sku columns when enabled', () => {
    const html = renderInvoicePdfPreview({
      layout: 'classic',
      showProject: true,
      showSku: true,
      dateFormat: 'dd.MM.yyyy',
      accentHex: '#006b6b',
    })

    expect(html).toContain('Project')
    expect(html).toContain('SKU')
    expect(html).toContain('Tax Rate')
    expect(html).toContain('Website Refresh')
    expect(html).toContain('SKU-001')
  })

  it('renders minimal layout without branded logo block or accent override usage', () => {
    const html = renderInvoicePdfPreview({
      layout: 'minimal',
      showProject: false,
      showSku: false,
      dateFormat: 'yyyy-MM-dd',
      accentHex: '#ff5500',
    })

    expect(html).not.toContain('>LOGO<')
    expect(html).not.toContain('#ff5500')
    expect(html).toContain('2026-06-01')
    expect(html).toContain('2026-06-30')
  })
})
