Heat some olive oil in a frying pan, and add the tomatoes and spring onions. Put a lid on and gently sauté them for 5 minutes, then add the dried herbs, paprika, tomato purée, chickpeas and cabbage.
Add enough water to just cover everything. Put a lid on and cook for another 5 minutes.
Add the fish pie mixture, put a lid on and sauté for 5 more minutes.
Add the coriander leaves and mix the fish in the stew gently.
Meanwhile, make the topping: peel the sweet potatoes and cut them into small chunks.
Put them in a pot of water, add the bay leaf and bring to the boil. Gently simmer for about 10-15 minutes, until they have softened. Drain, then put them back to the pan (you could use the cooking water for the fish base). Discard the bay leaf.
Add the minced garlic, paprika, cayenne (if used) and margarin or butter. Mash it well with a potato masher until you get a thick purée. Season with salt and pepper.
Set the oven to grill or to 220°C.
Transfer the fish mixture into a baking dish. Add the sweet potato mash, spreading it out evenly. Make sure it covers the fish base properly. You can add some grated or crumbled cheese, if liked.
Grill or bake for a 15 minutes or until the top is golden.
Serve warm.