Heat the oil in a large pan over a medium to low heat and add the cumin seeds. Once they start to sizzle, stir in the cashew nuts followed by the onions.
Cook for about twelve minutes or until the onions are golden brown. Add the garlic and fry for a further minute.
Add the gram flour and remaining spices and stir fry for another minute.
Stir the yoghurt and water together and pour into the pan, a little at a time, stirring all the while. I added the salt and pepper at this point.
Bring it up to a simmer then add the tomatoes. Cover the pan and simmer gently for ten minutes.
Add the mushrooms, coriander leaves and the salt and pepper, if you haven't already done so. Cover and simmer for a further ten to fifteen minutes or until the mushrooms are cooked.
Give it a good stir and serve warm with rice or flatbreads.
Notes
To make this curry vegan, just swap the yoghurt for a plant based one.Please note: calories and other nutritional information are per serving. They're approximate and will depend on serving size and exact ingredients used.