Peel and slice the onion. Peel and crush the garlic. Peel and grate the ginger. Strip the leaves off the coriander sprigs and put to one side. Finely chop the stalks. Roughly chop the tomatoes. Slice the mushrooms.
Warm 1 tbsp oil in a pan. Add the onions. Season with salt and pepper. Fry for 5 mins over a medium heat, stirring often, till they start to soften.
Add the garlic, ginger and coriander stalks to the pan. Stir and cook for 1 min. Stir in 2 tsp garam masala and 1 tsp turmeric. Fry for another 1 min.
Add the tomatoes to the pan. Turn up the heat so the sauce starts to bubble. Pop a lid on the pan. Turn the heat down to low. Simmer for about 10 mins till the sauce is soft and pulpy looking. Stir occasionally. This is your masala sauce.
Rinse the rice under cold water. Tip the rice into a pan. Add 400ml boiling water with a pinch of salt. Cover. Bring to the boil. Turn the heat right down. Simmer for 8 mins till the water is absorbed. Take off the heat. Set aside, lid on, for 2-4 mins to steam and finish cooking.
Add the cumin seeds to a dry frying pan. Toast for 1-2 mins till they smell nutty. Tip into a bowl. Warm 1 tbsp oil in the frying pan. Add the mushrooms. Season with a pinch of salt and pepper. Fry for 5-8 mins till golden. Stir every so often.
Drain the beans and rinse. Add them to the masala sauce with 100 ml boiling water. Simmer for 5 mins to warm the beans through. Serve the masala beans with the rice and fried mushrooms. Sprinkle over the cumin seeds and coriander leaves.