Thats nice, having worked in spar I can tell you that the policy for anything age orientated is 25 now. We know you look older than 21, but we have to ID under 25 or lose our jobs. The company sends in people over 20 to buy produce and if they are not ID'd (they do this more and more now) then they will recieve a written warning lasting 6 months. Two warnings = sack. I had one warning for not id'ing someone that looked 22 to me, after I had just ID'd someone else.
There are notices all over the shop explaining the age is 25. I fail to see how you did not notice them and shouting at the cashier to make yourself feel better is pathetic. If you do not agree with the policy write to the shop's manageress or the head office.
If the staff know you then you're unlikely to be ID'd but if you a stranger to them they automatically have to assume it's a test purchase.