diff options
| author | Andreas Stöckel <astoecke@techfak.uni-bielefeld.de> | 2015-04-12 15:14:12 +0200 | 
|---|---|---|
| committer | Andreas Stöckel <astoecke@techfak.uni-bielefeld.de> | 2016-04-25 22:24:15 +0200 | 
| commit | c3c092e2ee64612b50dea010cc4e1ef54d27c31e (patch) | |
| tree | 5c23cd6eb3a7183da7234585d38bff65e8948184 | |
| parent | c7cb92f43f97ef5558eee0d7be6f18192134f3ec (diff) | |
Add additional unit test to TokenStackTest making sure that the returned token lists are actually sorted correctly
| -rw-r--r-- | test/core/parser/stack/TokenStackTest.cpp | 19 | 
1 files changed, 19 insertions, 0 deletions
| diff --git a/test/core/parser/stack/TokenStackTest.cpp b/test/core/parser/stack/TokenStackTest.cpp index c14de1c..bca16ec 100644 --- a/test/core/parser/stack/TokenStackTest.cpp +++ b/test/core/parser/stack/TokenStackTest.cpp @@ -75,5 +75,24 @@ TEST(TokenStack, lookup)  	ASSERT_EQ(1U, descr.shortForm.size());  	ASSERT_EQ(ListC[1], descr.shortForm[0]);  } + +TEST(TokenStack, sorting) +{ +	TokenStack ts; +	std::vector<SyntaxDescriptor> descrs; +	descrs.insert(descrs.end(), ListC.begin(), ListC.end()); +	descrs.insert(descrs.end(), ListA.begin(), ListA.end()); +	descrs.insert(descrs.end(), ListB.begin(), ListB.end()); +	ts.pushTokens(descrs); + +	TokenDescriptor descr = ts.lookup(3); +	ASSERT_EQ(1U, descr.open.size()); +	ASSERT_EQ(0U, descr.close.size()); +	ASSERT_EQ(2U, descr.shortForm.size()); +	ASSERT_EQ(ListA[2], descr.open[0]); +	ASSERT_EQ(ListB[1], descr.shortForm[0]); +	ASSERT_EQ(ListC[1], descr.shortForm[1]); +} +  }  } | 
