I get the “Operator Expected” error at the end of the two following rules but i can’t understand why.
testDrivenChecking :-
%Stores all the methods of the projet which are tested by a unit test
findall(allTestedMethods,
(create(allTestMethods, 'method', _, _),
addProperty(allTestMethods, 'annotation', 'Test', _, _), %Method created and ensures that it's a test.
not(delete(allTestMethods, 'method', _, _)), %The test should not be deleted
addReference(allTestMethods, 'calls', allTestedMethods, _, _),
not(remReference(allTestMethods, 'calls', allTestedMethods, _, _))), %Ensures that the test keep testing the method
allTestedMethodsList),
list_to_set(allTestedMethodsList, allTestedMethodSet),
%Stores all the methods of the project which are not tests or main
findall(allMethods,
(create(allMethods, 'method', _, _),
not(addProperty(allMethods, 'annotation', 'Test', _, _)),
not(addProperty(allMethods, 'name', 'main', _, _)),
allMethodsList),
list_to_set(allMethodsList, allMethodsSet),
%Intersection gives the set of methods which are not tested in restMethods
intersection(allTestedMethodSet, allMethodSet, restMethods),
%Gives the lengths of each set
length(allTestedMethodSet, LengthTest),
length(allMethodSet, LengthMethods),
length(restMethods, LengthRest).
I’ve seek for hours but I really can’t find why I doesn’t work.
This:
should be:
Note the additional closing parenthesis in the fourth line.