Heat the oil in a frying pan, add the leeks and garlic and cook over a medium heat, stirring frequently, for 10 minutes until tender. Leave to cool.
Cook the asparagus in a large saucepan of lightly salted boiling water for 2 minutes. Drain, refresh under cold water and pat dry. Cut into 5 cm (2 inch) lengths.
Lightly oil a 20 cm (8 inch) square baking dish with olive oil and line the base with nonstick baking paper. Beat the eggs in a bowl and stir in the leek mixture, asparagus, feta, half the Parmesan and salt and pepper. Pour the mixture into the prepared dish and top with the tomatoes. Sprinkle over the remaining Parmesan and bake in a preheated oven, 190°C (375°F), Gas Mark 5, for 25–30 minutes until puffed up and firm in the centre.
Leave to cool in the dish for 10 minutes, then turn out on to a board and serve warm with a crisp green salad.