Blend together the tomatoes, a teaspoon of cumin, mustard seeds and garlic, using just enough water. Set aside.
Heat the oil in a saucepan. Add the remaining cumin seeds for tempering, and when they sputter, add the asafetida, if using, and the blended tomato mixture.
Add the cayenne and turmeric powders and stir in. Cook on medium heat, stirring occasionally, about 10 minutes.
Now add the beans and liquid to the saucepan. Add salt to taste, and continue to cook until the gravy thickens, about 10 minutes. (If you use cauliflower, add the florets raw when you would the beans, but stir-fry for a couple of minutes before you add some water. Check regularly to ensure that the cauliflower does not overcook.)
Garnish with cilantro. Serve hot with rice.