I agree with Philip,but if you have to come up with one answer, I'd say b., The pudding tastes of chocolate.
If you say something is LIKE something else, then it's NOT it, but LIKE it. So chocolate probably isn't in the pudding that tastes LIKE chocolate.
However, if the pudding tastes OF chocolate, then it's chocolate that one tastes in the pudding, not something like chocolate.
You're really deciding whther the pudding is LIKE chocolate or OF chocolate. In that sense, b. may be the better choice.
Ikia