Complete the support of primaryExpression rule, and add unit tests