In a large pot, warm 2 tablespoons extra virgin olive oil over medium heat. Add the onion and cook for about 3 minutes, until translucent.
Next, add the diced potatoes, zucchini, carrots, and leeks. Stir together as you cook for about five minutes more.
To the pot, pour in the vegetable broth, water, tomato paste and diced tomatoes with their juices. Turn heat to medium-high to bring to a low boil. Reduce heat to a simmer, add the pasta and cook for about 15 minutes, until pasta and potatoes are tender.
Meanwhile, if using homemade pesto, prepare it by placing all of the ingredients into a food processor or a blender then blend until smooth.
Once the pasta is cooked and the vegetables are tender, add the drained and rinsed beans. Cook until heated through. Ladle the soup into bowls for serving. Top with a tablespoon of the pesto. Serve and enjoy!