Outsourced SAS value parsing.
This commit is contained in:
@@ -53,18 +53,18 @@ TEST_F(SASParserTests, ParseValidSASFile)
|
||||
ASSERT_EQ(description.variables()[36].values()[1].name(), "queue-tail-msg(forks-1-, fork)");
|
||||
|
||||
ASSERT_EQ(description.mutexGroups().size(), 8);
|
||||
ASSERT_EQ(description.mutexGroups()[0].facts.size(), 9);
|
||||
ASSERT_EQ(&description.mutexGroups()[0].facts[0].value, &description.variables()[0].values()[0]);
|
||||
ASSERT_EQ(description.mutexGroups()[7].facts.size(), 2);
|
||||
ASSERT_EQ(&description.mutexGroups()[7].facts[1].value, &description.variables()[34].values()[1]);
|
||||
ASSERT_EQ(description.mutexGroups()[0].facts().size(), 9);
|
||||
ASSERT_EQ(&description.mutexGroups()[0].facts()[0].value(), &description.variables()[0].values()[0]);
|
||||
ASSERT_EQ(description.mutexGroups()[7].facts().size(), 2);
|
||||
ASSERT_EQ(&description.mutexGroups()[7].facts()[1].value(), &description.variables()[34].values()[1]);
|
||||
|
||||
ASSERT_EQ(description.initialStateFacts().size(), 37);
|
||||
ASSERT_EQ(&description.initialStateFacts()[0].value, &description.variables()[0].values()[8]);
|
||||
ASSERT_EQ(&description.initialStateFacts()[36].value, &description.variables()[36].values()[1]);
|
||||
ASSERT_EQ(&description.initialStateFacts()[0].value(), &description.variables()[0].values()[8]);
|
||||
ASSERT_EQ(&description.initialStateFacts()[36].value(), &description.variables()[36].values()[1]);
|
||||
|
||||
ASSERT_EQ(description.goalFacts().size(), 2);
|
||||
ASSERT_EQ(&description.goalFacts()[0].value, &description.variables()[6].values()[0]);
|
||||
ASSERT_EQ(&description.goalFacts()[1].value, &description.variables()[7].values()[0]);
|
||||
ASSERT_EQ(&description.goalFacts()[0].value(), &description.variables()[6].values()[0]);
|
||||
ASSERT_EQ(&description.goalFacts()[1].value(), &description.variables()[7].values()[0]);
|
||||
|
||||
ASSERT_EQ(description.operators().size(), 34);
|
||||
ASSERT_EQ(description.operators()[0].predicate.name, "activate-trans");
|
||||
@@ -72,34 +72,34 @@ TEST_F(SASParserTests, ParseValidSASFile)
|
||||
ASSERT_EQ(description.operators()[0].predicate.arguments[0], "philosopher-0");
|
||||
ASSERT_EQ(description.operators()[0].predicate.arguments[4], "state-3");
|
||||
ASSERT_EQ(description.operators()[0].preconditions.size(), 3);
|
||||
ASSERT_EQ(&description.operators()[0].preconditions[0].value, &description.variables()[4].values()[4]);
|
||||
ASSERT_EQ(&description.operators()[0].preconditions[1].value, &description.variables()[16].values()[1]);
|
||||
ASSERT_EQ(&description.operators()[0].preconditions[2].value, &description.variables()[0].values()[8]);
|
||||
ASSERT_EQ(&description.operators()[0].preconditions[0].value(), &description.variables()[4].values()[4]);
|
||||
ASSERT_EQ(&description.operators()[0].preconditions[1].value(), &description.variables()[16].values()[1]);
|
||||
ASSERT_EQ(&description.operators()[0].preconditions[2].value(), &description.variables()[0].values()[8]);
|
||||
ASSERT_EQ(description.operators()[0].effects.size(), 1);
|
||||
ASSERT_EQ(description.operators()[0].effects[0].conditions.size(), 0);
|
||||
ASSERT_EQ(&description.operators()[0].effects[0].postcondition.value, &description.variables()[0].values()[0]);
|
||||
ASSERT_EQ(&description.operators()[0].effects[0].postcondition.value(), &description.variables()[0].values()[0]);
|
||||
ASSERT_EQ(description.operators()[33].predicate.name, "queue-write");
|
||||
ASSERT_EQ(description.operators()[33].predicate.arguments.size(), 4);
|
||||
ASSERT_EQ(description.operators()[33].predicate.arguments[0], "philosopher-1");
|
||||
ASSERT_EQ(description.operators()[33].predicate.arguments[3], "fork");
|
||||
ASSERT_EQ(description.operators()[33].preconditions.size(), 2);
|
||||
ASSERT_EQ(&description.operators()[33].preconditions[0].value, &description.variables()[1].values()[3]);
|
||||
ASSERT_EQ(&description.operators()[33].preconditions[1].value, &description.variables()[2].values()[2]);
|
||||
ASSERT_EQ(&description.operators()[33].preconditions[0].value(), &description.variables()[1].values()[3]);
|
||||
ASSERT_EQ(&description.operators()[33].preconditions[1].value(), &description.variables()[2].values()[2]);
|
||||
ASSERT_EQ(description.operators()[33].effects.size(), 3);
|
||||
ASSERT_EQ(description.operators()[33].effects[0].conditions.size(), 0);
|
||||
ASSERT_EQ(&description.operators()[33].effects[0].postcondition.value, &description.variables()[1].values()[7]);
|
||||
ASSERT_EQ(&description.operators()[33].effects[2].postcondition.value, &description.variables()[35].values()[0]);
|
||||
ASSERT_EQ(&description.operators()[33].effects[0].postcondition.value(), &description.variables()[1].values()[7]);
|
||||
ASSERT_EQ(&description.operators()[33].effects[2].postcondition.value(), &description.variables()[35].values()[0]);
|
||||
|
||||
ASSERT_EQ(description.axiomRules().size(), 33);
|
||||
ASSERT_EQ(description.axiomRules()[0].conditions.size(), 4);
|
||||
ASSERT_EQ(&description.axiomRules()[0].conditions[0].value, &description.variables()[0].values()[0]);
|
||||
ASSERT_EQ(&description.axiomRules()[0].conditions[2].value, &description.variables()[27].values()[0]);
|
||||
ASSERT_EQ(&description.axiomRules()[0].conditions[3].value, &description.variables()[8].values()[1]);
|
||||
ASSERT_EQ(&description.axiomRules()[0].postcondition.value, &description.variables()[8].values()[0]);
|
||||
ASSERT_EQ(&description.axiomRules()[0].conditions[0].value(), &description.variables()[0].values()[0]);
|
||||
ASSERT_EQ(&description.axiomRules()[0].conditions[2].value(), &description.variables()[27].values()[0]);
|
||||
ASSERT_EQ(&description.axiomRules()[0].conditions[3].value(), &description.variables()[8].values()[1]);
|
||||
ASSERT_EQ(&description.axiomRules()[0].postcondition.value(), &description.variables()[8].values()[0]);
|
||||
ASSERT_EQ(description.axiomRules()[32].conditions.size(), 2);
|
||||
ASSERT_EQ(&description.axiomRules()[32].conditions[0].value, &description.variables()[15].values()[0]);
|
||||
ASSERT_EQ(&description.axiomRules()[32].conditions[1].value, &description.variables()[25].values()[0]);
|
||||
ASSERT_EQ(&description.axiomRules()[32].postcondition.value, &description.variables()[25].values()[1]);
|
||||
ASSERT_EQ(&description.axiomRules()[32].conditions[0].value(), &description.variables()[15].values()[0]);
|
||||
ASSERT_EQ(&description.axiomRules()[32].conditions[1].value(), &description.variables()[25].values()[0]);
|
||||
ASSERT_EQ(&description.axiomRules()[32].postcondition.value(), &description.variables()[25].values()[1]);
|
||||
}
|
||||
catch (const std::exception &e)
|
||||
{
|
||||
|
Reference in New Issue
Block a user