From 9755e42d7517c9cff1b83007441239b248a79d02 Mon Sep 17 00:00:00 2001 From: hneemann Date: Sun, 16 Jul 2017 23:02:25 +0200 Subject: [PATCH] allow tabs to separate signal names in test case header --- .../de/neemann/digital/testing/parser/Tokenizer.java | 1 + .../neemann/digital/testing/parser/ParserTest.java | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/src/main/java/de/neemann/digital/testing/parser/Tokenizer.java b/src/main/java/de/neemann/digital/testing/parser/Tokenizer.java index c8cb3f448..4bacf71f8 100644 --- a/src/main/java/de/neemann/digital/testing/parser/Tokenizer.java +++ b/src/main/java/de/neemann/digital/testing/parser/Tokenizer.java @@ -288,6 +288,7 @@ public class Tokenizer { return Token.IDENT; } else return Token.EOL; + case '\t': case ' ': if (builder.length() > 0) { return Token.IDENT; diff --git a/src/test/java/de/neemann/digital/testing/parser/ParserTest.java b/src/test/java/de/neemann/digital/testing/parser/ParserTest.java index 7a40c657b..6e13872dc 100644 --- a/src/test/java/de/neemann/digital/testing/parser/ParserTest.java +++ b/src/test/java/de/neemann/digital/testing/parser/ParserTest.java @@ -137,6 +137,18 @@ public class ParserTest extends TestCase { assertEquals(1, td.getLines().size()); } + public void testHeaderTabs() throws TestingDataException, IOException, ParserException { + Parser parser = new Parser("A\tB\tC \t D\n1\t1\t1\t1").parse(); + LineCollector td = new LineCollector(parser); + assertEquals(4, td.getNames().size()); + assertEquals("A", td.getNames().get(0)); + assertEquals("B", td.getNames().get(1)); + assertEquals("C", td.getNames().get(2)); + assertEquals("D", td.getNames().get(3)); + assertEquals(1, td.getLines().size()); + assertEquals(4, td.getLines().get(0).length); + } + public void testEmptyLines() throws TestingDataException, IOException, ParserException { Parser parser = new Parser("A_i B_i C_i-1 C_i S_i\n" + " 0 0 0 0 0\n" +