Cook spaghetti in a large saucepan of salted boiling water, according to packet directions, until al dente.
Meanwhile, heat a large frying pan over high heat. Add 2 tbsp oil to the frying pan and heat over high heat until hot.
Add the garlic and mushrooms and cook, stirring often, for 4 minutes or until mushrooms are tender and golden.
Slice the tomatoes and add them to the pan stirring for a further minute. Set pan aside.
Drain spaghetti and return to the saucepan. Add the mushrooms and tomato mixture, and remaining oil. Add the parmesan and basil leaves and toss gently over low heat for 2 minutes or until heated through. Remove from heat and season with salt and pepper. Toss well to combine.
Spoon onto serving plates, top with cracked black pepper and serve immediately.