To make the filling: heat the olive oil in a deep saucepan. Gently cook the onion over a low heat until soft and translucent. Add the garlic, cumin, paprika and chilli flakes and toss everything together.
Add the pork mince and cook for a few minutes to brown. Add the red pepper and mushrooms and cook for a further 3 minutes.
Add the tomato puree, chicken stock and season with salt and pepper. Simmer for 10-12 minutes until most of the liquid has reduced. Check the seasoning, remove from the heat and stir through the coriander. Set aside.
To make the tomato sauce: heat the olive oil in a frying pan. Sauté the garlic for a few minutes, then add the tomato puree, water, paprika, cumin, Italian herbs and season with salt and pepper. Allow to simmer for 5 minutes, then take off the heat and set aside.
Make the cheese sauce by melting the butter in a small saucepan. Add the flour and whisk into the butter. Allow to cook for a minute then remove the saucepan from the heat. Gradually add the milk while whisking. Return the saucepan to the heat and continue to whisk until the sauce has thickened slightly. Take the saucepan off the heat and add the cheese. Whisk until smooth. (The sauce can also be made in the microwave.)
Preheat your oven to 180°C. Divide the mushroom and pork filling between the 4 tortillas and roll each one up like a cigar. Arrange the rolled tortillas next to each other in an ovenproof dish.
Spread the tomato sauce over the tortillas. Then spread the cheese sauce over the top. Sprinkle with the remaining cheese and bake the enchiladas for 30 minutes. Garnish with fresh coriander and serve while hot!