diff --git a/src/test/java/org/ids_mannheim/WorkerTest.java b/src/test/java/org/ids_mannheim/WorkerTest.java
index c4d8758..5e0623f 100644
--- a/src/test/java/org/ids_mannheim/WorkerTest.java
+++ b/src/test/java/org/ids_mannheim/WorkerTest.java
@@ -6,6 +6,9 @@
 import org.junit.jupiter.api.Test;
 
 import java.io.*;
+import java.nio.file.FileSystems;
+import java.nio.file.Files;
+import java.nio.file.Path;
 import java.util.ArrayList;
 import java.util.Map;
 import java.util.Objects;
@@ -13,10 +16,12 @@
 import java.util.concurrent.LinkedBlockingQueue;
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.logging.Logger;
+import java.util.stream.Collectors;
 
 import static org.junit.jupiter.api.Assertions.*;
 
 class WorkerTest {
+    public static final String splitFreqlistRegex = "\\t(?=[0-9]+$)";
     private ByteArrayOutputStream errContent;
     private final PrintStream originalErr = System.err;
     Worker worker;
@@ -68,7 +73,7 @@
                 false,
                 new WorkerNodePool(""),
                 new Progressbar(tempFile.length()),
-                Logger.getLogger(TotalNGrams.class.getSimpleName()));
+                Logger.getLogger(TotalNGrams.class.getSimpleName()), false);
 
         queue.add(0);
         queue.add(-1);
@@ -118,7 +123,8 @@
                 true,
                 new WorkerNodePool(""),
                 new Progressbar(tempFile.length()),
-                Logger.getLogger(TotalNGrams.class.getSimpleName()));
+                Logger.getLogger(TotalNGrams.class.getSimpleName()),
+                false);
 
         queue.add(0);
         queue.add(-1);
@@ -163,7 +169,8 @@
                 false,
                 new WorkerNodePool(""),
                 new Progressbar(tempFile.length()),
-                Logger.getLogger(TotalNGrams.class.getSimpleName()));
+                Logger.getLogger(TotalNGrams.class.getSimpleName()),
+                false);
 
         queue.add(0);
         queue.add(-1);
@@ -208,7 +215,8 @@
                 false,
                 new WorkerNodePool(""),
                 new Progressbar(tempFile.length()),
-                Logger.getLogger(TotalNGrams.class.getSimpleName()));
+                Logger.getLogger(TotalNGrams.class.getSimpleName()),
+                false);
 
         queue.add(0);
         queue.add(-1);
@@ -216,4 +224,53 @@
         gold.forEach((key, value) -> assertEquals(value, map.get(key).intValue()));
     }
 
+    @Test
+    void paddingWorks() throws IOException {
+        File tempFile = File.createTempFile("simple", ".conllu");
+        tempFile.deleteOnExit();
+        try (FileOutputStream out = new FileOutputStream(tempFile)) {
+            IOUtils.copy(Objects.requireNonNull(Thread.currentThread().getContextClassLoader()
+                    .getResourceAsStream("simple.conllu")), out);
+        }
+
+        for (boolean with_lemma_and_pos : new boolean[]{false, true}) {
+            for (int n = 1; n <= 3; n++) {
+                ArrayList<String> fnames = new ArrayList<>();
+                fnames.add(tempFile.getAbsolutePath());
+
+                File tempFreqFile = File.createTempFile("simple", ".freq");
+                tempFreqFile.deleteOnExit();
+                try (FileOutputStream out = new FileOutputStream(tempFreqFile)) {
+                    IOUtils.copy(Objects.requireNonNull(Thread.currentThread().getContextClassLoader()
+                            .getResourceAsStream("simple_" + n + (with_lemma_and_pos ? "lp" : "") + "gram_padded.freq")), out);
+                }
+
+                Path path = FileSystems.getDefault().getPath(tempFreqFile.getAbsolutePath());
+                Map<String, Integer> gold = Files.lines(path)
+                        .filter(s -> s.matches(splitFreqlistRegex))
+                        .collect(Collectors.toMap(k -> k.split(splitFreqlistRegex)[0], v -> Integer.parseInt(v.split(splitFreqlistRegex)[1])));
+
+                map = new ConcurrentHashMap<>();
+                LinkedBlockingQueue<Integer> queue = new LinkedBlockingQueue<>(2);
+                worker = new Worker(
+                        queue,
+                        fnames,
+                        n,
+                        1,
+                        1,
+                        map,
+                        with_lemma_and_pos,
+                        false,
+                        new WorkerNodePool(""),
+                        new Progressbar(tempFile.length()),
+                        Logger.getLogger(TotalNGrams.class.getSimpleName()),
+                        true);
+
+                queue.add(0);
+                queue.add(-1);
+                worker.run();
+                gold.forEach((key, value) -> assertEquals(value, map.get(key).intValue()));
+            }
+        }
+    }
 }
diff --git a/src/test/resources/simple.conllu b/src/test/resources/simple.conllu
new file mode 100644
index 0000000..2e52539
--- /dev/null
+++ b/src/test/resources/simple.conllu
@@ -0,0 +1,17 @@
+# text_id = TST_TST.00000
+1	ich	ich	PPER	PPER	_	_	_	_	1
+2	bin	sein	VAFIN	VAFIN	_	_	_	_	1.000000
+3	alex	alex	NE	NE	_	_	_	_	0.565630
+4	.	.	$.	$.	_	_	_	_	1.000000
+
+# text_id = TST_TST.00001
+1	alex	alex	NE	NE	_	_	_	_	0.565630
+2	bin	sein	VAFIN	VAFIN	_	_	_	_	1.000000
+3	ich	ich	PPER	PPER	_	_	_	_	1
+4	.	.	$.	$.	_	_	_	_	1.000000
+
+# text_id = TST_TST.00002
+1	ich	ich	PPER	PPER	_	_	_	_	1
+2	heiße	heißen	VAFIN	VAFIN	_	_	_	_	1.000000
+3	alex	alex	NE	NE	_	_	_	_	0.565630
+4	.	.	$.	$.	_	_	_	_	1.000000
diff --git a/src/test/resources/simple_1gram_padded.freq b/src/test/resources/simple_1gram_padded.freq
new file mode 100644
index 0000000..54522cb
--- /dev/null
+++ b/src/test/resources/simple_1gram_padded.freq
@@ -0,0 +1,7 @@
+.	3
+«END»	3
+«START»	3
+alex	3
+ich	3
+bin	2
+heiße	1
diff --git a/src/test/resources/simple_1lpgram_padded.freq b/src/test/resources/simple_1lpgram_padded.freq
new file mode 100644
index 0000000..ff8c4f7
--- /dev/null
+++ b/src/test/resources/simple_1lpgram_padded.freq
@@ -0,0 +1,7 @@
+.	.	$.	3
+alex	alex	NE	3
+ich	ich	PPER	3
+«END»	«END»	«STARTEND»	3
+«START»	«START»	«STARTEND»	3
+bin	sein	VAFIN	2
+heiße	heißen	VAFIN	1
diff --git a/src/test/resources/simple_2gram_padded.freq b/src/test/resources/simple_2gram_padded.freq
new file mode 100644
index 0000000..ba04a3a
--- /dev/null
+++ b/src/test/resources/simple_2gram_padded.freq
@@ -0,0 +1,13 @@
+.	«END»	3
+«END»	«END»	3
+«START»	«START»	3
+«START»	ich	2
+alex	.	2
+«START»	alex	1
+alex	bin	1
+bin	alex	1
+bin	ich	1
+heiße	alex	1
+ich	.	1
+ich	bin	1
+ich	heiße	1
diff --git a/src/test/resources/simple_2lpgram_padded.freq b/src/test/resources/simple_2lpgram_padded.freq
new file mode 100644
index 0000000..7b1bd84
--- /dev/null
+++ b/src/test/resources/simple_2lpgram_padded.freq
@@ -0,0 +1,13 @@
+.	.	$.	«END»	«END»	«STARTEND»	3
+«END»	«END»	«STARTEND»	«END»	«END»	«STARTEND»	3
+«START»	«START»	«STARTEND»	«START»	«START»	«STARTEND»	3
+alex	alex	NE	.	.	$.	2
+«START»	«START»	«STARTEND»	ich	ich	PPER	2
+alex	alex	NE	bin	sein	VAFIN	1
+bin	sein	VAFIN	alex	alex	NE	1
+bin	sein	VAFIN	ich	ich	PPER	1
+heiße	heißen	VAFIN	alex	alex	NE	1
+ich	ich	PPER	.	.	$.	1
+ich	ich	PPER	bin	sein	VAFIN	1
+ich	ich	PPER	heiße	heißen	VAFIN	1
+«START»	«START»	«STARTEND»	alex	alex	NE	1
diff --git a/src/test/resources/simple_3gram_padded.freq b/src/test/resources/simple_3gram_padded.freq
new file mode 100644
index 0000000..f54eede
--- /dev/null
+++ b/src/test/resources/simple_3gram_padded.freq
@@ -0,0 +1,16 @@
+.	«END»	«END»	3
+«END»	«END»	«END»	3
+«START»	«START»	«START»	3
+«START»	«START»	ich	2
+alex	.	«END»	2
+«START»	«START»	alex	1
+«START»	alex	bin	1
+«START»	ich	bin	1
+«START»	ich	heiße	1
+alex	bin	ich	1
+bin	alex	.	1
+bin	ich	.	1
+heiße	alex	.	1
+ich	.	«END»	1
+ich	bin	alex	1
+ich	heiße	alex	1
diff --git a/src/test/resources/simple_3lpgram_padded.freq b/src/test/resources/simple_3lpgram_padded.freq
new file mode 100644
index 0000000..19b899c
--- /dev/null
+++ b/src/test/resources/simple_3lpgram_padded.freq
@@ -0,0 +1,16 @@
+.	.	$.	«END»	«END»	«STARTEND»	«END»	«END»	«STARTEND»	3
+«END»	«END»	«STARTEND»	«END»	«END»	«STARTEND»	«END»	«END»	«STARTEND»	3
+«START»	«START»	«STARTEND»	«START»	«START»	«STARTEND»	«START»	«START»	«STARTEND»	3
+alex	alex	NE	.	.	$.	«END»	«END»	«STARTEND»	2
+«START»	«START»	«STARTEND»	«START»	«START»	«STARTEND»	ich	ich	PPER	2
+alex	alex	NE	bin	sein	VAFIN	ich	ich	PPER	1
+bin	sein	VAFIN	alex	alex	NE	.	.	$.	1
+bin	sein	VAFIN	ich	ich	PPER	.	.	$.	1
+heiße	heißen	VAFIN	alex	alex	NE	.	.	$.	1
+ich	ich	PPER	.	.	$.	«END»	«END»	«STARTEND»	1
+ich	ich	PPER	bin	sein	VAFIN	alex	alex	NE	1
+ich	ich	PPER	heiße	heißen	VAFIN	alex	alex	NE	1
+«START»	«START»	«STARTEND»	alex	alex	NE	bin	sein	VAFIN	1
+«START»	«START»	«STARTEND»	ich	ich	PPER	bin	sein	VAFIN	1
+«START»	«START»	«STARTEND»	ich	ich	PPER	heiße	heißen	VAFIN	1
+«START»	«START»	«STARTEND»	«START»	«START»	«STARTEND»	alex	alex	NE	1
