In a frying pan heat 2 tbsp of the oil. When medium-hot, add the tortillas one at a time and lightly fry until toasty smelling and a little crisp around the edges but still flexible. Place on kitchen paper and keep warm in the oven.
Reheat the refry on a low heat and warm the ranchero sauce.
In the same pan used for frying the tortillas, fry the eggs using more oil as needed.
Get two plates ready. Place two tortillas on each plate so that they are slightly overlapping, Put a fried egg on each tortilla, then spoon the ranchero sauce around the eggs and add a dollop of refry at the side. Season with salt and pepper.
Heat your grill.
Put the tomatoes and the green chillies on a baking sheet and roast under the grill, turning once as they go black and soft.
Roughly chop the tomatoes removing the core, leave some of the blackened skin (it adds colour and flavour).Roughly chop the green chillies removing the stem and, if desired, the seeds. Place the tomatoes and chillies in a jug suitable for a stick blender and blitz to a rough puree.
Heat a saucepan over a medium heat, then fry the diced onion in the oil until golden. Increase the heat and when the pan is hot, add the tomato and chilli mixture and fry, stirring (be careful, as it will spit). When it darkens and thickens to a paste, add the stock. Stir, reduce the heat and simmer until it reduces slightly and it looks like a light tomato sauce. Adjust the seasoning, adding salt to taste.
Mexican chorizo is also great with this meal. You can use pork, beef or a meat substitute such as seitan.