Browse Source

Latex LongTableEnd

Andrew Grant 3 months ago
parent
commit
58fb31604b

+ 2 - 0
src/main/java/scot/carricksoftware/grantswriter/constants/LatexConstants.java

@@ -18,6 +18,8 @@ public class LatexConstants {
     public static final String DOCUMENT_CLASS = "\\documentclass[a4paper,11pt]{memoir}";
     public static final String DOCUMENT_START = "\\begin{document}";
     public static final String DOCUMENT_END = "\\end{document}";
+    @SuppressWarnings("SpellCheckingInspection")
+    public static final String LONG_TABLE_END = "\\end{longtable}";
 
     public static final String PART_TERM = "\\part{";
     public static final String SECTION_TERM = "\\section{";

+ 1 - 1
src/main/java/scot/carricksoftware/grantswriter/writer/latex/parts/LatexLongTabLeEnd.java → src/main/java/scot/carricksoftware/grantswriter/writer/latex/LatexLongTabLeEnd.java

@@ -3,7 +3,7 @@
  *
  */
 
-package scot.carricksoftware.grantswriter.writer.latex.parts;
+package scot.carricksoftware.grantswriter.writer.latex;
 
 public interface LatexLongTabLeEnd {
 

+ 24 - 0
src/main/java/scot/carricksoftware/grantswriter/writer/latex/LatexLongTabLeEndImpl.java

@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) 2025.  Andrew Grant Carrick Software. All rights reserved
+ *
+ */
+
+package scot.carricksoftware.grantswriter.writer.latex;
+
+import scot.carricksoftware.grantswriter.constants.LatexConstants;
+import scot.carricksoftware.grantswriter.writer.FileWriter;
+
+public class LatexLongTabLeEndImpl implements LatexLongTabLeEnd {
+
+    private final FileWriter fileWriter;
+
+    public LatexLongTabLeEndImpl(FileWriter fileWriter) {
+        this.fileWriter = fileWriter;
+    }
+
+
+    @Override
+    public void write() {
+        fileWriter.writeLine(LatexConstants.LONG_TABLE_END);
+    }
+}

+ 0 - 13
src/main/java/scot/carricksoftware/grantswriter/writer/latex/parts/LatexLongTabLeEndImpl.java

@@ -1,13 +0,0 @@
-/*
- * Copyright (c) 2025.  Andrew Grant Carrick Software. All rights reserved
- *
- */
-
-package scot.carricksoftware.grantswriter.writer.latex.parts;
-
-public class LatexLongTabLeEndImpl implements LatexLongTabLeEnd {
-    @Override
-    public void write() {
-
-    }
-}

+ 14 - 8
src/test/java/scot/carricksoftware/grantswriter/writer/latex/LatexLongTabLeEndTest.java

@@ -7,24 +7,30 @@ package scot.carricksoftware.grantswriter.writer.latex;
 
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
-import scot.carricksoftware.grantswriter.writer.latex.parts.LatexLongTabLeEnd;
-import scot.carricksoftware.grantswriter.writer.latex.parts.LatexLongTabLeEndImpl;
-
-import static org.junit.jupiter.api.Assertions.assertNotNull;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.Mock;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
+import scot.carricksoftware.grantswriter.writer.FileWriter;
 
+import static org.mockito.Mockito.verify;
 
+@ExtendWith(SpringExtension .class)
 class LatexLongTabLeEndTest {
 
-
     private LatexLongTabLeEnd latexLongTabLeEnd;
 
+    @Mock
+    private FileWriter fileWriterMock;
+
     @BeforeEach
     void setUp() {
-        latexLongTabLeEnd = new LatexLongTabLeEndImpl();
+        latexLongTabLeEnd = new LatexLongTabLeEndImpl(fileWriterMock);
     }
 
     @Test
-    void constructorTest() {
-        assertNotNull(latexLongTabLeEnd);
+    void writeTest() {
+        latexLongTabLeEnd.write();
+        //noinspection SpellCheckingInspection
+        verify(fileWriterMock).writeLine("\\end{longtable}");
     }
 }