}
+ TEST_F(SelectionCollectionDataTest, HandlesEmptyReferenceForSame)
+ {
+ static const char * const selections[] = {
+ "same residue as none",
+ "same resname as none"
+ };
+ runTest("simple.gro", selections);
+ }
+
+
+TEST_F(SelectionCollectionDataTest, HandlesPositionModifiersForKeywords)
+{
+ static const char * const selections[] = {
+ "res_cog x > 2",
+ "name CB and res_cog y > 2.5"
+ };
+ setFlags(TestFlags() | efTestEvaluation);
+ runTest("simple.gro", selections);
+}
+
+
+TEST_F(SelectionCollectionDataTest, HandlesPositionModifiersForMethods)
+{
+ static const char * const selections[] = {
+ "res_cog distance from cog of resnr 1 < 2",
+ "res_cog within 2 of cog of resnr 1"
+ };
+ setFlags(TestFlags() | efTestEvaluation);
+ runTest("simple.gro", selections);
+}
+
+
+TEST_F(SelectionCollectionDataTest, HandlesKeywordOfPositions)
+{
+ static const char * const selections[] = {
+ "x < y of cog of resnr 2"
+ };
+ setFlags(TestFlags() | efTestEvaluation);
+ runTest("simple.gro", selections);
+}
+
+TEST_F(SelectionCollectionDataTest, HandlesKeywordOfPositionsInArithmetic)
+{
+ static const char * const selections[] = {
+ "x - y of cog of resnr 2 < 0"
+ };
+ setFlags(TestFlags() | efTestEvaluation);
+ runTest("simple.gro", selections);
+}
+
+
TEST_F(SelectionCollectionDataTest, HandlesNumericComparisons)
{
static const char * const selections[] = {