Heat half the oil in a large, heavy-bottom pan. Add the onion and cook, stirring occasionally, for 5 minutes or until softened. Add half the garlic and cook, stirring frequently, for 2 minutes; then add the rice and stir for 1 minute, or until the grains are thoroughly coated with the oil.
Add the stock and a pinch of the salt and bring to a boil, stirring constantly. Reduce the heat, cover, and let simmer for 35-40 minutes, or until all of the liquid has been absorbed.
Meanwhile, heat the remaining oil in a heavy-bottom skillet. Add the red bell pepper and celery and cook, stirring frequently, for 5 minutes. Add the sliced mushrooms and the remaining garlic and cook, stirring frequently, for 4-5 minutes.
Stir the rice into the skillet. Add the beans, parsley and cashews. Season with salt and pepper and cook, stirring constantly, until hot. Transfer to a warmed serving dish, sprinkle with extra parsley and serve at once.