import React from "react";
import { render } from "@testing-library/react";
import "@testing-library/jest-dom";
import { PDFExportProps } from "../PDFExportProps";
import PDFExport from "../PDFExport";

describe("PDFExport Component", () => {
  const props: PDFExportProps = {
    dataTestId: "test-id-pdf-export",
    author: "Author Name",
    avoidLinks: true,
    creator: "KendoReact PDF Generator",
    date: new Date(),
    fileName: "export.pdf",
    forcePageBreak: ".page-break",
    forceProxy: false,
    imageResolution: 300,
    keepTogether: ".keep-together",
    keywords: "pdf, export, kendo",
    landscape: false,
    margin: { left: "1cm", top: "1cm", right: "1cm", bottom: "1cm" },
    pageTemplate: "<div>Page 1</div>",
    paperSize: "A4",
    producer: "Producer Name",
    proxyData: { key1: "value1", key2: "value2" },
    proxyTarget: "_self",
    proxyURL: "http://example.com/proxy",
    repeatHeaders: true,
    scale: 1,
    subject: "Document Subject",
    title: "Document Title",
  };

  it("renders all props correctly", () => {
    render(<PDFExport {...props} />);
  });

  it("matches the snapshot", () => {
    const { asFragment } = render(<PDFExport {...props} />);
    expect(asFragment()).toMatchSnapshot();
  });
});
