In a large mixing bowl, whisk together flour, cocoa powder, baking powder, baking soda and salt. Set aside.
In a separate bowl, whisk together the vegetable oil, avocado, water, vinegar and vanilla. Whisk until well combined.
Whisk sugar into the wet mix.
Add the wet mixture to the flour mixture all at once. Beat with a whisk (by hand) until smooth.
Pour batter into a greased tube pan. Bake for 45 to 55 minutes or until a toothpick inserted comes out clean.
Let cake cool in pan for 15 - 20 minutes on a cooling rack. Turn cake out onto cooling rack to cool completely before frosting.
For buttercream frosting:
Scoop avocados out into a food processor. Process until smooth, about 2 minutes, stopping to scrape down avocado with spatula if necessary.
Add powdered sugar and cocoa powder to pureed avocado. Process for another minute or until creamy and combined, stopping once to scrape down mixture if necessary.
Frost cake. Let cake sit a few hours before serving, allowing time for flavors to blend.