LatexDocumentStartTest.java 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /*
  2. * Copyright (c) 2025. Andrew Grant Carrick Software. All rights reserved
  3. *
  4. */
  5. package scot.carricksoftware.grantswriter.writer.latex;
  6. import org.junit.jupiter.api.BeforeEach;
  7. import org.junit.jupiter.api.Test;
  8. import org.junit.jupiter.api.extension.ExtendWith;
  9. import org.mockito.InOrder;
  10. import org.mockito.Mock;
  11. import org.springframework.test.context.junit.jupiter.SpringExtension;
  12. import scot.carricksoftware.grantswriter.writer.FileWriter;
  13. import static org.junit.jupiter.api.Assertions.assertNotNull;
  14. import static org.mockito.Mockito.inOrder;
  15. @ExtendWith(SpringExtension.class)
  16. class LatexDocumentStartTest {
  17. private LatexDocumentStart documentStart;
  18. @Mock
  19. private FileWriter fileWriterMock;
  20. @Mock
  21. private LatexPackageDeclaration latexPackageDeclarationMock;
  22. @BeforeEach
  23. void setUp() {
  24. documentStart = new LatexDocumentStartImpl(fileWriterMock, latexPackageDeclarationMock);
  25. }
  26. @Test
  27. public void constructorTest() {
  28. assertNotNull(documentStart);
  29. }
  30. @Test
  31. public void writeTest() {
  32. InOrder inorder = inOrder(fileWriterMock, latexPackageDeclarationMock, fileWriterMock, fileWriterMock);
  33. documentStart.write();
  34. //noinspection SpellCheckingInspection
  35. inorder.verify(fileWriterMock).writeLine("\\documentclass[a4paper,11pt, twoside]{memoir}");
  36. //noinspection SpellCheckingInspection
  37. inorder.verify(latexPackageDeclarationMock).write("longtable");
  38. //noinspection SpellCheckingInspection
  39. inorder.verify(fileWriterMock).writeLine("\\setsecnumdepth{subsubsection}");
  40. inorder.verify(fileWriterMock).writeLine("\\begin{document}");
  41. }
  42. }