Cook the pasta according to package instructions, undercooking by a minute so it's al dente. Drain and set aside.
In a food processor add the basil leaves, pine nuts, garlic, vinegar, lemon juice, parmesan cheese, salt and pepper.
Blend until well combined, scraping down the sides as needed.
With the food processor running, drizzle in the olive oil until combined.
Pour the pesto dressing over the cooked pasta in a large bowl and mix well.
Add the cherry tomatoes, mozzarella and parmesan and mix well.
Taste for seasoning and add salt and pepper to taste.
Serve with fresh basil leaves on top and extra parmesan if you wish.